ホーム > ブログ > 自動売買が無効(AutoTrading disabled)でEAが動かない — MT5の10027/10026を完全解決

MT5MQL5エラートラブル解決EA

自動売買が無効(AutoTrading disabled)でEAが動かない — MT5の10027/10026を完全解決

公開日: 2026-07-07読了目安: 約2分
本記事は公開日時点の情報です。EAの実績数値(PF・DD・年率)は運用や再検証で変動するため、最新値は各EAページでご確認ください。 最新のEA実績を見る

「自動売買が無効」でEAが動かない(MT5)

EAをチャートにセットしたのに何時間待っても1回もエントリーしない——このとき真っ先に疑うべきなのが「自動売買(アルゴ取引)の無効化」です。エラーらしいエラーが出ずに沈黙するのが特徴で、EAが動かない原因としては圧倒的な第1位。しかもMT5の売買許可は4層構造になっており、どれか1つでもOFFだと発注は通りません。

この記事では、MT5でEAを使う人と、MQL5でEAを書く人の両方に向けて、関連する2つのリターンコード 10027(TRADE_RETCODE_CLIENT_DISABLES_AT)10026(TRADE_RETCODE_SERVER_DISABLES_AT) の意味、4層の許可構造、見落としがちな原因、コード側での検出方法までをまとめます。エラーコード全般の一覧は MQL5 / MT5 エラーコード対処法の総合ガイド を参照してください。

この記事は2026年7月時点のMT5(build 4xxx系)を前提にしています。画面名・アイコンの見た目はビルドにより多少異なる場合があります。


10027 と 10026 の違い(クライアント無効 vs サーバー無効)

「自動売買が無効」を表すリターンコードは2つあり、どちら側が止めているかが違います。ここを見分けるだけで対処が半分決まります。

① TRADE_RETCODE_CLIENT_DISABLES_AT = 10027(あなたの端末側でOFF)

クライアント(=あなたのMT5端末)側の設定で自動売買が無効になっている状態です。ツールバーの「アルゴ取引」ボタンがOFF、オプション設定の許可が外れている、などが原因。この場合、注文リクエストはブローカーのサーバーに送られる前に端末内で拒否されます。

意味: クライアントターミナルで自動売買が無効(AutoTrading disabled by client)
定数: TRADE_RETCODE_CLIENT_DISABLES_AT
値  : 10027

Experts(エキスパート)タブには次のようなログが出ます。

2026.07.07 09:15:32.441 EA_NAME (XAUUSD,H1) OrderSend failed 10027
2026.07.07 09:15:32.441 EA_NAME (XAUUSD,H1) CTrade::OrderSend: ... [autotrading disabled by client]

対処は自分のMT5の設定を直すだけ。次章の4層をすべてONにすれば解決します。

② TRADE_RETCODE_SERVER_DISABLES_AT = 10026(ブローカー側でOFF)

サーバー(=ブローカー)側がこの口座の自動売買を禁止している状態です。端末の設定をいくら見直しても直りません。一部のボーナス口座・セント口座・コンテスト口座などで「EA利用不可」の規約になっているケース、規約違反等でブローカーが口座単位でアルゴ取引を止めているケースが該当します。

意味: サーバー側で自動売買が無効(AutoTrading disabled by server)
定数: TRADE_RETCODE_SERVER_DISABLES_AT
値  : 10026

対処はブローカーへの確認一択。口座タイプがEA対応か(対応口座への変更・新規開設が必要か)をサポートに問い合わせてください。

コード定数止めている側対処
10027TRADE_RETCODE_CLIENT_DISABLES_AT自分のMT5端末端末の4層許可をON(本記事で解決)
10026TRADE_RETCODE_SERVER_DISABLES_ATブローカーのサーバーブローカーに口座のEA可否を確認

MT5の売買許可は4層構造 — 全部ONで初めて動く

MT5では、EAが発注できるまでに4つの独立したスイッチがあります。1つでもOFFなら発注は通りません。「昨日まで動いていたのに」というときも、この4層のどれかが落ちています。

第1層: ツールバーの「アルゴ取引」ボタン(端末全体)

MT5上部ツールバーの 「アルゴ取引」ボタン。ONだと緑の再生マーク(▶)、OFFだと赤い停止マークで表示されます。ショートカットは Ctrl+E(気づかずに押してOFFにしてしまう事故が意外と多い)。ここがOFFだと全チャート・全EAの発注が一括で止まり、10027になります。

第2層: オプション設定の「アルゴリズム取引を許可」

ツール → オプション → エキスパートアドバイザ タブの「アルゴリズム取引を許可する」チェック。第1層のボタンの土台となる設定で、ここが外れているとボタンをONにできない/しても発注されません。

同じタブには「〜のときアルゴリズム取引を無効にする」系のチェック(口座の切り替え時/プロファイルの切り替え時/チャートの銘柄・期間変更時)もあります。ここにチェックが入っていると、口座を切り替えた瞬間などに第1層のボタンが勝手にOFFへ戻ります。「たまに勝手に止まる」の正体は大抵これです。

第3層: チャートごとのEA設定「アルゴ取引を許可」

EAをチャートに挿入するときのダイアログ(またはチャート上のEA名を右クリック→設定)の 「全般(Common)」タブ → 「アルゴ取引を許可」 チェック。これはそのチャートのそのEAだけに効くスイッチです。ここが外れていると、他のEAは動くのにこのEAだけ動かない、という状態になります(この場合 MQLInfoInteger(MQL_TRADE_ALLOWED) が false になります)。

第4層: チャート右上のEAアイコンの状態

EAが正しくロードされると、**チャート右上にEA名と小さなアイコン(帽子マーク)**が表示されます。

  • カラー(青系)の帽子 = EAは稼働中で売買可能
  • グレーの帽子/取り消し表示 = EAはロードされているが売買不可(上の1〜3層のどれかがOFF)
  • EA名自体が表示されていない = そもそもEAがチャートに載っていない(挿入失敗・削除済み)

アイコンは「結果の表示」であって直接操作するスイッチではありませんが、一目で状態を確認できる最速のチェックポイントです。ビルドによって表現は多少異なります。

場所影響範囲MQL5での検出
① アルゴ取引ボタンツールバー(Ctrl+E)端末全体TERMINAL_TRADE_ALLOWED
② オプションの許可ツール→オプション→エキスパートアドバイザ端末全体TERMINAL_TRADE_ALLOWED
③ チャート毎の許可EA設定→全般タブそのチャートのEAのみMQL_TRADE_ALLOWED
④ EAアイコンチャート右上状態表示—(①〜③の結果)

30秒トリアージ(この順番で見る)

  1. ツールバーの「アルゴ取引」ボタンは緑(▶)か? → 赤ならクリックしてON(Ctrl+E)
  2. チャート右上にEA名+カラーの帽子アイコンが出ているか? → グレーなら次へ、名前ごと無いならEAを挿入し直す
  3. EA設定 → 全般タブ →「アルゴ取引を許可」にチェックが入っているか? → 外れていたらチェックしてOK
  4. ツール → オプション → エキスパートアドバイザ →「アルゴリズム取引を許可する」は有効か? → 「口座切替時に無効にする」系のチェックも確認
  5. 口座情報を確認 — インベスター(閲覧専用)パスワードでログインしていないか? → 取引パスワードでログインし直す
  6. 1〜5が全部OKなのに10026が出る → ブローカーに「この口座でEAは使えるか」を確認

ほとんどのケースは手順1〜3で解決します。


見落としがちな原因5選

① インベスターパスワードでログインしている(閲覧専用)

MT5の口座には取引用パスワードインベスターパスワード(閲覧専用)の2種類があります。インベスターパスワードでログインすると手動・自動を問わず一切の発注が不可能で、アルゴ取引ボタンを押しても売買できません。他人に口座を見せた後や、パスワードマネージャーが古い方を記憶していた場合に起きがちです。MQL5からは AccountInfoInteger(ACCOUNT_TRADE_ALLOWED) が false になるので判別できます。取引パスワードで再ログインしてください。

② ブローカーがその口座タイプでEAを禁止している(10026)

一部のセント口座・ボーナス付き口座・コンテスト口座は規約でEA利用不可になっていることがあります。この場合サーバー側が拒否するため 10026 が返り、端末側では直せません。口座開設時の規約を確認し、必要ならEA対応の口座タイプへ変更します。

③ 端末の再起動・アップデート・口座切替でボタンが戻る

MT5のアップデート適用後や、オプションの「口座の切り替え時にアルゴリズム取引を無効にする」等が有効な環境では、アルゴ取引ボタンがOFFに戻ることがあります。「先週まで動いていたのに、いつの間にか止まっていた」パターンの典型です。再起動・切替のたびにボタンの色を確認する習慣をつけるか、オプションの自動無効化チェックを外してください。

④ VPSでの自動起動時に自動売買がOFFのまま

VPS運用では「Windows再起動 → MT5自動起動」まで組んでいても、起動したMT5のアルゴ取引がOFFのままというケースがあります。MT5は起動時に /config で設定ファイル(iniファイル)を渡す仕組みがあり、[Experts] セクションで自動売買の許可(AllowLiveTrading)やEAの自動アタッチを指定できます。自動起動を組む場合はこの起動時設定まで含めて構成し、再起動後に必ずチャート右上のアイコンがカラーで表示されているかをリモートで確認してください。VPSは「無人で動かすため」の環境なので、この確認を怠ると数日〜数週間の機会損失になります。

⑤ デモ口座と本番口座の取り違え

デモではEAが動いているのに本番で動かない(またはその逆)という場合、MT5が今どちらの口座にログインしているかを確認してください。オプションの「口座切替時にアルゴ取引を無効化」が効いてボタンが落ちているケース、本番口座側だけインベスターパスワードでログインしていたケースが典型です。ナビゲーターの口座番号と、ターミナル右下の接続表示を見れば10秒で確認できます。


MQL5でこの状態を検出する(EA開発者向け)

「静かに止まる」のが10027/10026の嫌なところです。EA側でどの層がブロックしているかをログとアラートで自己申告させると、サポートコストが激減します。使う関数は次の4つです。

関数何を見ているか
TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)端末全体のアルゴ取引許可(ボタン+オプション)
MQLInfoInteger(MQL_TRADE_ALLOWED)このEA(このチャート)の売買許可
AccountInfoInteger(ACCOUNT_TRADE_ALLOWED)口座として売買可能か(インベスターログインで false)
AccountInfoInteger(ACCOUNT_TRADE_EXPERT)口座としてEA売買が許可されているか(サーバー側設定)
// どの層が自動売買をブロックしているかを特定して出力する
bool CheckAlgoTradingAllowed()
{
   bool ok = true;

   if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
   {
      Print("BLOCKED [Terminal]: AutoTrading button is OFF (toolbar / Ctrl+E) or disabled in Options");
      ok = false;
   }
   if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
   {
      Print("BLOCKED [Chart/EA]: 'Allow Algo Trading' is unchecked in this EA's Common tab");
      ok = false;
   }
   if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
   {
      Print("BLOCKED [Account]: trading not allowed - investor (read-only) login?");
      ok = false;
   }
   if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
   {
      Print("BLOCKED [Server]: broker disabled EA trading for this account (retcode 10026)");
      ok = false;
   }
   return ok;
}

運用のポイント

OnInit で1回チェックして警告し、OnTick では止めないのが定石です。

int OnInit()
{
   if(!CheckAlgoTradingAllowed())
      Alert("EA loaded, but algo trading is blocked. See Experts log for the reason.");
   return INIT_SUCCEEDED;   // INIT_FAILED にしない
}

ここで INIT_FAILED にしてしまうと、ユーザーがボタンをONにした後にEAを挿入し直す手間が発生します。ロード自体は成功させておけば、ユーザーがアルゴ取引ボタンをONにした瞬間から売買が始まります。OnTick側では、状態が変わったときだけ1回ログを出す(毎ティックPrintしない)実装にすると、Expertsタブが流れずに済みます。

また、OrderSend() の retcode で 10027 / 10026 を受けたときに定数名入りでログを出しておくと、事後調査が容易になります。

if(res.retcode == TRADE_RETCODE_CLIENT_DISABLES_AT)   // 10027
   Print("Order rejected: AutoTrading disabled on YOUR terminal. Turn ON the Algo Trading button.");
else if(res.retcode == TRADE_RETCODE_SERVER_DISABLES_AT) // 10026
   Print("Order rejected: broker disabled autotrading for this account. Contact your broker.");

FXEA365で配布しているEAは、チャート上のダッシュボードに自動売買のON/OFF状態を常時表示する仕様のため、この「静かに止まっている」状態に画面を見た瞬間に気づけます。


優先度チェックリスト

優先確認対処
🚨 まずアルゴ取引ボタンが赤(OFF)クリックでON(Ctrl+E)
🚨 まずチャート右上のEAアイコンがグレー4層を順に確認
⚠️ 次EA設定・全般タブの「アルゴ取引を許可」チェックを入れて再適用
⚠️ 次オプションの許可+自動無効化チェック許可ON・自動無効化を見直し
✅ 確認インベスターパスワードでログイン取引パスワードで再ログイン
✅ 確認10026(サーバー側拒否)ブローカーに口座のEA可否を確認
🛠 開発EAが沈黙する上記の層別チェックコードを実装

まとめ

  • 「EAが動かない」原因の第1位は自動売買(アルゴ取引)の無効化。エラーで騒がず沈黙するのが特徴。
  • 10027 = 自分の端末側でOFF(自分で直せる)、10026 = ブローカー側でOFF(サポートに確認)。
  • MT5の売買許可は①ツールバーのボタン ②オプション ③チャート毎のEA設定 ④アイコン表示の4層。全部ONで初めて発注が通る。
  • インベスターパスワード・口座切替での自動OFF・VPS再起動後のOFF戻りが三大見落とし。
  • EA開発者は TERMINAL_TRADE_ALLOWED / MQL_TRADE_ALLOWED / ACCOUNT_TRADE_ALLOWED / ACCOUNT_TRADE_EXPERTどの層が止めているかを自己申告させる。

エラーコード全般は MQL5 / MT5 エラーコード対処法の総合ガイド を、状態を常時表示するダッシュボード搭載の無料EAは EA一覧 を参照してください。


FAQ

Q: アルゴ取引ボタンをONにしたのにEAがエントリーしません。

ボタン(第1層)以外の層を確認してください。特に多いのがチャート毎のEA設定(全般タブ)の「アルゴ取引を許可」の外れです。チャート右上のEAアイコンがカラー表示になっているかで最終確認できます。アイコンがカラーなのにエントリーしない場合は、自動売買の問題ではなくEAのエントリー条件が満たされていないだけの可能性が高いです(Expertsタブのログを確認)。

Q: 10027 と 10026 はどう違いますか?

10027(TRADE_RETCODE_CLIENT_DISABLES_AT)はあなたのMT5端末が自動売買を無効にしている状態で、端末の設定変更で直せます。10026(TRADE_RETCODE_SERVER_DISABLES_AT)はブローカーのサーバーが口座単位で自動売買を禁止している状態で、端末側では直せません。ブローカーに口座タイプのEA可否を確認してください。

Q: 昨日まで動いていたのに、勝手に自動売買がOFFになっていました。

オプション(ツール → オプション → エキスパートアドバイザ)の「口座の切り替え時/プロファイルの切り替え時にアルゴリズム取引を無効にする」系のチェックが原因の可能性が高いです。また、MT5のアップデート後にボタンがOFF状態で起動することもあります。VPS運用なら再起動後の確認を必ずルーチンに入れてください。

Q: 手動注文はできるのにEAだけ発注できません。

手動が通るなら口座自体は生きています。チャート毎のEA設定(全般タブ)ツールバーのアルゴ取引ボタンがOFFです。手動売買は「アルゴ取引」の許可と無関係に通るため、この症状は自動売買レイヤーの無効化を強く示唆します。それでも直らず10026が出る場合は、ブローカーが口座のEA利用を制限しています。

📧 5日間メール講座(無料)

FX自動売買の本質、バックテストの正しい見方、ブローカー選びのコツを毎日1通お届けします。

※ プライバシーは厳守。配信解除はいつでも可能です。