・プログラミング経験はないが、自分のルールでEA(自動売買)を動かしてみたい
・ChatGPTやClaudeにMQL5コードを書かせる具体的な手順と、指示の出し方を知りたい
・AIが作ったEAをそのまま本番で使ってよいのか、リスクと検証方法を知りたい
本記事のテーマ
AIは「EAを書く時間」をゼロに近づけるが、「EAを検証する責任」はトレーダーに残る
<スキャル歴12年の専業_億トレーダーがお届けします>
2026年現在、ChatGPTやClaudeといった生成AIに日本語で指示するだけで、MT5で動くEA(エキスパートアドバイザー)のMQL5コードを書かせることができます。プログラミングの知識がなくても、「ルールを言語化する → AIにコードを書かせる → MetaEditorでコンパイル → バックテスト → デモ運用」という5段階を踏めば、自分のルールで動くEAを手元で試せる時代になりました。本記事では、この手順を実際の指示文(プロンプト)付きで解説し、AIが作ったEAを本番で使う前に必ず確認すべきリスクを整理します。
AIでEAを作るとはどういうことか
EAはMQL5(MT5用)またはMQL4(MT4用)というプログラミング言語で書かれたプログラムです。従来は、この言語を習得するか、開発者に外注するしか自作の道がありませんでした。生成AIの登場でこの前提が変わり、日本語で「こういう条件で買って、こういう条件で決済するEAを書いて」と伝えれば、数十秒でコードが出力されます。私自身、2025年頃から自分のスキャルピングルールをAIにEA化させて検証していますが、コードを書く工程はほぼAI任せで成立しています。
AIでEAを作る際の役割分担
・AIの仕事:MQL5コードの生成、エラーの修正、機能追加の実装
・MT5の仕事:コンパイル、バックテスト、実運用
・AIは「書く」を代替するが、「勝てるルールを考える」「検証する」は代替しない
ここで最初に強調しておきたいのは、AIがコードを書けることと、そのEAが利益を出せることはまったく別だという点です。AIは指示どおりのロジックを実装するだけで、ロジック自体の優劣を判断してくれるわけではありません。EA全般のメリット・デメリットはFXの自動売買(EA)のメリット・デメリット&始め方まとめで整理していますので、EAが初めての方は先にそちらをご覧ください。

AIは「書く」担当。「勝てるか」を決めるのは、あなたのルールです。
なぜMT5(MQL5)を前提にするのか
本記事ではMT4ではなくMT5を前提にします。理由は3つあります。第一に、MQL4は開発元のMetaQuotes社が新規開発を停止しており、MT4の提供を終了する業者が国内外で増えていること。第二に、MQL5の方が言語仕様が整理されており、AIが生成するコードの品質が安定しやすいこと。第三に、MT5のストラテジーテスターはマルチ通貨・リアルティック対応で、バックテストの精度が高いことです。これから新しくEAを作るならMT5一択と考えて差し支えありません。
XMではMT5口座を開設すればEAの稼働が認められており、条件を満たせば無料VPSも利用できます。XMでのEA利用ルールと設定手順はXMで自動売買(EA)は使える?ルール・MT4/MT5設定手順・無料VPSの条件まとめを参照してください。
手順①:ルールを「AIが実装できる形」に言語化する
AIに良いコードを書かせる鍵は、指示の前にルールを曖昧さなく言語化することです。「移動平均線がいい感じに上向いたら買い」ではAIは実装できません。「終値が20EMAを上回り、かつ20EMAが50EMAを上回った足の確定時に買い」というように、数値・条件・タイミングをすべて明示する必要があります。この言語化の作業は、実は自分の手法を客観視する良い訓練にもなります。
言語化すべき7つの要素
・使用インジケーター:例「EMA(20)、EMA(50)、RSI(14)」
・エントリー条件:買い・売りそれぞれの条件を、足の確定基準で記述
・決済条件:利確幅・損切り幅(pips)、または反対シグナルでの決済
・ロット:固定ロット、または口座残高に対する割合
・フィルター:取引時間帯、スプレッド上限、同時保有ポジション数
・禁止事項:ナンピン・マーチンゲールの禁止、指標発表前後の停止など



ルールを言葉にできない手法は、EAにも人間にも再現できません。
手順②:AIへの指示文(プロンプト)の書き方
言語化ができたら、AIに指示します。ChatGPT・Claude・Geminiのいずれでも構いませんが、長いコードの整合性を保つ点ではClaudeが安定しているというのが私の実感です。以下は、実際に使える指示文のひな形です。そのままコピーして、条件の部分を自分のルールに置き換えてください。
あなたはMQL5の熟練プログラマーです。以下の仕様でMT5用のEAを作成してください。
【基本設定】
・通貨ペア:チャートに適用したシンボルを使用
・時間足:チャートの時間足を使用(5分足を想定)
・新しい足の確定時にのみ判定する(ティックごとに判定しない)
【インジケーター】
・EMA(20)、EMA(50)、RSI(14)
【買いエントリー】
・EMA(20) > EMA(50) かつ 前の足の終値がEMA(20)を下から上に抜けた
・RSI(14)が50以上70未満
【売りエントリー】
・買いの逆条件
【決済】
・損切り:エントリー価格から15pips
・利確:エントリー価格から20pips
・同時に保有するポジションは1つまで
【フィルター】
・スプレッドが2.0pips以上のときはエントリーしない
・サーバー時間で 22:00〜02:00 はエントリーしない
【ロット】
・input変数で固定ロットを指定(初期値0.1)
【その他の要件】
・すべてのパラメーターはinput変数として外部から変更可能にする
・マジックナンバーを設定し、他のEAの注文と区別する
・OrderSend失敗時はエラーコードをPrintで出力する
・ナンピン・マーチンゲールは実装しない
・コード全体に日本語のコメントを付けるポイントは、「新しい足の確定時にのみ判定」「ポジション数の上限」「エラー出力」といった、初心者が言い忘れがちな安全装置を仕様に含めることです。これらを省くと、AIはティックごとに何度も注文を出すEAや、エラーを黙って握りつぶすEAを平気で生成します。AIに質問する際の一般的なコツはFXでAIを活用する方法でも解説しています。
手順③:MetaEditorでコンパイルし、エラーをAIに直させる
AIが出力したコードは、MT5に付属するMetaEditorで.mq5ファイルとして保存し、コンパイルします。初回で一発で通ることもあれば、エラーが数件出ることもあります。エラーが出た場合は、慌てずにエラーメッセージをそのままAIに貼り付けて修正を依頼してください。多くの場合、2〜3往復で解消します。
MT5のメニュー「ツール」→「MetaQuotes言語エディタ」(またはF4キー)でMetaEditorを起動します。
「新規作成」→「エキスパートアドバイザー(テンプレート)」で名前を付け、生成された雛形をすべて削除してAIのコードを貼り付けます。
下部の「エラー」タブに「0 errors」と表示されれば成功です。エラーがあれば、その行のメッセージをAIに貼り付けて修正版をもらいます。
コンパイルに成功すると.ex5ファイルが生成され、MT5の「ナビゲーター」→「エキスパートアドバイザー」に表示されます。



エラー文はそのまま貼るのが最速。要約すると直らないことがあります。
手順④:ストラテジーテスターでバックテストする
コンパイルが通ったEAは、本番口座に入れる前に必ずバックテストにかけます。MT5の「表示」→「ストラテジーテスター」でEA・通貨ペア・期間・モデルを指定して実行します。モデルは「全ティック(リアルティックに基づく)」を選び、少なくとも過去2〜3年分を対象にしてください。結果は総損益だけでなく、最大ドローダウン・プロフィットファクター・取引回数を必ず確認します。
バックテストで確認すべき指標と目安
・プロフィットファクター:総利益÷総損失。1.3以上が一つの目安
・最大ドローダウン:許容できる範囲か。資金の20%を超えるなら要見直し
・期間ごとの安定性:特定の年だけ大きく勝っている場合は過剰最適化の疑い
・スプレッド設定:実際の口座のスプレッドに近い値で検証する
バックテストの結果が悪い場合は、AIに「この結果を踏まえて損切り幅を変えたい」「時間帯フィルターを追加したい」と伝えて改良を繰り返します。この改良サイクルを高速に回せることが、AIでEAを作る最大の利点です。ただし、過去データに合わせすぎる「過剰最適化(カーブフィッティング)」には注意が必要で、パラメーターを細かく調整しすぎたEAは将来の相場で機能しない可能性が高くなります。
手順⑤:デモ口座でフォワードテストしてから本番へ
バックテストを通過したら、次はデモ口座でのフォワードテストです。最低でも1か月、できれば3か月程度、実際の相場で動かして、バックテストと同じ傾向の成績が出るかを確認します。ここで大きく乖離する場合は、スプレッドやスリッページの想定が甘いか、過剰最適化が起きています。フォワードテストを経て初めて、少額の本番口座で稼働させる段階に進みます。
| 段階 | 期間の目安 | 確認すること | 次へ進む条件 |
|---|---|---|---|
| バックテスト | 過去2〜3年分 | PF・DD・取引回数・年ごとの安定性 | 複数年で安定して収益 |
| フォワードテスト(デモ) | 1〜3か月 | バックテストとの乖離、エラーの有無 | 傾向が一致し、エラーなし |
| 本番(少額) | 1〜3か月 | 約定・スリッページ・VPSの安定性 | 想定内のDDに収まる |
| 本番(通常ロット) | 継続 | 月次で成績を評価し、停止基準を守る | — |
本番で24時間稼働させるにはVPSが必要です。自宅PCの電源やネットワークが落ちればEAは止まりますし、ポジションを持ったまま止まれば損失が拡大する恐れがあります。XMでは一定条件を満たすと無料VPSが利用できるため、条件を確認したうえで活用するとよいでしょう。



バックテストだけで本番投入は禁物。フォワードで乖離を確かめて。
AIが作ったEAに潜む5つのリスク
AIによるEA作成は強力ですが、コードを読めない状態で運用することには固有のリスクがあります。私が実際に経験した失敗も含め、代表的なものを挙げておきます。
AI製EAの代表的なリスク
・安全装置の欠落:ポジション数の上限やエラー処理が抜け、連続発注や暴走が起きる
・過剰最適化:AIに改良を頼み続けるうちに、過去データにだけ合うEAになる
・コードのブラックボックス化:自分で読めないため、不具合の原因を特定できない
・業者の規約違反:意図せず禁止手法(高頻度発注、アービトラージ等)に該当してしまう
対策としては、コードを読めなくても「このコードがやっていることを日本語で説明して」とAIに解説させることが有効です。自分の意図と説明が食い違っていれば、そこが不具合の温床です。また、AIに「このEAに潜む危険な挙動を指摘して」と自己レビューをさせるのも、私が必ず行っている工程です。EAの詐欺や誇大広告への注意も含め、自動売買全体の始め方はFX自動売買とは?始め方・選び方・おすすめ業者を初心者向けに総まとめで体系的に整理しています。
よくある質問
プログラミングの知識がまったくなくてもEAを作れますか?
コードを書く工程はAIが担うため、知識ゼロでも動くEAを作ることは可能です。ただし、ルールを曖昧さなく言語化する力と、バックテストの結果を読み取る力は必要です。コードの内容をAIに日本語で説明させながら進めると、少しずつ理解も深まります。
ChatGPTとClaudeのどちらがEA作成に向いていますか?
どちらもMQL5コードを生成できます。短いコードではChatGPTも十分ですが、機能が増えて長くなると整合性が崩れやすいという声があり、長いコードの一貫性ではClaudeが安定しているというのが私の実感です。いずれにせよ、エラーはそのまま貼り付けて修正させれば解決します。
AIが作ったEAはそのまま本番口座で使えますか?
推奨しません。バックテストで複数年の安定性を確認し、デモ口座で1〜3か月のフォワードテストを行い、さらに少額の本番で約定やVPSの安定性を確かめてから、通常ロットに移行するのが安全な手順です。AIのコードには安全装置の欠落や意図しないロジックが含まれることがあります。
MT4用のEA(MQL4)をAIに書かせることもできますか?
可能ですが、おすすめしません。MQL4は開発元が新規開発を停止しており、MT4の提供を終了する業者が増えています。これから作るならMT5(MQL5)を前提にする方が、業者の環境変化に左右されず、AIの生成コードの品質も安定しやすいです。
まとめ
生成AIによって、EAを「書く」工程はほぼ自動化できるようになりました。しかし、勝てるルールを考えること、そして作ったEAを検証して本番投入を判断する責任は、これまでどおりトレーダーに残ります。ルールの言語化、安全装置を含めた指示、コンパイル、バックテスト、フォワードテストという5段階を省略せずに踏めば、AIは自分の手法を客観的に検証するための、非常に強力な道具になります。私自身、この工程を通じて自分の裁量ルールの曖昧さに気付かされることが何度もありました。まずはデモ口座で、小さなEAから試してみてください。
・AIは「コードを書く」を代替するが、「勝てるルール」と「検証」はトレーダーの仕事
・これから作るならMT5(MQL5)一択。MT4は提供終了の流れ
・ルールは数値・条件・タイミングをすべて明示して言語化する
・指示文にはポジション上限・エラー出力・足確定判定などの安全装置を必ず含める
・バックテスト→デモでフォワード→少額本番→通常ロットの順を省略しない
・AIにコードの解説と自己レビューをさせ、ブラックボックス化を防ぐ



