Overtrading Stopper MT5
- ユーティリティ
-
Kosuke Noguchi
MT5向けExpert Advisorを開発している、日本在住の個人開発者です。相場のシグナルを増やすことよりも、明確なロジック と保守的なリスク管理を優先して製品を作っています。
現在公開中の製品:
(1) TokyoGoldBreakoutEA — Gold(XAUUSD)専用、東京・アジア時間レンジのブレイクアウトのみを狙う低頻度型EA。毎日
のトレードを目的とせず、条件が揃ったセットアップだけを待ちます。
(2) Overtrading Stopper MT5 — 裁量トレーダー向けの取引規律ユーティリティ。1日の取引回数・連敗回数・エントリー間 - バージョン: 1.103
1. 概要
Overtrading Stopper MT5 は、裁量トレードにおける取引ルールの実行を支援するMetaTrader 5用ユーティリティEAです。
「今日は何回まで取引するか」「何連敗したら止めるか」「負けた後、何分休むか」「短時間に連続でエントリーしない」といった、自分で決めたルールをあらかじめ設定できます。
設定した上限や条件に達すると、EAはチャート上に保護状態の理由を表示し、必要に応じて新規ポジションの決済や保留注文の削除を行います。
このツールは売買シグナルを出すEAではありません。トレード判断そのものは行わず、ユーザーが事前に決めたリスク管理・取引規律のルールを運用しやすくするためのツールです。
2. このようなトレーダーに向いています
Overtrading Stopper MT5 は、次のような課題を持つ裁量トレーダー向けです。
- 取引回数の上限を決めても、相場を見ているうちに回数が増えてしまう
- 損失後にすぐ取り返そうとして、連続エントリーしてしまう
- 連敗した日は一度休止したいが、感情的な判断で取引を続けてしまう
- スキャルピングや短期売買で、エントリー間隔を管理したい
- 裁量取引とEA取引を分け、特定のMagic Numberだけを監視したい
- 複数銘柄を取引しているため、銘柄ごとのルールまたは全銘柄共通のルールを使い分けたい
- EAを外したりMT5を再起動した後も、その日の保護状態を維持したい
- 取引ルールが発動した経緯をCSVログで確認したい
「取引しない」という判断を感情だけに任せず、事前に決めた条件に沿って運用したい場合に適しています。
3. できること・できないこと
できること
- 取引回数、連敗回数、連続エントリー間隔、損失後の休止時間を監視できます。
- 条件到達時に保護状態へ移行し、理由をチャート上へ表示します。
- 保護状態の後に開かれた対象ポジションを、設定に応じて決済できます。
- 保護状態の後に作成された対象保留注文を、設定に応じて削除できます。
- 保護状態になる前から存在していた対象保留注文も、必要な場合だけ削除できます。
- 手動取引、すべての取引、または指定したMagic Numberの取引を対象にできます。
- 現在のチャート銘柄だけ、または全銘柄を対象にできます。
- ロック状態と損失後クールダウンを保存し、EAの再装着やMT5再起動後に復元できます。
- CSVイベントログで、初期化、ロック、リセット、クールダウン、決済、保留注文削除などを確認できます。
できないこと・重要な仕様
- このEAは売買シグナルを出しません。
- 利益、勝率、損失回避を保証するものではありません。
- 手動注文を「発注される前」に拒否することはできません。注文を検出した後に、設定済みの保護操作を実行します。
- 決済や注文削除の成否は、通信状態、ブローカーの取引条件、銘柄の取引可能時間などの影響を受けます。
- 保護機能を利用する間は、MT5またはVPSを稼働させ、アルゴリズム取引を有効にしておく必要があります。
購入前に、まずデモ口座でご自身の運用方法とブローカー環境に合うことを確認してください。
4. 主な機能
1日の取引回数上限
監視対象となる新規エントリー数をカウントし、指定回数に達した場合に保護状態へ移行します。
「1日5回まで」「ロンドン時間だけ3回まで」など、自分の取引ルールに合わせて上限を設定できます。日次リセットの時刻は、ブローカーのサーバー時刻を基準に設定します。
連敗回数上限
監視対象の損失決済が連続して指定回数に達した場合に保護状態へ移行します。
例えば、3連敗後にその日の取引を見直したい場合は、連敗回数を3に設定します。
最小エントリー間隔
指定時間より短い間隔で連続エントリーした場合に、保護状態へ移行します。
短時間に注文を繰り返してしまう傾向がある場合に役立ちます。例えば10分に設定すると、前回の対象エントリーから10分未満で次の対象エントリーが行われた場合に検出します。
損失後クールダウン
損失決済が発生した後、指定した時間だけ保護状態を有効にします。
クールダウン中は、残り時間がチャートパネルに表示されます。例えば30分に設定した場合、損失決済の後30分間、設定済みの保護操作が適用されます。0に設定すると、この機能は無効です。
保護操作の選択
保護状態になった後に、何を行うかを個別に選択できます。
- 新規ポジションを決済する
- 新規保留注文を削除する
- 保護状態になる前から存在する保留注文も削除する
保護を強くしたい場合と、既存の取引計画をなるべく維持したい場合で、設定を使い分けられます。
監視対象の絞り込み
現在のチャート銘柄だけを監視するか、全銘柄を監視するかを選択できます。
また、Magic Numberの条件により、手動取引だけ、すべての取引、または特定EAの取引だけを監視できます。
状態パネルとCSVイベントログ
チャート上の状態パネルには、現在のステータス、エントリー回数、連敗回数、クールダウン、監視対象、保護理由、保護操作の設定状況が表示されます。
CSVイベントログには、重要なイベントが記録されます。発動理由や保護操作の確認、設定の見直しに利用できます。
保護状態の保存
当日のロック状態と、開始済みの損失後クールダウンは保存されます。
EAを一度チャートから外して再度装着した場合や、MT5を再起動した場合でも、同じ口座・監視対象範囲・Magic Numberの設定では、保存された保護状態を復元します。日次リセット時刻になると、その日の状態は解除されます。
5. 保護が作動したときの動き
保護状態は、以下のいずれかの条件で有効になります。
- 1日の取引回数上限に到達した
- 連敗回数上限に到達した
- 最小エントリー間隔より短い連続エントリーが検出された
- 損失後クールダウンが有効である
保護状態になると、チャートパネルに理由が表示されます。
その後の動作は、Protection Actionsの設定によって決まります。
Close new positions after protection starts
有効にした場合、保護状態になった後に開かれた監視対象の新規ポジションを決済します。
保護状態になる前から保有していたポジションは、この設定だけでは決済対象になりません。
Delete new pending orders after protection starts
有効にした場合、保護状態になった後に作成された監視対象の新規保留注文を削除します。
既存の取引計画にある保留注文は維持しつつ、ロック後に新しく置かれた保留注文だけを対象にしたい場合に適しています。
Also delete existing pending orders
有効にした場合、保護状態になる前から存在していた監視対象の保留注文も削除します。
この設定は保護を強くする一方、あらかじめ置いていた指値・逆指値注文も削除対象になります。意図を理解したうえで有効にしてください。
6. 最初の設定例
最初は、既存ポジションや既存保留注文への影響を抑えた、慎重な設定から始めることをおすすめします。
Daily trade limit: 5 (1日の取引回数上限:日次リセットまでに許可する対象エントリー数)
Losing streak limit: 3 (連敗回数上限:損失決済が連続でこの回数に達すると保護状態になる)
Minimum entry gap: 10 minutes (最小エントリー間隔:この時間より短い間隔の連続エントリーを検出する)
Loss cooldown: 30 minutes (損失後クールダウン:損失決済後に保護状態を維持する時間)
Close new positions: false (新規ポジションを決済:保護状態後に開かれた対象ポジションを決済する)
Delete new pending orders: true (新規保留注文を削除:保護状態後に作成された対象保留注文を削除する)
Delete existing pending orders: false (既存保留注文を削除:保護状態前からある対象保留注文も削除する)
Symbols to monitor: Current chart (監視対象の銘柄:EAを入れた現在のチャートの銘柄だけを対象にする)
Magic scope: 0 (Magic Numberの対象範囲:0は手動取引を対象にする)
Daily reset hour: 0 (日次リセット時刻:ブローカーのサーバー時刻で日次状態をリセットする時刻)
この設定では、手動取引を対象として、1日5回までのエントリー、3連敗、10分未満の連続エントリー、損失後30分の休止を管理します。
保護状態になっても、既に保有しているポジションには触れません。一方で、保護状態になった後に新しく作成された保留注文は削除されます。
最初はデモ口座で、保護状態になるタイミングと保護操作を確認してから、実運用のルールに合わせて調整してください。
7. 使用手順
1. 使用前に確認すること
最初は実運用の口座ではなく、デモ口座で動作を確認してください。
EAによる保護操作を使用する間は、MT5またはVPSを起動したままにし、ツールバーのアルゴリズム取引を有効にします。アルゴリズム取引が無効な場合、EAは注文の決済や保留注文の削除を実行できません。
また、どの取引を監視するかを事前に決めます。
- 手動取引だけを監視する場合:Magic scopeを0に設定します。
- すべての取引を監視する場合:Magic scopeを-1に設定します。
- 特定EAだけを監視する場合:そのEAで使用しているMagic Numberを設定します。
2. EAをチャートへ装着する
- MT5でチャートを開きます。Current chartを使用する場合は、監視したい銘柄のチャートを開いてください。
- ナビゲータからOvertrading Stopper MT5をチャートへドラッグ&ドロップします。
- 共有タブで「アルゴリズム取引を許可」を有効にします。
- インプットタブで必要な入力項目を設定します。
- チャート右上にEAのアイコンが表示され、チャート上に状態パネルが表示されることを確認します。
全銘柄を監視する場合は、任意の1つのチャートにEAを装着し、Symbols to monitorをAll symbolsに設定します。
3. 取引ルールを設定する
まず、Discipline Limitsで取引ルールを設定します。
- Daily trade limitに、1日の対象エントリー数の上限を入力します。
- Losing streak limitに、取引を停止したい連敗回数を入力します。
- Minimum entry gapに、連続エントリーを避けたい時間を分単位で入力します。
- Loss cooldownに、損失決済後に休止したい時間を分単位で入力します。使用しない場合は0にします。
- Daily reset hourに、日次のカウントと保護状態をリセットする時刻を、ブローカーのサーバー時刻で入力します。
最初は第6章の設定例を使用し、動作を理解してからご自身のルールに合わせて値を変更することをおすすめします。
4. 保護操作を選択する
Protection Actionsでは、保護状態の後にどの操作を行うかを設定します。
- 既に保有しているポジションを維持したい場合は、Close new positions after protection startsをfalseにします。
- 保護状態の後に追加された保留注文を削除したい場合は、Delete new pending orders after protection startsをtrueにします。
- 保護状態になる前からある保留注文も削除したい場合だけ、Also delete existing pending ordersをtrueにします。
初めて使用する場合は、Close new positions after protection startsをfalse、Delete new pending orders after protection startsをtrue、Also delete existing pending ordersをfalseにした慎重な設定がおすすめです。
5. 監視対象を確認する
Symbols to monitorとMagic scopeは、保護操作が適用される範囲を決める重要な設定です。
- Symbols to monitorがCurrent chartの場合、EAを装着したチャートと同じ銘柄だけが対象です。
- Symbols to monitorがAll symbolsの場合、監視対象のMagic Numberに一致する全銘柄の取引が対象です。
- Magic scopeが0の場合、通常の手動注文が対象です。
- Magic scopeが-1の場合、手動注文とEA注文を含むすべての取引が対象です。
- Magic scopeに正の数値を指定した場合、そのMagic Numberを持つEA注文だけが対象です。
特にAll symbolsまたはMagic scopeが-1を使用する場合は、意図しない取引が対象にならないか、デモ口座で確認してください。
6. 状態パネルを確認する
EAを装着すると、チャート上に状態パネルが表示されます。パネルでは、少なくとも次の内容を確認してください。
- 現在のステータスがOKか、保護状態か
- 監視対象の銘柄範囲とMagic Numberの範囲
- 当日のエントリー回数と連敗回数
- 損失後クールダウンが有効な場合の残り時間
- 保護状態になった理由
- 新規ポジション決済および保留注文削除が有効かどうか
文字が小さい、または大きすぎる場合は、Status panel text sizeで調整できます。パネルを表示しない場合は、Show status panel on chartをfalseに設定できます。
7. デモ口座で保護動作を確認する
実運用の前に、少なくとも以下をデモ口座で確認してください。
- 小さいロットで対象となる取引を行い、エントリー回数がパネルに反映されることを確認します。
- Daily trade limitまたはMinimum entry gapが発動する条件を作り、ステータスが保護状態へ変わることを確認します。
- Loss cooldownを使用する場合は、対象取引を損失で決済し、クールダウンの開始と残り時間表示を確認します。
- Delete new pending orders after protection startsを有効にした場合は、保護状態の後に対象の保留注文を作成し、削除されることを確認します。
- Close new positions after protection startsを使用する場合は、必ずデモ口座で、対象となる新規ポジションに対する動作を確認します。
- EAを一度外して再装着し、保護状態またはクールダウンが復元されることを確認します。
設定を変更する場合は、チャートパネルの監視範囲と保護操作の表示を再確認してください。
8. CSVログを確認する
Write CSV event logをtrueにすると、イベントログがMT5データフォルダ内の次のファイルへ保存されます。
MQL5\Files\OvertradingStopperMT5_log.csv
デモテストの後は、このCSVファイルで、LOCK、COOLDOWN_START、COOLDOWN_END、RESET、STATE_RESTORED、ポジション決済、保留注文削除などの記録を確認してください。
9. 日常運用
実運用を開始した後は、取引を始める前にチャートパネルを確認し、監視対象、当日の取引回数、保護操作の設定が意図どおりであることを確認してください。
EAの再装着やMT5再起動後も、当日の保存済み保護状態は復元されます。ただし、日次リセット時刻を過ぎると、その日のカウントと保護状態はリセットされます。日ごとの取引開始時には、Daily reset hourがご自身のルールに合っているかを確認してください。
8. パラメーター詳細
Discipline Limits
Daily trade limit
日本語:1日の取引回数上限
1回の日次リセット期間内に許可する監視対象エントリー数です。
例:5に設定した場合、対象エントリーが5回に到達すると保護状態になります。
Losing streak limit
日本語:連敗回数上限
監視対象の損失決済が連続して指定回数に達した場合に、保護状態になります。
例:3に設定した場合、3回連続の損失決済を検出すると保護状態になります。
Minimum entry gap (minutes)
日本語:最小エントリー間隔(分)
連続エントリーとして検出する最短時間です。
例:10に設定した場合、前回の対象エントリーから10分未満で新しい対象エントリーが行われると、保護状態になります。
Loss cooldown (minutes, 0 = off)
日本語:損失後クールダウン(分、0で無効)
損失決済の後に保護状態を維持する時間です。
例:30に設定した場合、損失決済の後30分間、保護状態が有効になります。0に設定するとクールダウンは使用しません。
Protection Actions
Close new positions after protection starts
日本語:保護状態後の新規ポジションを決済
保護状態になった後に開かれた監視対象ポジションを決済します。
すでに保有しているポジションを維持したい場合はfalseに設定してください。
Delete new pending orders after protection starts
日本語:保護状態後の新規保留注文を削除
保護状態になった後に新しく作成された監視対象の保留注文を削除します。
保護状態中の追加注文を抑えたい場合に使用します。
Also delete existing pending orders
日本語:既存保留注文も削除
保護状態になる前から存在していた監視対象の保留注文も削除します。
falseの場合、保護状態になる前から存在していた保留注文は維持されます。trueの場合は、既存の保留注文も削除対象になります。
Symbols to monitor
日本語:監視対象の銘柄
- Current chart:EAを装着した現在のチャートの銘柄だけを監視します。
- All symbols:口座内のすべての銘柄を監視します。
複数銘柄を合計して取引回数や連敗回数を管理したい場合は、All symbolsを使用します。
Magic scope (-1 all, 0 manual, >0 EA)
日本語:Magic Numberの対象範囲
- -1:すべての対象取引を監視します。
- 0:手動取引を監視します。
- 1以上:指定したMagic Numberを持つEA取引だけを監視します。
裁量取引だけを管理する場合は0を設定してください。複数のEAを使用しており、特定EAだけを管理したい場合は、そのEAが使用するMagic Numberを設定します。
Daily reset hour (server time)
日本語:日次リセット時刻(サーバー時刻)
取引回数、連敗回数、当日のロック状態をリセットする時刻です。
この時刻はPCの時刻ではなく、ブローカーのサーバー時刻を基準にします。通常は0を使用できますが、ご自身の取引ルールに合わせて変更できます。
Display and Event Log
Write CSV event log
日本語:CSVイベントログを書き込む
有効にすると、初期化、ロック、リセット、クールダウン開始・終了、ポジション決済、保留注文削除などのイベントをCSVファイルに記録します。
Show status panel on chart
日本語:チャート上に状態パネルを表示
有効にすると、現在の監視状況と保護状態をチャート上に表示します。
Status panel text size
日本語:状態パネルの文字サイズ
チャート上に表示する状態パネルの文字サイズを変更します。チャートの解像度や表示倍率に合わせて調整してください。
9. 活用例
例1:手動トレードの1日回数を管理する
「1日に5回まで」と決めている場合の例です。
Daily trade limit: 5 Losing streak limit: 0 または使用しない値 Minimum entry gap: 0 または使用しない値 Loss cooldown: 0 Symbols to monitor: Current chart Magic scope: 0
取引回数を中心に管理したい場合に適しています。保護状態後に何を行うかは、Protection Actionsで選択してください。
例2:3連敗後に30分休止する
連敗直後の取引を避け、相場や自身の判断を見直す時間を作りたい場合の例です。
Losing streak limit: 3 Loss cooldown: 30 minutes Close new positions: false Delete new pending orders: true Delete existing pending orders: false Magic scope: 0
保護状態になった後に追加した保留注文だけを削除する、慎重な設定です。
例3:短時間の連続エントリーを抑える
スキャルピングなどで、感情的な連続エントリーを避けたい場合の例です。
Minimum entry gap: 10 minutes Loss cooldown: 15 minutes Magic scope: 0
10分未満の連続エントリーを検出した場合に保護状態となり、15分間のクールダウンを開始します。
例4:特定のEAだけを監視する
複数のEAを使用しており、特定のMagic Numberを持つEAだけに取引上限を設定したい場合の例です。
Symbols to monitor: All symbols Magic scope: 12345 Daily trade limit: 10
この場合、Magic Numberが12345の取引だけが監視対象になります。手動取引や他のMagic NumberのEA取引は対象外です。
10. 状態保存・日次リセット・CSVログ
状態保存
Overtrading Stopper MT5 は、当日のロック状態と損失後クールダウンの終了時刻を保存します。
そのため、次のような場合でも保護状態を復元できます。
- EAをチャートから外して、再度装着した場合
- MT5を再起動した場合
- チャートを閉じて、再度開いた場合
保存された状態は、同じ口座・監視対象範囲・Magic Numberの設定に対応して復元されます。
日次リセット
Daily reset hourで設定したブローカーサーバー時刻になると、当日の取引回数、連敗回数、ロック状態はリセットされます。
翌日の取引ルールを新しい状態で開始したい場合に使用します。
CSVイベントログ
CSVログを有効にした場合、以下のようなイベントが記録されます。
- EAの初期化
- 保存済み保護状態の復元
- 日次リセット
- 保護状態への移行
- 損失後クールダウンの開始と終了
- 新規ポジションの決済
- 保留注文の削除
- 注文削除に失敗した場合の結果
ログファイルは、MT5データフォルダ内の次の場所に保存されます。
MQL5\Files\OvertradingStopperMT5_log.csv
ログは、設定の見直し、デモテストの確認、サポート依頼時の状況確認に役立ちます。
11. 注意事項・動作条件
- 初めて使用する際は、必ずデモ口座で動作確認してください。
- EAによる保護操作を利用する間は、MT5またはVPSを稼働させてください。
- MT5のAlgo Tradingを有効にしてください。
- 通信断、ブローカーの取引停止時間、銘柄の取引条件などにより、決済や保留注文削除が直ちに完了しない場合があります。
- 手動注文は発注された後に検出されます。注文画面そのものを事前にロックする機能ではありません。
- Close new positionsおよび保留注文削除を有効にする前に、対象銘柄とMagic Numberの範囲を確認してください。
- Also delete existing pending ordersを有効にすると、保護状態前から置いていた対象保留注文も削除対象になります。
- 日次リセット時刻は、ブローカーのサーバー時刻です。PCのローカル時刻とは異なる場合があります。
- 実際の取引環境、口座種類、銘柄仕様に合わせて、十分なデモテストを行ってください。
12. サポート・更新
質問、機能に関する確認、問題の報告は、MQL5の商品コメントまたはMQL5内メッセージでお知らせください。
問題を報告する際は、以下の情報があると確認がスムーズです。
- 使用しているMT5のビルド番号
- ブローカー名と口座種類
- 対象銘柄
- 使用している設定値
- 発生日時
- ExpertsタブおよびJournalタブの該当メッセージ
- CSVイベントログの該当行
- 再現手順
今後の更新版は、MQL5 Marketを通じて配布されます。アップデート前には、必要に応じて現在使用中の設定やログをバックアップしてください。
13. 無料デモ版:できること・できないこと
無料デモ版は、MT5のストラテジーテスター内でのみ実行できます。
- 入力パラメータを確認・変更できます。
- ビジュアルモードで、チャート上の状態パネルを確認できます。
無料デモ版は通常チャートでは実行できません。手動注文や保留注文に対する保護操作、ライブチャートでの継続監視、 EA再装着やMT5再起動後の状態復元は、購入後にMarket製品版をデモ口座で確認してください。

