外国為替証拠金取引

計算方法とMT5で設定する方法

計算方法とMT5で設定する方法
XM レバレッジを変更するために、「1. XM会員ページにログイン」 → 「2.マイアカウントの概要から口座番号にクリック」 → 「3. XM レバレッジ変更のアイコンをクリック」 → 「4.希望のレバレッジを選択し、\”リクエスト送信\” をクリック」します。画像付き詳しい解説:XM レバレッジ変更

お金にまつわるお悩みなら教えて! お金の先生

インディケータの値をエクスポートしたいです。 MT5(MQL5)のインディケーターについての質問なんですが。 あるインディケーターの指定期間内の値をエクスポートしたいのですが。

インディケータの値をエクスポートしたいです。

MT5(MQL5)のインディケーターについての質問なんですが。

あるインディケーターの指定期間内の値をエクスポートしたいのですが。毎回、インディケーターの値を抽出するときは、過去の値動き自体のヒストリカルデータをインポートし、エクセルもしくは状況次第によってはデータベースエンジンで処理し、インディケーターの計算式を元に値を抽出してるのですが。

根本的にMQL5で書かれているコードに、何かしらのコードを付け加えて、指定期間(ローソク本数)分のインディケーターの値をCSVでエクスポートする方法はないでしょうか?

例えば
SARだと、トレンド(足の上か下)とその値になりますし、
ボリンジャーだと上下のσの値と移動平均線の値と言った感じです。

ただ上記二つくらいであれば、ヒストリカルデータがあれば簡単に値は作成できますが、根本的にそれが出来れば処理がかなり早く進むなと思いまして。

とは言っても、一応色々調べたのですが、MQL5自体の言語構造に対して自分の理解力が乏しく・・・。

何をしてるのかは、なんとなくわかるのですが、掲題の通りコードに付け加えて、各変数の値をまとめてエクスポートできるのであれば・・・と思いまして。

ちなみに今それが出来ればありがたいのが、MQL4ではなくMQL5の
Schaff trend cycle - tema
https://www.mql5.計算方法とMT5で設定する方法 com/ja/code/20283
でして。
ですので最終的にはこのインディケータで言うと、色と値になる感じです。

昔のVB系ばかり触ってきまして、でC系、まぁMQL5はC++か、その辺りの言語知識が低いばかりにすみません。

どなたか、アドバイス頂ければありがたいです。

ベストアンサーに選ばれた回答

指定期間(ローソク本数)分のインディケーターの値をCSVでエクスポートする比較的簡単な方法として、下記【例】が挙げられます。


【例】

[手順1]
Schaff trend cycle - tema.mq5に下記[記述例]のコードを追記


[手順2]
MT5のストラテジーテスター機能において下記要領で設定して[スタート]ボタン押下

左上端選択肢:インディケータ
上記右隣選択肢:上記[手順1]のSchaff trend cycle - tema.ex5
日付:期間指定※右側2つの日付も指定
「約定」左から2番目選択肢:始値のみ
他項目:任意


[手順3] 計算方法とMT5で設定する方法
下記手順で作成されたSTCT_(時間枠).csvの場所を開く 計算方法とMT5で設定する方法

3-1.[Strategy Tester 計算方法とMT5で設定する方法 Visualization]画面でテスト完了後、同画面[ファイル]メニュー→[データフォルダを開く]選択
3-2.[Strategy Tester Visualization]画面を閉じる(下記[記述例]追記4のFileClose()を実行させる為)
3-3.上記3-1で開いたデータフォルダ→MQL5\Filesフォルダへ移動



[記述例]

追記1.
(追記位置) 計算方法とMT5で設定する方法
49行目辺:
double val[],valc[],macd[],fastk1[],fastd1[],fastk2[];
の下

(追記内容)
int handle;


追記2.
(追記位置)
61行目辺:
IndicatorSetString(計算方法とMT5で設定する方法 略:引数);
の下

(追記内容)
handle=FileOpen("STCT_"+StringSubstr(EnumToString(_Period),計算方法とMT5で設定する方法 7)+".csv",FILE_CSV|FILE_WRITE);
FileWrite(handle,
"datetime",
"open",
"high",
"low",
"close",
"計算方法とMT5で設定する方法 stct_up",
"stct_dn");


追記3.
(追記位置)
96行目辺:
for文終了中括弧の上(for文の中側)

(追記内容)
FileWrite(計算方法とMT5で設定する方法 handle,
TimeToString(time[i]),
DoubleToString(open[i],_Digits),
DoubleToString(high[i],_Digits),
DoubleToString(low[i],_Digits),
DoubleToString(close[i],_Digits),
valc[i]==1?string(val[i]):"",
valc[i]==2?string(val[i]):"");


追記4.
(追記位置)
98行目辺:
OnCalculate()関数終了中括弧の下(OnCalculate()関数の外側)

(追記内容)
void OnDeinit(const int reason)
<
FileClose(handle);
>

またよろしければ、困ったときにご指導下さい。

勉強します。
迅速なご対応ありがとうございました!

【MT5】水平線を引くだけでロット計算できるインジケーター(無料)

MT5-Position-Size-Calculator-Panel-Risk-2-1

MT5

新着記事

Position Size Calculator:損失許容額から適正ロット数を自動計算

MT5-Position-Size-Calculator-5

  • 損失許容額を設定できる
    • 単利:損失額を一定の金額に固定する
    • 複利:○%を損失額とする
    • スプレッド込みで損失許容額を算出
    • 別途、1Lot毎の手数料(片道)を設定できる
    • 残高
    • 有効証拠金
    • 予め損失額が分かるため、安心してストップロスを設定できる。
    • 適正なロット数 [1] 精緻な計算は厳しいと思いますが、このインジケーターを使用したほうが取引が楽になると思います。 でトレードできるため、資金管理がしやすくなり、資金効率が向上する。
    • 計算方法とMT5で設定する方法 計算方法とMT5で設定する方法
    • 損失額を把握した上でエントリーするため、精神的に落ち着いてチャート推移を監視できる。

    使用は自己責任で(提供元より)

    WARNING: there is no guarantee that the output of this indicator is correct. use at own risk.
    警告:このインジケーターの出力が正しいという保証はありません。 自己責任で使用してください。

    Google 翻訳

    提供元は水平線にアラート設定できる無料インジケーター「Price Alert Panel」と同じです。
    「Price Alert Panel」については、以下の記事をご覧ください。

    EAではありません

    • 注文
    • Stop Loss設定(損切)
    • Take Profit設定(利確)

    ダウンロード・インジケーターの追加 / インストール(無料)

    • ダウンロード先:Position Size Calculator for MetaTrader
    • 計算方法とMT5で設定する方法
    • 公式YouTube:https://youtu.be/XtYxUB7cgo8

    設定・使い方

    使用上のコツ

    損失許容額の半分を設定する

    水平線の色・線種を変更

    計算方法とMT5で設定する方法

    1. 追加ラベルを表示するために「true」
      1. 損切ライン・利確ラインまでの距離を%で表示
      2. リスクリワード比を表示
      3. パネルを水平線の前面に描く
      1. SL Label Color: Yellow
      2. TP Label Font Color: Aqua
      1. Entry Line Color: お好みで
      2. Stop-Loss Line Color: Yellow
      3. Take-Profit Line Color: Aqua
      1. Stop-Loss Line Style: Dashdot
      2. Take-Profit Line Style: Dashdot

      エントリー後に水平線を非表示にする

      2.Stop Loss / Take Profit どちらの水平線も非表示になります。

      Position Size Calculator の正常動作を確認済のインジケーター組み合わせ

      現在の私のインジケーターは下記です。
      チャートの時間足を変更すると、一瞬だけ切り替わりのタイムラグがあり、MT5動作がやや重く感じます [2] 計算方法とMT5で設定する方法 同じ条件下では、有料EA「EasyOrder」 の方がMT5動作にストレス無く、きびきびと時間足が切り替わります。 。MT5挙動の重さが許容範囲になるか否かは、ユーザーの感覚や手法によって異なりそうです。

      ちなみに、Price Alert Panel を適用から外してもタイムラグは変わらなかったので、同一チャート内でも併用できそうです。

      以上で、Position Size Calculator についての説明は終わりです。
      詳細な説明は公式ページに記載されている ので、必要に応じてGoogle翻訳 などでご確認ください。

      関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次
閉じる