無料でロボットをダウンロードする方法を見る
Facebook上で私たちを見つけてください。
私たちのファンページに参加してください
私たちのファンページに参加してください
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
Stop Loss Take Profit - MetaTrader 5のためのエキスパート
- ビュー:
- 1035
- 評価:
- パブリッシュ済み:
- 2017.11.14 08:11
- アップデート済み:
- 2018.02.28 10:48
- このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動
取引がストップロスによって決済された場合は取引量が2倍にされ、テイクプロフィットよって決済された場合は最小量が使用されます。ストップロスかテイクプロフィットが発生したかどうかを判断するにはOnTradeTransactionが使用されます。
優れたENUM_DEAL_REASON列挙体はビルド1625に追加されました。
ENUM_DEAL_REASON | 理由の説明 |
---|---|
... | ... |
DEAL_REASON_SL | 操作がストップロスの有効化の結果として実行された |
DEAL_REASON_TP | 操作がテイクプロフィットの有効化の結果として実行された |
... | ... |
これはOnTradeTransactionで確認できます。
言い換えれば、これは、取引がストップロスかテイクプロフィットの結果であるかを決定するのに非常に簡単で信頼できる方法です。
現時点では(1626ビルド)、このエキスパートアドバイザーは、実際のデータ(MetaEditorのF5)でチャートで起動するかデバッグモードで起動することでのみ、ライブテストで確認できます。私は次のバイパス操作を行いました。
OnTradeTransactionで、トリガがテイクプロフィット によるものか ストップロスによるものかを特定します。
if(deal_symbol==m_symbol.Name() && deal_magic==m_magic) if(deal_entry==DEAL_ENTRY_OUT) { if(deal_reason==DEAL_REASON_SL) ExtLot*=2.0; else if(deal_reason==DEAL_REASON_TP) ExtLot=m_symbol.LotsMin(); }
MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/18755