皆さん、こんにちは!今日は、XAng_Zad_Cというトレンドフォローインジケーターを使ったトレードシステムについてお話しします。このシステムでは、固定のトレード時間を設定でき、過去のトレード結果に基づいて次の取引のボリュームを変更することが可能です。
トレードの決定は、インジケーターのクラウドが色を変えたときに行われます。
トレード時間を入力パラメーターで指定することができるので、希望の時間帯にトレードを行うことができます:
input bool TimeTrade=true; //指定した時間帯でのトレードを許可 input HOURS StartH=ENUM_HOUR_0; //トレード開始時間(時) input MINUTS StartM=ENUM_MINUT_0; //トレード開始時間(分) input HOURS EndH=ENUM_HOUR_23; //トレード終了時間(時) input MINUTS EndM=ENUM_MINUT_59;//トレード終了時間(分)
各トレードの開始時刻と終了時刻には、それぞれ時間と分の2つの変数があります。
デフォルト設定では、エキスパートアドバイザーは0:00から全てのトレードセッションを行い、23:59に全てのポジションがクローズされます。
もしEAの設定で開始時間が指定された終了時間よりも遅い場合、EAは翌日の指定時間にオープンポジションをクローズします。
オープンポジションのボリュームを管理するための入力EA変数のブロックが追加されています:
input uint BuyTotalMMTriger=5; //ストップロスを計算するための最後のBuy取引の数 input uint BuyLossMMTriger=3; //損失のあるBuy取引の数によるMMの減少 input uint SellTotalMMTriger=5;//ストップロスを計算するための最後のSell取引の数 input uint SellLossMMTriger=3; //損失のあるSell取引の数によるMMの減少 input double SmallMM_=0.01; //損失が出た場合の取引における口座の割合 input double MM=0.1; //通常のトレード時の口座の割合 input MarginMode MMMode=LOT; //ロット値計算方法
このような入力がある場合、最後の5回のトレードの中で3回が損失であれば、EAは同じ方向に次のトレードを0.01ロットのボリュームでオープンします。逆に、最後の5回のトレードの中で損失トレードが3回未満であれば、ポジションのボリュームは0.1になります。
このエキスパートアドバイザーを実行するには、コンパイルされたインジケーターファイルXAng_Zad.ex5が必要です。これは<terminal_data_folder>\MQL5\Indicatorsの中に配置されている必要があります。
以下のテストには、デフォルトの入力パラメーターを使用しました。テストではストップロスとテイクプロフィットは使用していません。

Fig. 1. 取引のチャート例。指定された時間帯でのトレードが無効になっています。
2017年のGBPJPY H4のテスト結果:

Fig. 2. テスト結果のチャート

Fig. 3. 取引のチャート例。指定された時間帯でのトレードが有効になっています。
コメント 0