複数ポジションのトレーリングストップについて

2025/08/07 20:05
22

お世話になります。
ポジション1エントリー後、逆行したらポジション2をエントリーし、その後、狙い通りの方向に進み、ポジション1と2の合計pips数が「0」以上で決済するようにしています。ナンピンオプションは使わず、Magic1とMagic2です。
(ポジ1が-50pips、ポジ2が+50pipsで合計0pips)

ここで、ポジション1に対して、ポジション1と2の合計pips数が「0」になったら、トレーリングストップ機能を使い、5pips毎にトレーリングしていきたいです。
 例:合計が5pipsで、合計0pipsの位置にSL移動
   合計が10pipsで、合計5pipsの位置にSL移動

①https://labo.gogojungle.co.jp/articles/1943
②https://labo.gogojungle.co.jp/articles/2096

①を参考に、ポジション1エントリーのみで、狙いの方向に進んだ際のトレーリングストップ機能としてコード修正して段階的にSLが移動するようにしました。

②のように、別途コードを修正・追記することで実現することはできますでしょうか。
ご教授のほどよろしくお願いいたします。

コメント

GogoJungle
2025/08/08 11:50

EAつくーるの機能のみでは、「ポジション1と2の合計pipsが基準ラインに達したタイミングで、段階的(5pipsごと)にトレーリングストップを動かす」ような処理を直接設定することはできません。というのも、EAつくーるのトレーリングストップ機能は各ポジション単体の損益で判断される仕様だからです (labo.gogojungle.co.jp)。

ですが、ご希望を実現するには、出力されたMQLコードの修正が必要となります。

以下に、最小限の修正例としてイメージをご提案いたします。

まず前提として、ナンピンオプションは使わずポジション1・2(Magic1・Magic2)で管理している点を前提にご案内します。

# 準備
— EAつくーるで作成し、ナンピンオプションは使用せず、基本設定でSL/TPは0にしない状態で生成してください。
— ダウンロードし、MetaEditorでコードを開いてください。

具体的な修正は以下のように、「合計損益(pips)」を取得し、特定pips到達時にポジション1のSLを動かす処理を追加します。

【修正箇所の例】

【修正前】(TrailingStop 呼び出し部分あたり)

if(isTrailingStop == true) TrailingStop(TrailinStopNormalValue, Magic1);

【修正後】

if(isTrailingStop == true) {
   double total_pips = getOrderProfitPips("1,2", 0, false);
   int step = int(total_pips / 5);  // 5pips毎のステップ数
   if (step > 0) {
      double new_sl_pips = step * 5 - total_pips;  // 合計pipsが5→sl=0, 10→sl=5 など
      // ポジション1を対象にSLを移動
      double sl_price = OrderOpenPrice() - PipsToPrice(new_sl_pips);
      TrailingStop(new_sl_pips, Magic1);
   }
}

この修正により:

  • getOrderProfitPips("1,2", ...) で合計pipsを取得。
  • 5pipsごとのステップ数を算出し、それに応じたSL位置へ“階段的”に移動。
  • TrailingStop関数を流用して、ポジション1側にSL移動させるイメージです。

なお、この例は概念イメージであり、実際には以下の調整が必要です:

  • SL設定時に誤約定を防ぐ(SLが逆行しないように、現在のSLより有利かどうか等の条件追加)。
  • 売り/買いに応じた価格計算調整(買い:Bid-based、売り:Ask-based)。
  • TrailingStop内部ロジックの理解に基づく修正。

まとめ

  • EAつくーる単体では、合計pipsベースの段階トレーリングは難しい仕様です。
  • 修正方法としては、生成されたMQLコードに「合計損益計算+ステップごとのSL移動処理」を追記する形で実現可能です。
  • 上記のサンプルをベースに、ご希望の段階的トレーリングロジックにカスタマイズが可能です。

ご提案させていただいた内容が、実装のヒントになれば幸いです。

関連トピックス

検索結果がありません。

ノーコードで誰でも簡単EA開発!MQL言語学習にも使える! | GogoJungle

注目トピックス

検索結果がありません。