本ページはプロモーションが含まれています

ホーム › EAダウンロードサービス

EAダウンロードサービス

MQL5のEAソースコード入手先7選|MT5サンプルと自動生成

↻

トム

トム

現役エンジニア(本業はJavaバックエンド)。以前はMT4のEAを自作してFX自動売買をしていました(現在は引退)。今はポイ活を「時給」で検証・攻略しています。

国内FX会社のMT4終了が続いています。OANDA証券は2026年9月25日でMT4の新規注文を止め、11月27日に提供を終えます(OANDA証券の公式告知)。MT4でEAを動かしてきた人ほど、MT5用のソースコードをどこで探せばよいか迷うはずです。

MT5(MetaTrader 5)はMetaQuotes社の取引プラットフォームで、EA(自動売買プログラム)はMQL5という言語で書きます。MT4のMQL4とは発注やポジション管理の書き方が違うため、MT4のコードはそのままでは動きません。

MQL5のEAソースコードが手に入るサイト7つと、MT5標準のサンプルEA・MQL5ウィザードを紹介します。実際にMT4からMT5へ乗り換える作業をした際に使った情報源だけを厳選しています。

こんな方におすすめ

  • 証券会社のMT4サービス終了で、MT5への移行を迫られている
  • MT5用のEAソースコードをどこで探せばいいかわからない
  • MQL5は書けないが、MT5に自動生成機能があるらしいと聞いた
  • MT4版のロジックをMT5でも動かしたい

MQL5のEAソースコード入手先早見表

本文で紹介する7つのサイトと、MT5標準のサンプルソース・MQL5ウィザードを、対象レベル・言語・費用でまとめました。まず自分に合いそうなものの見当をつけてから、各セクションを読んでください。

サイト・方法対象レベル言語費用特徴
サンプルソース(MT5付属)超初心者MQL5のコード無料環境構築不要・最初の一歩に最適
MQL5ウィザード初心者日本語UI無料MT5だけの標準機能。コード自動生成
mqlinvestmentlab初心者〜中級者日本語無料サンプルコードを1行ずつ解説
MQL5中級者〜上級者英語中心無料(一部有料)世界最大級、コード量が膨大
ぷろぐらむFX初心者〜中級者日本語無料MT4中心のサンプルコード集。MT5版は指標フィルターなど一部のみ
EAつくーるプログラミング未経験者日本語・ノーコード有料(29,800円・2026年9月時点)MT5にも対応するEA自動生成ツール
EarnForex初心者〜中級者英語(解説が丁寧)無料戦略解説付きのオープンソースEA
GitHub中級者〜上級者英語中心無料ライセンス確認が必須
note初心者〜中級者日本語無料〜有料個人開発者のコード公開記事。利用条件は記事ごとに確認

サンプルソースとMQL5ウィザードでEAの基本を理解する

MT5にも、インストール直後から使えるサンプルコードと、コードを書かずにEAを作れるウィザード機能が標準搭載されています。ネットでソースコードを探す前に、この2つで基本構造をつかんでおくと理解が速くなります。

MT5標準のサンプルEA「MACD Sample」

MT5にも、MT4と同じ「MACD Sample」というサンプルEAが付属しています。MQL5版では関数名が変わっているものの、エントリー条件を判定して注文を出し、決済条件とトレーリングストップを見張るという3段構成の考え方はMT4版と共通です。

MT4版との違い
MQL5のOrderSendは引数が構造体(MqlTradeRequest)に変わり、標準ライブラリのCTradeクラスで発注する書き方も広く使われるなど、書き方そのものが変わっています。MT4のコードを貼り付けても動かないため、最初はMT5用に書かれたサンプルから読みましょう。

サンプルはMetaEditor 5の「ナビゲーター」ウィンドウから、エキスパートアドバイザーの一覧を開くと確認できます。まずこの1本を最後まで読み切ることが、MQL5を理解する一番の近道です。

MQL5ウィザードでコードの雛形を自動生成する

MT5のMetaEditorには「MQL5ウィザード」という機能があります(MT4のMetaEditorにもウィザードはありますが、作れるのは空のひな形だけで、売買ロジックまでは生成しません)。売買ロジック・トレーリングストップ・資金管理をメニューから選ぶだけで、動くEAのソースコードを自動生成してくれる標準ツールです。

  • MT5のツールバーから「IDE」(またはF4キー)でMetaEditor 5を起動する
  • 「ファイル」→「新規作成」から「エキスパートアドバイザ(生成)」を選ぶ
  • 名前・作成者・リンクを入力し、使いたい売買ロジック(移動平均線やMACD等)を選択する
  • トレーリングストップや資金管理のオプションを選び、「完了」でソースコードを生成する
  • 生成されたコードをコンパイルし、デモ口座で動作を確認する

生成される条件は決まったパターンの組み合わせなので、複雑な戦略は作れません。ただ、コードの型を丸ごと覚えられるので、これから紹介するサイトのコードを読むときの土台になります。

あわせて読むMT4 EAのトレーリングストップ実装|MQL4コード4方式MT4(MQL4)のEAにトレーリングストップを組み込むコードを、固定幅・ATR・高安値・移動平均の4方式で紹介。5桁業者のpips換算、StopLevel、OrderModifyのエラー1対策まで入れた共通関数付きです。

mqlinvestmentlab|MQL5ソースコード解体新書で学ぶ

mqlinvestmentlabは、公開されているMQL5のサンプルコードを1行ずつ解読していく「ソースコード解体新書」というシリーズを掲載しているブログです。MT5に標準搭載のEA「MACD Sample」や、パラボリックSARを使うコードを題材にしています。

コードをそのまま写すのではなく、「なぜこう書くのか」を理解しながら読み進められるのが特徴です。プロパティ設定・変数の初期化・注文条件の判定という順番で解説されているため、MQL5ウィザードで生成したコードの中身を理解する副教材としても使えます。

mqlinvestmentlab(ソースコード解説)

MQL5|コードベースとマーケットで探す

MQL5のコードベースページ画面

MQL5は、EAに関する情報を提供する世界最大級のサイトで、MT4だけでなくMT5用のソースコードも数多く公開されています。「コードベース」セクションには無料のEA・インジケーターが並び、「マーケット」セクションには開発者が販売・無料公開している完成品のEAもあります。

公開コードの多くは英語で書かれているため、翻訳しても分かりにくい部分があります。それでも、MT5サンプルソースやMQL5ウィザードで基本を理解したあとなら、読み解ける範囲はぐっと広がります。

MQL5(MT5用コードベース)

ぷろぐらむFX|MT4中心で一部MT5版もあるサンプル集

ぷろぐらむFXは、トレンド系・オシレーター系・ZigZag系などロジック別にEAソースコードをまとめているサイトです。掲載されているEAソースコードはMT4版が中心で、MT5版は「指標発表時に取引させない」機能など一部に限られます(2026年10月時点の一覧ページ)。

MT4で使っていたロジックをMT5に移植したいときは、同じ項目のMT4版・MT5版を見比べると、書き方の違いが具体的にわかります。目的のロジックから逆引きでコードを探したい人に向いています。

ぷろぐらむFX(EAソースコード公開まとめ)

EAつくーる|MT5にも対応するノーコード生成ツール

EAつくーるは、条件を選ぶだけでソースコードを自動生成できるツールで、MT4だけでなくMT5用の.mq5形式にも対応しています。移動平均線・MACD・RSI・ボリンジャーバンドといった指標を組み合わせ、エントリー条件や決済条件を画面上で選択していく流れはMQL5ウィザードとよく似ています。

MQL5ウィザードとの違いは、選べる条件の幅の広さです。ウィザードは決まった組み合わせしか選べませんが、EAつくーるはより細かい条件設定に対応しています。生成したコードを自分で修正して、オリジナルのEAに仕上げることもできます。

EAつくーる:ノーコードで誰でも簡単EA開発、完全自動・半自動取引であなたのトレードを少しでも楽に!EAつくーる | GogoJungle

EarnForex|無料オープンソースEA

EarnForexは、無料のオープンソースEA・インジケーターを体系的に公開している海外の老舗サイトです。MT4版・MT5版の両方を配布している項目が多く、トレーリングストップやブレイクイーブン管理といった補助系EAが充実しています。

各EAのページには戦略の解説・パラメータの説明・注意点がまとまっており、ダウンロードだけでなくコードの読み方を学ぶ教材としても優秀です。GitHub上にも公式Organization(EarnForex)があり、そちらからソースコードを直接確認することもできます。

EarnForex

あわせて読むMT4の無料EAおすすめ10サイト|勝てる選び方【2026年】MT4で使える無料EA(自動売買)を配布している国内外10サイトを比較紹介。指定口座開設だけで使える人気EAから、Myfxbookで実績公開中のEAまで、無料EAを選ぶ際の注意点とあわせて解説します。

GitHub|MQL5リポジトリを探す

GitHubのロゴ

GitHubは、ソースコードのバージョン管理を行うためのサービスですが、MQL5のリポジトリも多数公開されています。個人開発者が公開しているEA・インジケーター・トレード補助ツールが検索できます。

リポジトリごとにライセンス(MIT・GPL等)が異なるため、コードを流用・公開する場合はライセンス表記が必要かを確認してください。また更新が止まっているリポジトリも多いため、最新のMT5ビルドで動くかは自分の環境で必ず確認してください。

GitHub(mql5タグ)

note|個人開発者のソースコード公開記事

noteには、個人の開発者が自作EAのソースコードを丸ごと公開している記事があります。無料で全文公開しているものもあれば、有料マガジンとして販売しているものもあり、解説の丁寧さも執筆者によって差があります。

購入前に確認したいこと
ソースコードの著作権は作成者にあります。個人利用の範囲を超えて再配布・転売する行為は避け、記事に明記されている利用条件を必ず確認してから使いましょう。

noteでは「EA MT5 ソースコード」のようなキーワードで検索すると見つかります。分解モンテカルロ法のような資金管理ロジックまで細かく解説している記事もあり、既製のEAでは学べない設計思想に触れられます。

見つけたソースコードを実際にMT5で動かす方法

ここまで紹介したサイトでソースコード(.mq5ファイルやコードの本文)を見つけても、そのままではMT5上で動きません。EAとして稼働させるまでの流れを押さえておきましょう。

ソースコードをEAとして稼働させる流れ(MT5)

1
MetaEditor 5を開く
MT5の「IDE」またはF4キー
2
ソースコードを開く・貼り付ける
.mq5を開くか、新規ファイルに貼り付け
3
コンパイルする
.mq5 → .ex5に変換
4
チャートに適用
ドラッグ&ドロップ。まずデモ口座で確認
  • MT5のツールバーから「IDE」(またはF4キー)でMetaEditor 5を開く
  • 「ファイル」→「開く」から.mq5ファイルを開く、または新規作成したファイルにコードを貼り付ける
  • 「コンパイル」ボタンを押し、.mq5を.ex5に変換する(エラーが出た場合は関数名の変更点を確認する)
  • MT5のナビゲーターから対象のEAをチャートにドラッグ&ドロップし、パラメータを確認したうえで、まずはデモ口座で動作確認する

コンパイル時のエラーは、MT4時代の書き方(引数を並べて呼ぶOrderSendやOrderSelect、Ask・Bid変数など)が残っていることが主な原因です。MQL5ではCTradeクラスのBuy・PositionCloseなどのメソッドか、構造体を渡すOrderSendに置き換えます。

MQL4とMQL5の違い|MT4から乗り換える前に確認

OANDA証券(2026年11月27日で提供終了)やJFX(2026年8月19日に終了)のように、MT4をやめる国内FX会社が出ています。移行先のMT5ではMT4のコードがそのままでは動かないため、主な違いを整理しました。

項目MT4(MQL4)MT5(MQL5)
言語MQL4MQL5
発注の書き方OrderSendCTradeクラス、または構造体を渡すOrderSend
ポジション管理注文(チケット)単位。同じ銘柄の両建ても可口座ごとにネッティング(1銘柄1ポジション)かヘッジング(複数保有可)
インジケーター値の取得iMA等が値を直接返すiMA等はハンドルを返し、CopyBufferで値を読み出す
バックテスト速度標準的マルチスレッドで高速
対応FX会社(国内)減少傾向(OANDA証券は2026年11月27日、JFXは8月19日で終了)OANDA証券は提供中。JFXはチャート分析専用で発注不可、FXTFはCFDから先行提供(2026年9月時点)

MQL4からMQL5へ書き換える3つのポイント(コード例)

拾ってきたMT4用のコードを移植するとき、書き換えが必要になるのは主に「インジケーター値の取得」「ポジションの確認」「発注」の3か所です。移動平均線より価格が上なら買うだけの最小構成で、MQL5での書き方を並べました。各処理のコメントに、MQL4で書いていた場合の1行を添えています。

#include <Trade\Trade.mqh>
CTrade trade;
int    maHandle;   // 移動平均線のハンドル

int OnInit()
  {
   // MQL5: インジケーターは最初にハンドルを1回だけ作る
   maHandle = iMA(_Symbol, PERIOD_CURRENT, 20, 0, MODE_SMA, PRICE_CLOSE);
   return(maHandle == INVALID_HANDLE ? INIT_FAILED : INIT_SUCCEEDED);
  }

void OnTick()
  {
   // (1) 値の取得 MQL4: double ma = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, 0);
   double ma[];
   ArraySetAsSeries(ma, true);
   if(CopyBuffer(maHandle, 0, 0, 1, ma) < 1)
      return;

   // (2) ポジション確認 MQL4: OrdersTotal() と OrderSelect() で注文を1件ずつ調べる
   for(int i = PositionsTotal() - 1; i >= 0; i--)
     {
      if(PositionGetTicket(i) > 0 && PositionGetString(POSITION_SYMBOL) == _Symbol)
         return;   // 同じ銘柄を保有中なら新規注文しない
     }

   // (3) 発注 MQL4: OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0);
   if(SymbolInfoDouble(_Symbol, SYMBOL_ASK) > ma[0])
      trade.Buy(0.1, _Symbol);
  }

このコードは書き方の違いを見るための例で、損切り・利確や資金管理は入れていません。iMA・CopyBuffer・PositionGetTicket・CTradeの引数は、MQL5公式リファレンス(docs.mql5.com)の定義に合わせています。

口座のポジション方式も確認する
MT5の口座には、1銘柄につきポジションを1つにまとめる「ネッティング」と、同じ銘柄で複数ポジションを持てる「ヘッジング」の2方式があります。MT4の両建てを前提にしたロジックは、ネッティング口座では同じ動きになりません。コードを動かす前に、使う口座がどちらの方式かを確かめてください。

MT4向けのソースコードの探し方や、EAの読み方の基本を先に押さえておきたい場合は、以下の記事もあわせて参考にしてください。

あわせて読むMT4(MQL4)EAソースコード公開サイト11選と動かし方MT4(MQL4)のEAソースコードを無料で公開しているサイト11選。付属のMACD Sample、日本語の学習サイト、MQL5コードベース、GitHubをレベル別に紹介し、コンパイルして動かす手順も解説します。

よくある質問

Q1. MT4のEAソースコードはMT5でそのまま使える?

A1. 使えません。MT4はMQL4、MT5はMQL5という別の言語で書かれており、発注方法や関数名も変わっています。ロジックの考え方は流用できますが、コードは書き直しが必要です。

Q2. プログラミング未経験でもMT5のEAは作れる?

A2. MT5に標準搭載の「MQL5ウィザード」を使えば、条件を選ぶだけでコードを自動生成できます。より細かく条件設定したい場合は「EAつくーる」のようなノーコードツールも選択肢です。

あわせて読むFX EAの自作・作り方|MQL4で始める初心者向けEA開発入門FXのEAはMT4付属のMetaEditorとMQL4で無料で自作できます。必要なもの・難しさ、ひな形作成からコンパイル・バックテストまでの手順と全コード、未経験者向けのノーコードツール・ChatGPT・作成代行も解説します。

Q3. MQL5ウィザードとEAつくーるはどちらを使うべき?

A3. まずは無料のMQL5ウィザードで基本構造を試すのがおすすめです。選べる条件の幅が足りないと感じたら、EAつくーるのような有料ツールでより細かい設定に進むとよいでしょう。

Q4. MQL4のコードをMQL5に移植するときの主な違いは?

A4. 書き換えが必要なのは主に発注・ポジション確認・インジケーター値の取得の3点です。MQL5の発注は、MqlTradeRequest構造体を渡すOrderSend関数か、標準ライブラリのCTradeクラス(Buy・Sell等)で行います。保有ポジションはPositionsTotalとPositionGetTicketで調べ、iMAなどのインジケーター関数は値ではなくハンドルを返すので、CopyBufferで値を読み出します。

Q5. MQL5 CodeBaseのコードは自由に使ってよい?

A5. CodeBaseのコードは無料でダウンロードでき、MetaEditorから直接取得することもできます。CodeBaseは公開コードを学んで自分のEAを開発するための場として案内されていますが、MQL5.comの利用規約は、許可されている場合を除きサイト上のソフトウェアの複製・販売・再配布・改変などを禁じています。販売や再配布をしたい場合は、各コードのページの説明を読み、作者に確認してから行ってください。

Q6. 国内でMT5に対応しているFX会社は増えている?

A6. MT4をやめる会社は出ていますが、MT5でEAを動かせるかは会社ごとに違います。OANDA証券はMT4を2026年11月27日で終了し、MT5への移行を案内しています。JFXはMT4を2026年8月19日に終えましたが、同社のMT5はチャート分析専用で発注機能がなく、EAは動きません。FXTFは2026年9月1日にMT5の提供を始め、まず商品CFD・暗号資産CFDに対応し、FX取引は準備中です(2026年9月26日時点)。

まとめ|レベル別のおすすめルート

7つのサイトとMT5標準の2機能を紹介しましたが、どこから手を付けるべきかはレベルによって変わります。回る順番の目安をまとめました。

レベル別のおすすめルート

超初心者(MT5未経験)

  • MT5付属のサンプルソースを読む
  • MQL5ウィザードでコードを1本生成する

初心者(基本構造は理解した)

  • mqlinvestmentlabでMQL5のサンプルを読み、ぷろぐらむFXのMT4版をMT5に書き換えてみる

プログラミングが難しい

  • EAつくーるでノーコード生成から始め、コードを読んで理解する

中級者以上

  • MQL5コードベース・EarnForex・GitHubから探し、ライセンスを確認して取り込む
  • 超初心者(MT5未経験):まずはMT5付属の「サンプルソース」を読み、MQL5ウィザードでコードを1本生成してみる
  • 初心者(基本構造は理解した):mqlinvestmentlabでMQL5のサンプルを1行ずつ読み、ぷろぐらむFXで作りたいロジックに近いMT4版のコードを探して、MT5に書き換えてみる
  • プログラミングが難しい:EAつくーるでノーコード生成から始め、生成後のコードを読んで理解を深める
  • 中級者以上(英語のコードも読める):MQL5のコードベースやEarnForex・GitHubでより高機能なEAを探し、ライセンスを確認したうえで自分のロジックに取り込む

MT4からの移行であっても、いきなり複雑なロジックを移植する必要はありません。今の自分のレベルに合った入手先を1つ選び、コードを実際に読んで動かしながら、MT5の書き方に少しずつ慣れていきましょう。MT4のコードを移植するときは、発注・ポジション管理・インジケーター値の取得の3点から書き換えるのが近道です。

あわせて読むMT4(MQL4) EA開発&運用を学ぶためのオススメ書籍、本MT4(MQL4)のEA開発と運用を学ぶオススメ書籍をレベル別に紹介。書籍選びで失敗しない3つの視点や学習リソースも解説します。 ※本記事は情報提供を目的としたもので、特定のEA・金融商品の売買を推奨するものではありません。FX(外国為替証拠金取引)は元本が保証されておらず、レバレッジにより預けた証拠金を上回る損失が発生する可能性があります。記事内の成績・数値は過去の実績であり、将来の利益を保証するものではありません。投資の最終判断はご自身の責任でお願いします。

QUEST CLEAR!

最後まで読んでくれて、ありがとうございます。
つぎのクエストは、この下から選べます。

トム

この記事を書いた人トム

・現役エンジニア(本業はJavaバックエンド)
・以前はMT4のEAを自作してFX自動売買をしていました(現在は引退)
・今はポイ活を「時給」で検証・攻略しています