皆さん、こんにちは!今日は、MetaTrader 5用のトレンドフォローEA「Exp_XROC2_VG_X2」についてご紹介します。このシステムは、2つのXROC2_VGインジケーターから生成されるシグナルに基づいています。
最初のインジケーターは、メインラインとシグナルラインの位置に基づいて、遅いトレンドの方向を判断します。2つ目のインジケーターは、ラインが交差したり触れたりするタイミングで取引を開始するポイントを決定します。以下の2つの条件が満たされた場合に、バーのクローズ時にエントリーシグナルが生成されます:
- 速いトレンドと遅いトレンドのシグナルが一致すること。
- 速いトレンドが方向を変えたこと。
EAの入力パラメーター:
//+-------------------------------------------------+ //| EAインジケーターの入力パラメーター | //+-------------------------------------------------+ input string Trade="トレード管理"; //+================ トレード管理 ================+ input double MM=0.1; //取引における預金の割合 input MarginMode MMMode=LOT; //ロット値検出方法 input uint StopLoss_=1000; //ストップロス(ポイント) input uint TakeProfit_=2000; //テイクプロフィット(ポイント) input string MustTrade="取引許可"; //+=============== 取引許可 ===============+ input int Deviation_=10; //最大価格偏差(ポイント) input bool BuyPosOpen=true; //ロングポジションのエントリー許可 input bool SellPosOpen=true; //ショートポジションのエントリー許可 //+-------------------------------------------------+ //| フィルターインジケーターの入力パラメーター | //+-------------------------------------------------+ input string Filter="遅いトレンドパラメーター"; //+============== トレンドパラメーター ==============+ input ENUM_TIMEFRAMES TimeFrame=PERIOD_H6; //1トレンドのチャート期間 input uint ROCPeriod1=8; input Smooth_Method MA_Method1=MODE_JJMA; //最初のインジケーターの平均化方法 input uint Length1=5; //最初のスムージングの深さ input int Phase1=15; //最初のスムージングのパラメーター //---- JJMAの場合は-100 ... +100の範囲で、遷移プロセスの質に影響します; //---- VIDIAの場合はCMOの期間、AMAの場合は遅い平均期間 input uint ROCPeriod2=14; input Smooth_Method MA_Method2=MODE_JJMA; //2つ目のインジケーターの平均化方法 input uint Length2 = 5; //2つ目のスムージングの深さ input int Phase2=15; //2つ目のスムージングのパラメーター //---- JJMAの場合は-100 ... +100の範囲で、遷移プロセスの質に影響します; //---- VIDIAの場合はCMOの期間、AMAの場合は遅い平均期間 input ENUM_TYPE ROCType=MOM; input uint SignalBar=1; //エントリーシグナルを受け取るバーインデックス input bool BuyPosClose=true; //トレンドによるロングポジションの終了許可 input bool SellPosClose=true; //トレンドによるショートポジションの終了許可 //+-------------------------------------------------+ //| エントリーインジケーターの入力パラメーター | //+-------------------------------------------------+ input string Input="エントリーパラメーター"; //+=============== エントリーパラメーター ==============+ input ENUM_TIMEFRAMES TimeFrame_=PERIOD_M30; //2エントリーのチャート期間 input uint ROCPeriod1_=8; input Smooth_Method MA_Method1_=MODE_JJMA; //最初のインジケーターの平均化方法 input uint Length1_=5; //最初のスムージングの深さ input int Phase1_=15; //最初のスムージングのパラメーター //---- JJMAの場合は-100 ... +100の範囲で、遷移プロセスの質に影響します; //---- VIDIAの場合はCMOの期間、AMAの場合は遅い平均期間 input uint ROCPeriod2_=14; input Smooth_Method MA_Method2_=MODE_JJMA; //2つ目のインジケーターの平均化方法 input uint Length2_ = 5; //2つ目のスムージングの深さ input int Phase2_=15; //2つ目のスムージングのパラメーター //---- JJMAの場合は-100 ... +100の範囲で、遷移プロセスの質に影響します; //---- VIDIAの場合はCMOの期間、AMAの場合は遅い平均期間 input ENUM_TYPE ROCType_=MOM; input uint SignalBar_=1;//エントリーシグナルを受け取るバーインデックス input bool BuyPosClose_=false; //シグナルによるロングポジションの終了許可 input bool SellPosClose_=false; //シグナルによるショートポジションの終了許可
入力パラメーターのテキストは、EAの入力パラメーターウィンドウの視覚化のためにのみ使用されています。
EAにおけるXROC2_VG_HTFインジケーターは、戦略テスターでのトレンド視覚化のためのものであり、他の動作モードでは無効です。
コンパイルされたExpert Advisorを適切に機能させるためには、コンパイルされたXROC2_VG.ex5およびXROC2_VG_HTF.ex5インジケーターファイルを<terminal_data _folder>\MQL5\Indicatorsに追加する必要があります。
TradeAlgorithms.mqhライブラリファイルは、非ゼロスプレッドを提供するブローカーで、ポジションオープン時にストップロスおよびテイクプロフィットを設定するオプションを使用することができます。ライブラリの他のバリエーションを以下のリンクからダウンロードできます:トレードアルゴリズム。
以下に示すテストでは、デフォルトの入力パラメーターが使用されました。テスト中にはストップロスおよびテイクプロフィットは使用されませんでした。

図1: チャート上の取引の例
2015年のAUDUSDに関するテスト結果、H6での遅いトレンド、M30での速いトレンドによるエントリー:
図2: テスト結果チャート
