アイデア提供者: Vladimir Khlystov。
MQL5コード提供者: Vladimir Karputov。
このEAは、1分足から1ヶ月足までの任意の時間枠でのブレイクを待ちます。バー#1が指定された時間枠でブレイクダウンされるかをチェックします。前のローソク足のブレイクダウンもしくは、2つのフィルター - 移動平均を有効にすることが可能です。
注意!フィルターを機能させるためには、平均化期間ファースト: av. periodとスロー: av. periodがゼロより大きい必要があります。
このEAでは、トレーリングが実装されており、ストップロスレベルの最初の修正時にストップロスをブレイクイーブンに移動します。
ポジションサイズは、常に固定(ロットがゼロより大きく、リスクがゼロに等しい)または、トレードごとのリスクパーセントに基づいて動的に計算されます(リスクがゼロより大きく、ロットがゼロに等しい)。
注意!以下の状況は許可されません:
- 両方の「ロット」と「リスク」がゼロより大きい場合;
- 両方の「ロット」と「リスク」がゼロの場合。
目標利益に達した場合、利益達成時に全ポジションをクローズ、すべてのポジションがクローズされます。このEAは、指定された時間枠での前のローソク足のブレイクダウンにおいて、1方向に最大1ポジションしか開かないことを保証します。

図1. 現在の時間枠: M15、ブレイクダウンはH4に設定
入力パラメータ
- 前のローソク足のブレイクダウン - ブレイクダウンされるローソク足の時間枠;
- 高値または安値からのインデント - ブレイクダウンされたローソク足の高値と安値からのインデント;
- ファースト: av. period - 移動平均「ファースト」の平均化期間。ゼロに設定すると、「ファースト」と「スロー」のフィルターは使用されません;
- ファースト: 水平シフト - 移動平均「ファースト」のインジケーターの水平シフト;
- ファースト: 価格の種類 - 移動平均「ファースト」の計算に使用される価格の種類;
- スロー: av. period - 移動平均「スロー」の平均化期間。ゼロに設定すると、「ファースト」と「スロー」のフィルターは使用されません;
- スロー: 水平シフト - 移動平均「スロー」のインジケーターの水平シフト;
- スロー: 価格の種類 - 移動平均「スロー」の計算に使用される価格の種類;
- ファーストとスロー: スムージングタイプ - 平均化タイプ(「ファースト」と「スロー」の共通);
- ストップロス - ストップロス;
- テイクプロフィット - テイクプロフィット;
- トレーリングストップ - トレーリング(ストップロスの最初の修正時にブレイクイーブンとして機能します);
- トレーリングステップ - トレーリングステップ;
- ロット - ロットサイズが固定(リスクはゼロに設定する必要あり);
- リスク - ロットサイズがトレードごとのリスクパーセントに基づいて動的に計算されます(ロットはゼロに設定する必要あり);
- 1方向の最大ポジション数 - 1方向における最大ポジション数;
- 利益達成時に全ポジションをクローズ - 全ポジションをクローズする際の目標利益。