MT4のEAが動かない時の即チェック表|原因別の直し方と作り直す判断

MT4にEAを入れたのに、まったく注文しない。チャート右上にはEA名が出ているのに、エントリーも決済も起きない。そんな時は、EAの中身が壊れているのか、MT4の設定なのか、口座やVPS側の問題なのかが分からず不安になりますよね。
MT4のEAが動かない時は、思いつきでパラメータを変えるよりも、最初に見る順番を決める方が早いです。この記事では、冒頭の即チェック表で止まりやすい原因を切り分けたうえで、自動売買許可、Experts配置、ログ、口座、証拠金、VPSまで原因別に整理します。
- MT4のEAが動かない時に最初に見る順番が分かる
- 自動売買許可・配置・ログ・口座を原因別に切り分けられる
- VPSや証拠金など環境側の停止要因も確認できる
- 直しても再発するEAを作り直す判断基準が分かる
| 症状 | 最初に見る場所 | 次の対処 |
|---|---|---|
| EA名は出るが注文しない | 自動売買ボタンとEA単体の許可 | 許可後にログと条件待ちを確認 |
| EAが一覧に出ない | MQL4内のExpertsフォルダ | 配置後にMT4再起動または更新 |
| エラーが出て止まる | ExpertsとJournalログ | ロット・証拠金・取引権限を確認 |
| 時間が経つと止まる | VPS・回線・PCスリープ | 常時稼働環境と再起動後の復旧を確認 |
| 設定変更後に動かない | パラメータと初期値 | 一項目ずつ戻してデモ口座で検証 |
MT4のEAが動かない時の即チェック

自動売買許可を先に見る
MT4のEAが動かない時に、最初に確認したいのは画面上部の自動売買ボタンです。ここがオフのままだと、EAを正しくチャートに入れていても注文は出ません。EAのロジックが条件を満たしていても、MT4全体が「EAやスクリプトに取引操作をさせない」状態になっているためです。
MT4公式ヘルプでも、Expert Advisors設定の「Allow automated trading」はEAやスクリプトによる取引操作を許可・禁止する項目として説明されています。MT4を再起動した後、口座を切り替えた後、プロファイルやチャートの時間足を変えた後に、自動売買が止まる設定になっていないかも見ておきましょう。詳しくはMetaTrader 4のExpert Advisors設定でも確認できます。
| 確認箇所 | 見るポイント |
|---|---|
| ツールバー | 自動売買ボタンがオンか |
| ツール設定 | Expert Advisorsタブで自動売買が許可されているか |
| 口座変更後 | 保護設定で自動売買が停止していないか |
| 時間足変更後 | チャート変更でEA取引が禁止されていないか |
ただし、自動売買ボタンをオンにした直後に注文が出ないからといって、すぐ異常と決めつける必要はありません。自動売買許可は「注文を出してよい状態」にするだけで、実際に注文するかどうかはEA側の条件次第です。まず取引を許可できる状態にして、その後にログ、通貨ペア、時間足、スプレッド、証拠金を確認する流れにすると混乱しにくいです。
確認後は、ボタンの状態を変えた時刻をざっくり控えておくとログを追いやすくなります。何時にオンにしたか、口座を切り替えたか、時間足を変えたかが分かるだけでも、次のログ確認で原因を見つけやすいです。
EA単体の許可を確認する
MT4全体の自動売買がオンでも、EA単体の設定で取引が許可されていなければ動きません。EAをチャートへ適用した時のプロパティ画面や、チャート右上のEA名から開く設定で、ライブ取引や自動売買に相当する項目が有効かを確認します。全体設定と個別設定は別物として見るのが大事です。
外部認証、ニュース取得、独自ライブラリを使うEAでは、DLLやWebRequestの許可が必要なこともあります。ただし、配布元が分からないEAに対して無条件にDLLを許可するのは避けた方がいいです。DLLは外部プログラムとの連携を広げる設定なので、何のために必要なのか、配布元の説明があるかを確認してから有効化しましょう。
- EAのプロパティで自動売買が許可されているか
- 必要な場合だけDLLやWebRequestを許可しているか
- 設定変更後にOKを押して反映しているか
- テンプレート適用で古い設定に戻っていないか
よくあるのは、最初にEAを入れた時は動いていたのに、テンプレートを保存して別チャートへ適用した後に許可状態やパラメータが戻るケースです。テンプレートは見た目だけでなく、インジケーターやEAの設定も含めて保存されることがあります。複数のEAを使う人ほど、EAごとの許可とパラメータを個別に見直す必要があります。
同じEAを複数チャートで動かす場合は、片方だけ許可が外れていることもあります。全体ボタンがオンだから大丈夫と判断せず、実際に注文してほしいチャートごとにEAプロパティを開き、対象EAの設定を見直すのが確実です。
Experts配置と再起動を見る
EAがナビゲーターに表示されない、チャートへドラッグできない、入れたはずなのに一覧に出てこない場合は、ファイルの置き場所を確認します。MT4のEAは、基本的にデータフォルダ内のMQL4、その中のExpertsフォルダへ配置します。Program Files側や別ブローカーのフォルダへ置いてしまうと、MT4がEAとして認識しないことがあります。
確認する時は、Windowsのエクスプローラーから勘で探すよりも、MT4のメニューからデータフォルダを開くのが確実です。複数のMT4を入れている場合、見た目は同じでも別のデータフォルダを参照していることがあります。配置後はMT4を再起動するか、ナビゲーター上で更新して、EA名が表示されるかを見ます。
- MT4からデータフォルダを開く
- MQL4のExpertsへEAファイルを置く
- MT4を再起動またはナビゲーターを更新する
- チャートへEAを適用して右上表示を確認する
EAファイルの拡張子も見落としやすいです。稼働用はex4、ソースコードはmq4という形が一般的で、mq4だけを置いてもコンパイルされていなければ実行できない場合があります。導入手順そのものに不安がある場合は、MT4にEAをインストールする方法で、Expertsフォルダへの配置から稼働確認までを先に見直すと分かりやすいです。
ファイル名が似ているEAにも注意してください。古いバージョンと新しいバージョンを同じフォルダに置いていると、どちらをチャートへ入れたのか分からなくなることがあります。更新したEAを使う時は、ファイル名、更新日時、ナビゲーター上の表示名を合わせて確認しましょう。
表示名まで確認すると取り違えを防げます。
通貨ペアと時間足を合わせる
EAがチャートに入っているのにエントリーしない時は、対応している通貨ペアと時間足を確認します。どの通貨ペアでも動くEAもありますが、USDJPY専用、EURUSD専用、5分足専用、15分足推奨のように、前提条件が決まっているEAもあります。指定と違うチャートに入れていると、売買条件を満たさず、動いていないように見えることがあります。
ブローカーによっては、通貨ペア名にサフィックスが付くこともあります。USDJPYではなくUSDJPY.やUSDJPYmicroのような表示になる口座です。EAが内部で通貨ペア名を厳密に見ている場合、この違いだけで条件が合わないことがあります。配布元の説明に、対応シンボルやサフィックス対応の記載がないか確認しましょう。
| 項目 | 確認内容 |
|---|---|
| 通貨ペア | EAの対応銘柄と一致しているか |
| 時間足 | 推奨足や専用足で動かしているか |
| 取引時間 | EAの稼働時間外ではないか |
| サフィックス | 口座固有の銘柄名に対応しているか |
また、EAはチャートに入れた瞬間に必ず注文するものではありません。トレンドフォロー型やフィルターが多いEAでは、数時間から数日待っても条件が出ないことがあります。ログにエラーがなく、右上表示も正常で、通貨ペアや時間足も合っているなら、「動いていない」のではなく「条件待ち」の可能性もあります。
さらに、ブローカーのサーバー時間と日本時間のズレも見ておくと安心です。EAの稼働時間を日本時間の感覚で設定していると、実際のサーバー時間では取引時間外になっていることがあります。時間指定型のEAでは、ここだけで止まって見えることがあります。
笑顔マークとログを読む
MT4のEAが動かない時は、チャート右上の表示と、ターミナル下部のExperts・Journalログをセットで見ます。右上にEA名と笑顔マークのような表示があれば、少なくともEAがチャートに適用され、自動売買許可も大きくは外れていない可能性があります。逆にEA名がない、顔マークが正常ではない、L表示になる場合は、適用や許可の問題を疑います。
ログでは、EAを入れた直後、自動売買ボタンをオンにした直後、パラメータを変更した直後の時刻を見ます。ExpertsにはEA側のメッセージ、JournalにはMT4全体や接続に関する記録が出ます。注文拒否、取引不可、無効なロット、証拠金不足、接続切れ、ログイン失敗などが見えれば、次に確認する場所をかなり絞れます。
- ExpertsにEA起動時のメッセージが出ているか
- Journalに接続エラーやログインエラーがないか
- 無効なロットや証拠金不足の記録がないか
- EAを入れ直した時にログが増えるか
ログを読む時は、エラーコードだけを拾うよりも、その前後の文脈を見た方が原因に近づけます。たとえば「invalid trade volume」ならロットや最小取引単位、「not enough money」なら証拠金やロット、「trade disabled」なら口座権限やブローカー側の制限を疑います。画面の雰囲気ではなく、ログを根拠に一つずつ切り分けるのが安全です。
ログを控える時は、最後の一行だけでなく、直前の数行も一緒に見ます。EAが初期化に失敗してから注文エラーが出ているのか、通信が切れてから注文できていないのかで、直す場所が変わるためです。
MT4のEAが動かない原因別の対処

口座と取引権限を確認する
EAの設定が正しく見えても、口座が取引できる状態でなければ注文は通りません。MT4にログインできていない、サーバーが違う、投資家パスワードでログインしている、取引不可の口座に接続している、といった状態では、チャートが動いているように見えてもEAは注文できないことがあります。
右下の通信状態、ナビゲーター内の口座番号、ターミナルの取引タブ、口座履歴を確認しましょう。ログイン情報を入れ直す時は、口座番号、パスワード、サーバー名の3つが一致している必要があります。デモ口座からリアル口座へ切り替えた直後や、VPSへMT4環境を移した直後は、サーバー選択を間違えやすいです。
| 状態 | 起きやすい症状 |
|---|---|
| 未ログイン | 価格更新や注文処理が不安定になる |
| 投資家パスワード | 閲覧はできても取引できない |
| サーバー違い | ログイン失敗や取引不可になる |
| 口座制限 | EAによる注文が拒否される |
デモ口座では動くのにリアル口座で動かない場合も、EAの中身より先に口座条件の差を見ます。レバレッジ、最小ロット、取引可能銘柄、両建て可否、スキャルピング制限などが違うだけで、同じEAでも挙動が変わることがあります。ログに取引不可の意味が出ているなら、MT4だけでなくブローカー側の条件確認も必要です。
特にリアル口座へ移した直後は、残高や証拠金だけでなく、口座タイプも確認してください。スタンダード口座、マイクロ口座、プロ口座などで最小ロットや銘柄名が違う場合、デモで通った注文条件がそのまま使えないことがあります。
ここを見落とすと、同じEAなのに口座を変えた瞬間だけ動かないように見えます。
ロットと証拠金を見直す
EAが注文しようとしているのに失敗する場合、ロットと証拠金の設定を確認します。ロットが大きすぎる、最小ロットより小さい、ロット刻みに合っていない、証拠金が足りない、最大ポジション数に達している、といった原因で注文が拒否されることがあります。これはEAが壊れているのではなく、口座条件に合わない注文を出している状態です。
たとえば0.01ロットからの口座で0.001を指定している、0.1ロット刻みの口座で0.03を指定している、残高に対して大きすぎるロットを入れている場合は、エントリー条件を満たしていても注文できません。まずはEAのロット設定を最小値に近づけ、デモ口座で注文が通るか確認します。
- 現在の設定ロットが口座の最小ロット以上か
- ロット刻みに合った数値になっているか
- 必要証拠金に対して余裕があるか
- 最大ポジション数や発注数の制限に達していないか
資金管理を見直す時は、EAのロジックだけでなく、口座残高に対してどれくらいのロットが現実的かも合わせて確認します。無理なロットを入れると、注文が通らないだけでなく、動いた後のドローダウンも大きくなります。考え方を整理したい場合は、FX自動売買の資金管理とロット計算も合わせて確認しておくと、EA側の設定を見直しやすいです。
ナンピン系や複数ポジションを持つEAでは、最初の注文だけでなく、追加注文まで含めた必要証拠金を見る必要があります。1回目は通っても、2回目以降の追加注文で止まる場合は、ロット倍率や最大ポジション数が口座残高に対して重すぎる可能性があります。
安全側で見るなら、想定される最大ポジション数まで持った時でも余裕が残るロットに落としてから検証します。注文が通るかだけでなく、動いた後に耐えられるかまで確認するのが実運用では大切です。
パラメータを初期値に戻す
設定変更後にMT4のEAが動かなくなった場合は、いったんパラメータを初期値や推奨値へ戻します。ロット、稼働時間、最大スプレッド、マジックナンバー、売買方向、エントリー条件、フィルター条件をまとめて変えると、どの変更が原因なのか分からなくなります。EAは条件がすべてそろった時だけ動くため、一つのフィルターを厳しくしただけで何日も注文しないことがあります。
検証する時は、一度に複数項目を変えず、ロットだけ、稼働時間だけ、スプレッド上限だけという形で一項目ずつ確認します。まず推奨設定へ戻し、デモ口座で起動するかを見てから、本番口座へ移すのが安全です。バックテストで最適化した数値も、実運用ではスプレッドや約定、取引時間、ブローカー条件が違うため、そのまま使うと注文が出にくくなることがあります。

もし毎回どこかを直しても同じように止まるなら、パラメータだけでなくEAの設計自体が複雑すぎる可能性があります。エントリー条件、停止条件、ロット条件、稼働時間、フィルターが散らばっているEAは、原因を追うだけで時間がかかります。自分で運用ルールを説明できないEAなら、直し続けるより、シンプルなルールで作り直した方が早いこともあります。
作り直す時は、まず「どの条件なら入るか」「どの条件なら止めるか」を短い言葉で説明できる状態にするのが出発点です。
設定を直しても同じところで止まるなら
NoCode EA Studioなら、売買条件・停止条件・ロット条件を見える形で整理しながら、MT4・MT5対応のEAロジックを作れます。
まず推奨設定へ戻し、デモ口座で起動を確認します。その後、ロット、稼働時間、スプレッド上限、フィルター条件のように、影響が分かりやすい項目から一つずつ変更します。
VPSと回線を点検する
EAを長時間動かすなら、MT4を入れているPCやVPSの稼働状態も重要です。自宅PCでは、スリープ、Windows更新、回線切断、電源オフ、Wi-Fi不安定、MT4の終了操作などでEAが止まることがあります。チャート上では原因が分からなくても、実際にはMT4が起動していなかった、回線が切れていた、再起動後に自動売買がオフになっていたというケースは珍しくありません。
VPSを使っている場合も、契約していれば絶対に止まらないわけではありません。メンテナンス、リソース不足、ディスク容量不足、複数MT4の起動、リモートデスクトップからのログオフ操作などで不安定になることがあります。EAを複数動かしていると、CPUやメモリの負荷でチャート更新や注文処理が遅くなることもあります。
| 環境 | 確認すること |
|---|---|
| 自宅PC | スリープと自動更新でMT4が止まらないか |
| 回線 | 通信切断や遅延が頻発していないか |
| VPS | CPU・メモリ・ディスク容量に余裕があるか |
| 再起動後 | MT4とEAが自動復旧できるか |
自宅PCで止まりやすいなら、VPSへ移すのは有効な選択肢です。ただし、VPS選びでは価格だけでなく、設置場所、メモリ、CPU、サポート、再起動時の復旧手順も見ます。比較のポイントはFX自動売買のVPS比較で整理しています。EAの設定に問題がない時ほど、稼働環境側を疑う視点が大切です。
再起動後の復旧手順も事前に確認しておきましょう。VPSやPCが戻った後にMT4が自動起動するか、EAがチャートに残っているか、自動売買がオンのままかを見ておくと、停止時間を短くできます。
まとめ
MT4のEAが動かない時は、いきなりEAの中身や相場の難しさを疑うより、まず確認順を固定するのが近道です。自動売買ボタン、EA単体の許可、Expertsフォルダ、通貨ペアと時間足、右上表示、ExpertsとJournalログを見れば、設定ミスや配置ミスの多くは切り分けできます。
それでも原因が見つからない場合は、口座ログイン、取引権限、ロット、証拠金、パラメータ、VPS、回線へ範囲を広げます。EAが注文しない理由は一つとは限らず、自動売買許可はオンでもロットが無効、設定は正しくても取引時間外、EAは起動していてもVPS側でMT4が止まっている、というように複数要因が重なることもあります。
- まずMT4全体とEA単体の自動売買許可を見る
- 次にExperts配置、通貨ペア、時間足、ログを確認する
- 注文エラーが出るなら口座・ロット・証拠金を見直す
- 再発するならパラメータ整理やEAの作り直しも検討する
大事なのは、原因が分からないまま設定を何個も同時に変えないことです。現状を控え、ログを見て、初期値や推奨設定に戻し、一項目ずつ検証する。直しても同じトラブルが再発するなら、運用ルールを見える形に整理して、EAそのものを作り直す判断も現実的です。焦って本番資金で試すより、まずデモ口座で同じ手順を確認する方が安全かなと思います。
一つずつ確認して原因が分かれば、次に同じ症状が出た時も落ち着いて対応できます。MT4のEA運用は、入れて終わりではなく、ログを見て、環境を整え、無理な設定を戻しながら安定させていく作業です。
特に本番口座では、急いで設定を変えるほど損失につながりやすくなります。まずデモで再現し、原因を一つに絞ってから反映しましょう。
