概要:
ファンダメンタルトレーダーEAは、自動的にニュースイベントに基づいて金融取引の意思決定を行うエキスパートアドバイザーです。このEAは過去のデータではバックテストできず、次のニュースイベントを待って実際のデータと予測データの差を考慮して取引を行います。
基本的な動作:
- EAはDailyFXカレンダーをダウンロードし、次に予定されているニュースイベントを特定します。その後、そのニュースがリリースされるのを待ちます。
- データがリリースされた際に、EAは投資家としての取引意思決定を行います。このEAは任意のチャートと時間枠に適用可能で、チャートを取引実行に使用します。
- ファンダメンタルトレーダーEAは、DailyFXカレンダーに記載されているすべての国をサポートしています。
注意事項:
注:このEAを機能させるには、以下のサイトからメインファイルを設定する手順に従う必要があります:
- https://www.mql5.com/en/articles/1502
- このEAは、上記のリンクで指定されたインジケーターのコードに基づいて構築されています。最初に上記の指示に従って、以下のファイルを設定してください:
- getright_setup.zip
- Time.mq4
- Time.mqh
- デフォルトの「get right」ダウンロードディレクトリを、カレンダーがダウンロードされる場所に変更することを忘れないでください。この設定がされていないと、EAは正しく動作しません。
- その記事をゆっくりと読み、すべての指示に従ってください。
取引ロジック:
- ニューストレードで発生するイベントには2種類あります:
- 1つ目は、実際の経済データが予測データと比較されること。
- 2つ目は、実際の経済データが前回のデータと比較されること。
- 経済データの差が通貨価格の方向に影響を与え、経済データのパーセント差が大きいほど、ニュースイベントが市場に反応する可能性が高くなります。
リスク/リワード比:
- ファンダメンタルトレーダーEAは、1:3のリスク/リワード比で設定されており、デフォルト値はリスク=20、リワード=3です。
- リスクはPIPストップロスの値で、リワードは期待する利益の倍率です。例えば、EAが20PIPのリスクを取る場合、60PIPの利益を期待します。
- これらの値は、EAをチャートに適用する際に変更可能です。
ニュースイベントのリリースを待つ時間:
- ニュースデータは、予定された時間に正確にリリースされるわけではありません。EAがニュースイベントのリリースを待つための時間枠を設定する必要があります。
- 以下のコードスニペットは、EAがニュースがリリースされるまで待機する時間を決定します。
if(Date>(TimeCurrent()-(xTime*60)))
注文を閉じるまでの待機時間:
- EAが開いている注文を閉じるまでの時間枠も設定できます。
- たとえば、ニュースイベントがリリースされた後、30分待ってから現在の注文を利益または損失で閉じることが推奨されます。
ファンダメンタルトレーダーEAのサポート国:
- ファンダメンタルトレーダーEAは、dailyfx.com/calendarでサポートされているすべての通貨を取引します。
- 以下は、ニュースイベントがリリースされる国に基づいて取引する通貨を指定するコードスニペットです。
if(stCurrency=="EUR") { ordercurrency="EURUSD"; } //trading eurusd
if(stCurrency=="USD") { ordercurrency="EURUSD"; } //trading eurusd
if(stCurrency=="JPY") { ordercurrency="USDJPY"; } //trading usdjpy
if(stCurrency=="GBP") { ordercurrency="GBPUSD"; } //trading usdgbp
if(stCurrency=="CHF") { ordercurrency="USDCHF"; } //trading usdchf
if(stCurrency=="AUD") { ordercurrency="AUDUSD"; } //trading audusd
if(stCurrency=="CAD") { ordercurrency="USDCAD"; } //trading usdcad
if(stCurrency=="NZD") { ordercurrency="NZDUSD"; } //trading nzdusd
取引意思決定:
- EAが実際の経済データを待っているとき、予測経済データが利用可能である場合の取引決定についてのコードスニペットを以下に示します。
- 予測データが利用できない場合、EAは前回のデータを使用して取引を行います。
- 以下のコードスニペットは、予測データと実際のデータに基づいて取引がどのように実行されるかを説明しています。
if(StringToDouble(stActual)>StringToDouble(stForecast)) { /*処理内容*/ }
ロットサイズ:
- EAは(実際のデータと予測データ)または(実際のデータと前回のデータ)を比較し、ニュースデータのパーセンテージ差に基づいて取引するロットサイズを決定します。
- 以下のコードスニペットは、EAがパーセント差を決定し、ロットサイズを指定する方法を示しています。
double percent_d_AF=MathAbs((MathAbs(StringToDouble(stActual)-StringToDouble(stForecast))/StringToDouble(stForecast))*100);
チャート情報:

ファンダメンタルニュースデータのスクリーンショット
まとめ:
- このEAは、dailyfx.com/calendarでリリースされるすべての経済イベントを取引します。
- EAは毎分カレンダーをダウンロードし、次のニュースイベントを待ちます。
- 経済データがリリースされた際、実際のデータと予測データの比較に基づいてロットサイズ、取引通貨、取引方向を決定します。
すべての指示に従って、カレンダーが正しくダウンロードされていることを確認してください。
質問やコメントがあれば、ぜひコメントを残してください。