本日は、AdaptiveRenkoインジケーターに基づく、ロングポジションとショートポジション用の2つの同一のトレーディングシステムについて解説します。このシステムは、1つのExpert Advisor(EA)内で異なる設定を行うことができます。
EAの入力パラメータ
このEAでは、入力パラメータを大きく2つのグループに分けることができます:
- 名前が「L」で始まるものはロングポジション管理用のパラメータ。
- 名前が「S」で始まるものはショートポジション管理用のパラメータ。
//+----------------------------------------------+ //| ロングオペレーション用のEA入力 | //+----------------------------------------------+ input uint L_Magic=777; //ロング魔法番号 input double L_MM=0.1; //ロングポジションの取引における預金の割合 input MarginMode L_MMMode=LOT; //ロングロットサイズ計算方法
//+----------------------------------------------+ //| ショートオペレーション用のEA入力 | //+----------------------------------------------+ input uint S_Magic=555; //ショート魔法番号 input double S_MM=0.1; //ショートポジションの取引における預金の割合 input MarginMode S_MMMode=LOT; //ショートロットサイズ計算方法
この2つのトレーディングシステムは異なる魔法番号を使用しており、互いに完全に独立しています。実際の金融市場は対称的でないことが多いです。同じトレーディングシステムでも、上昇市場と下降市場で異なるパラメータが必要な場面がよくあります。EAを適切に設定するには、まず一方のトレーディングシステムのみをテストし、もう一方は関連するスイッチを使って無効にします。
input bool L_PosOpen=true; //ロングポジションのエントリー許可 input bool L_PosClose=true; //ロングポジションのエグジット許可
その後、同様にセカンドシステムを設定してください。
EAが機能するためには、コンパイルされたAdaptiveRenko.ex5インジケーターのファイルが<terminal_data_directory>\MQL5\Indicatorsに存在する必要があります。
以下に示すテストでは、デフォルトのExpert Advisorの入力パラメータが使用され、ストップロスやテイクプロフィットは使用されていません。

図1. 対称設定でのチャート上の取引例
2017年のUSDJPY H4のテスト結果を以下に示します:

図2. テスト結果チャート

図3. 非対称設定でのチャート上の取引例