ドテン売買の時間制御について

2025/11/15 19:32
31

EAつくーるでEAを作成したいと思っています。

インジケーターのアラートを拾い、ドテン売買をしたいのですが、
その時にエントリーのみ時間制御を行い、決済はアラートに従う、といった制御は可能でしょうか?
(エントリー禁止の制御時間内でも、アラートに準じて決済は行う)

コメント

GogoJungle
2025/11/17 15:32

ドテン売買を行う際に、「エントリーだけ時間制限をかけて、決済は時間外でもインジケーターのアラートどおりに行いたい」というご質問ですね。

結論からお伝えすると、
EAつくーるの機能だけで「エントリーのみ時間制御・決済は時間制限なし」という動作は実現可能です。

ポイントは次の2つです。

  1. オプションの「取引時間制限」は“エントリー専用”のフィルターで、決済は止めません。
  2. 決済は「取引条件」の「買いポジション決済」「売りポジション決済」に、インジケーターのアラート条件をそのまま設定します(時間条件は入れない)。

さらにドテン売買は、
・「ドテン機能」オプション +
・インジケーターのアラート条件をエントリー条件・決済条件の両方に設定
という形で組むのが実用的です。

以下、もう少し具体的に手順を書きます。


1. 基本項目の設定

ここは通常どおりです。例として、

  • ロット数:お好みの固定ロット(例: 0.1)
  • 損切り:任意(例: 100)
  • 利食い:任意(例: 100)
  • スリッページ:お好みの値

ドテン・時間制御とは直接関係しませんので、普段どおりで問題ありません。


2. オプション設定で「エントリーだけ」時間制限する

「オプション」タブで次のように設定します。

  1. 「取引時間制限」にチェック

    • 開始時刻1:エントリーを許可したい開始時刻(MT4/MT5のサーバー時間)
    • 終了時刻1:エントリーを許可したい終了時刻

    このオプションは
    「この時間帯だけエントリーを出してよい」
    という“エントリー専用フィルタ”です。
    時間外でも、EAつくーるの「取引条件」で設定した決済条件はそのまま動作します。

  2. 「ドテン機能」にチェック

    • ドテン機能:チェックを入れるだけでOK(パラメータなし)

    これにより、
    「反対方向のエントリー条件が成立したとき、保有ポジションを決済して反対方向にエントリー」
    という動きが有効になります。

ここでよくある勘違いとして、
「取引時間制限を付けると、時間外は決済も動かなくなるのでは?」
と心配されているかもしれませんが、決済は時間制限の影響を受けません。


3. インジケーターのアラートを「取引条件」に落とし込む

次に、インジケーターアラートを拾う部分です。

EAつくーるでは「アラートそのもの(ポップアップや音)」を直接拾うことはできません。
その代わり、

  • アラートを出すインジケーターが
    「アラート発生時にバッファの値を変化させている」
    ことが前提になります。

もし、お使いのインジケーターが
「Alert() だけでバッファを持っていない」
タイプであれば、

  • インジケーターつくーるでアラート用バッファを追加する
  • もしくはMQLでバッファを追加する

といった前処理が必要になります。

以下は例として、

  • カスタムインジケーター名:MyAlertIndi
  • 計算項目 0:買いシグナル(アラート時に 1、それ以外 0)
  • 計算項目 1:売りシグナル(アラート時に 1、それ以外 0)

となっているケースを想定した設定例です。


4. 取引条件:エントリー条件(ドテン用)

「ポジション1」の「取引条件」で、まずエントリー条件を設定します。

買いエントリー条件(インジケーターの買いアラート)

カスタムインジケーター(インジケーター名:MyAlertIndi, 計算項目:0, 時間足:チャートの足, 計算位置:0本前) >= 数値(値:1)
↓
買いエントリー

売りエントリー条件(インジケーターの売りアラート)

カスタムインジケーター(インジケーター名:MyAlertIndi, 計算項目:1, 時間足:チャートの足, 計算位置:0本前) >= 数値(値:1)
↓
売りエントリー

ここで、

  • ドテン機能をオンにしているため、

    • 買いポジション保有中に「売りエントリー条件」が成立 → 自動的にドテン(買い決済→売りエントリー)
    • 売りポジション保有中に「買いエントリー条件」が成立 → ドテン(売り決済→買いエントリー)

となります。

また「取引時間制限」オプションがあるため、
上記の「買いエントリー」「売りエントリー」は、指定時間帯の中でしか実際のエントリーが行われません。


5. 取引条件:決済条件(時間外でも決済したい部分)

ご希望は
「エントリー禁止時間内でも、アラートに準じて決済は行う」
ということなので、決済条件をエントリー条件とは別に設定します。

買いポジション決済(売りアラートで決済)

カスタムインジケーター(インジケーター名:MyAlertIndi, 計算項目:1, 時間足:チャートの足, 計算位置:0本前) >= 数値(値:1)
↓
買いポジション決済

売りポジション決済(買いアラートで決済)

カスタムインジケーター(インジケーター名:MyAlertIndi, 計算項目:0, 時間足:チャートの足, 計算位置:0本前) >= 数値(値:1)
↓
売りポジション決済

ここには「時間」に関する条件やオプションは一切絡みません。
そのため、

  • 取引時間内

    • ドテン機能により「決済+反対エントリー」が同時に起こる(いわゆるドテン売買)
  • 取引時間外

    • 「取引時間制限」がエントリーをブロック
    • しかし上記の「買いポジション決済/売りポジション決済」は通常どおり動作し、アラートどおりに決済だけが行われる

という動きになります。


6. 想定されるつまづきポイント

最後に、実際によくあるつまづきポイントも挙げておきます。

  • 「取引時間制限」を入れたら決済もしなくなったように見える
    → 多くの場合、

    • 決済条件を設定していない
    • もしくはエントリー条件だけを見て「決済されていない」と誤解している
      ことが多いです。上記のように「買いポジション決済」「売りポジション決済」を明示的に設定してください。
  • インジケーターのアラートがEAで拾えない
    → インジケーターが「バッファで状態を返していない」ケースです。
    この場合はインジケーター側を修正し、アラート時にバッファを1などにセットするようにしてから、EAつくーるで「カスタムインジケーター」を参照する必要があります。


以上のように設定していただくことで、

  • 指定した時間帯だけ新規エントリー&ドテンエントリーを行う
  • 時間外でも、インジケーターアラートに従って保有ポジションは決済される

という制御は、EAつくーるの標準機能のみで実現可能です。

関連トピックス

検索結果がありません。

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

注目トピックス

検索結果がありません。