EAを運用していると、一度は経験するのがこのトラブルです。
「昨日まで動いていたのに、気付いたらEAが止まっていた。」
しかも厄介なのは、エラーが出ていないことも多いという点です。
チャートは開いている。
MT5も起動している。
VPSも落ちていない。
それなのにエントリーしない。
EA初心者の方から相談を受けると、実はかなり高い確率でこの問題に当たります。
以前記事にした対処法はこちら。
そして多くの場合、原因はロジックではありません。
設定ミスや環境要因です。
今回は、GENESIS・凜(RIN)・AXISを開発しながら実際に遭遇したトラブルも交えつつ、MT5のEAが止まる原因をまとめて解説します。
「EAが止まった」と「エントリーしなかった」は違う
まず最初に重要なのがここです。
実際には止まっていないケースがかなりあります。
例えば、
- エントリー条件が成立していない
- スプレッド条件で見送り
- 時間外
- 曜日フィルター
- ニュース回避
こうした理由で「何もしていないだけ」の場合があります。
特にGENESISは時間帯やATR条件を使っているため、
「今日動いてない」
と思って確認すると、単純に条件未達というケースがあります。
まずは本当にEAが停止しているのかを確認しましょう。
自動売買ボタンがOFFになっている
初心者で最も多い原因です。
MT5上部にある「Algo Trading」
これがOFFになるとEAは動きません。
意外ですが、
- MT5アップデート
- 設定変更
- VPS再起動
などのタイミングでOFFになることがあります。
EA-Labでも開発初期に何度もやりました。
数時間原因を探して、「自動売買OFFだった」ということも普通にあります。
まず最初に確認するべきポイントです。
EA設定の「自動売買を許可」が外れている
チャートにEAを入れた時の設定画面です。
「全般」タブにある「自動売買を許可」ここが外れていると動きません。
特に、
- EAを入れ直した
- 設定ファイルを変更した
- 別チャートへ移動した
時に起きやすいです。
VPSが止まっている
VPSについておすすめなどを紹介した記事はこちら。
これも非常に多いです。
特に初心者の方は、「VPS契約したから大丈夫」と思いがちです。
ですが実際には、
- VPS再起動
- Windowsアップデート
- メモリ不足
- セッション切断
などで停止することがあります。
EA-Labでもフォワードテスト中にVPS再起動が入り、一時的にEAが停止したことがあります。
重要なのは、「VPSが契約されているか」ではなく、「今も正常に稼働しているか」です。
MT5自体がフリーズしている
これも意外とあります。
特に、
- チャートを大量に開く
- インジケータを大量表示
- 複数EA運用
- スペック不足
こうした環境だと発生しやすいです。
実際、GENESIS・凜・AXISを同時検証していた頃は、検証用EAまで含めるとかなりの数を起動していました。
その結果、
CPU使用率上昇
↓
MT5重くなる
↓
フリーズ
ということがありました。
不要チャートは定期的に整理した方が安全です。
通貨ペアや時間足が違う
これも初心者あるあるです。
例えば、GENESISはGBPUSD M15想定です。
それを、
- GBPUSD M5
- EURUSD M15
- USDJPY M15
などで動かしている。
当然ですが正常な動作は保証されません。
EAは想定環境で設計されています。
まずは開発者指定の条件を確認しましょう。
スプレッドフィルターに引っかかっている
意外と見落とされる原因です。
EAによっては、「スプレッドが広い時はエントリーしない」という制御があります。
特に、
- 早朝
- 指標前後
- 月曜日開始直後
はスプレッドが広がります。
凜の開発でも、スプレッド条件を厳しく設定すると、「全然エントリーしない」という状況が発生しました。
実際には停止ではなく、安全装置が働いていただけです。
Magic Numberの競合
複数EA運用で起きやすい問題です。
Magic Numberとは、「EAごとの識別番号」です。
これが重複すると、
- 別EAのポジションを認識
- 決済対象を誤認識
- 管理エラー
が発生します。
EA-LabではGENESIS・凜・AXISすべて別番号にしています。
複数EA運用時は必ず確認しましょう。
複数同時稼働させる方法にこのあたりを詳しくまとめています。
ブローカー側の取引制限
これもあります。
例えば、
- 最小ロット不足
- 証拠金不足
- 取引時間外
- シンボル名違い
など。
MT5上では正常に見えても、ブローカー側で注文拒否されているケースがあります。
この場合は、
「エキスパート」
「ジャーナル」
を確認すると原因が出ていることが多いです。
EAの設定ミス
実際にはこれがかなり多いです。
例えば、
- ロット0
- 取引曜日OFF
- 取引時間設定ミス
- リスク設定異常
など。
開発者側からすると、「それは動かない」という設定でも、利用者側からすると気付かないことがあります。
GENESISやAXISのテスト中も、設定値を変えたまま忘れていたことは何度もありました。
まずは初期設定へ戻して確認するのがおすすめです。
EA開発者が最初に確認すること
EAが止まった時、開発者はまずロジックを疑いません。
最初に確認するのは、
- 自動売買ONか
- チャート環境
- VPS状態
- ジャーナルログ
- 証拠金状況
です。
実際、ロジックのバグより設定ミスの方が圧倒的に多いからです。
GENESIS・凜・AXIS開発でも、「コードがおかしいと思ったら設定ミスだった」という経験は何度もあります。
ジャーナルログを見る習慣を付ける
初心者の方に最もおすすめしたいのがこれです。
MT5下部の
- エキスパート
- ジャーナル
を見る習慣。
ここには、
- 注文エラー
- 証拠金不足
- 通信エラー
- 取引拒否
などが記録されています。
EAが止まった原因の多くはここで見つかります。
開発者はまずここを確認します。
「動いていない」に早く気付く仕組みを作る
実は一番怖いのは、「1週間止まっていた」です。
そのため、
- スマホMT5で確認
- VPS監視
- 毎日1回ログ確認
を習慣化するとかなり防げます。
EA運用は放置ではなく、「管理頻度を減らす運用」です。
完全放置ではありません。
VPSで稼働させる場合も完全放置ではありませんがメリットはたくさんあります。その内容についてまとめた記事もご参照ください。
まとめ
MT5のEAが止まる原因は、
- 自動売買OFF
- VPS停止
- MT5フリーズ
- 設定ミス
- スプレッド条件
- Magic Number競合
- 証拠金不足
などが大半です。
実際にはロジックより環境要因の方が圧倒的に多い。
GENESIS・凜・AXISを開発してきた中でも、「コードの問題だと思ったら設定ミスだった」というケースは何度もありました。
EAが止まった時は焦らず、「環境 → 設定 → ログ → ロジック」
の順で確認することをおすすめします。
その習慣が付くだけで、多くのトラブルは防げるようになります。