【MT4バックテスト完全ガイド】EAを過去データで検証する方法
「このEA、本当に勝てるの?」
EAを作ったら、必ずバックテストをしましょう。過去のデータで検証することで、そのEAが利益を出せる可能性があるか判断できます。
この記事では、MT4の**Strategy Tester(ストラテジーテスター)**を使ったバックテストの方法を、ゼロから解説します。
バックテストとは?
バックテストは、過去の相場データを使ってEAをシミュレーションすることです。
例えば「2020年〜2024年のUSDJPYデータで、このEAを動かしたらどうなっていたか?」を調べられます。
なぜバックテストが重要?
- リアルマネーを失わずに検証できる
- EAの強み・弱みがわかる
- パラメータの最適化ができる
- 詐欺EAを見抜ける
ネットで売られている高額EA、バックテスト結果を見せてもらえば一発でわかります。
Step 1: Strategy Testerを開く
起動方法
MT4で以下のいずれか:
- キーボードで Ctrl + R
- メニュー → 表示 → ストラテジーテスター
画面下部にテスターパネルが表示されます。
Step 2: テスト設定
Strategy Testerには設定項目がたくさんありますが、最低限これだけ設定すればOK:
基本設定
| 項目 | 設定内容 |
|---|---|
| エキスパートアドバイザ | テストするEAを選択 |
| 通貨ペア | USDJPY など |
| モデル | 「全ティック」を選択(最も正確) |
| 期間 | テスト期間を指定 |
| 時間足 | EAを動かす時間足 |
モデルの種類
| モデル | 精度 | 速度 | 用途 |
|---|---|---|---|
| 全ティック | ◎ | 遅い | 最終検証 |
| コントロールポイント | ○ | 普通 | 粗い検証 |
| 始値のみ | △ | 速い | 高速確認 |
本番前の検証は必ず「全ティック」で!
パラメータ設定
「エキスパート設定」ボタンをクリックすると、EAの入力パラメータを変更できます。
Step 3: ヒストリカルデータの準備
なぜデータ準備が必要?
MT4に最初から入っているデータはスカスカです。正確なバックテストには、高品質なヒストリカルデータが必要。
データの確認方法
- MT4で F2キー(またはツール → ヒストリーセンター)
- テストしたい通貨ペアを選択
- 時間足を選んでデータ数を確認
データが少ない場合は、次の方法でダウンロード。
ヒストリカルデータのダウンロード
方法1: MT4からダウンロード
- ヒストリーセンターを開く(F2)
- 通貨ペアを選択
- 「ダウンロード」ボタンをクリック
※これは品質があまり良くないので、方法2推奨。
方法2: 外部からダウンロード(推奨)
高品質データの入手先:
- Dukascopy - 無料、高品質
- HistData.com - 無料
- TrueFX - 無料
ダウンロードしたデータをヒストリーセンターでインポートします。
データのインポート手順
- F2でヒストリーセンター開く
- 通貨ペア → 1分足(M1)を選択
- 「インポート」ボタン
- ダウンロードしたCSVファイルを選択
- インポート完了後、MT4を再起動
Step 4: バックテスト実行
実行手順
- Strategy Testerで設定完了
- 「スタート」ボタンをクリック
- 進捗バーが100%になるまで待つ
テスト期間とモデルによっては数分〜数十分かかります。
実行中の画面
「ビジュアルモード」にチェックを入れると、チャート上でEAが売買する様子をリアルタイムで見られます。
遅いですが、EAの動作確認に便利です。
Step 5: 結果の見方
テスト完了後、いくつかのタブで結果を確認できます。
「結果」タブ
全取引の一覧が表示されます。
- エントリー/決済の日時
- 価格
- 損益
「グラフ」タブ
資金曲線(エクイティカーブ)が表示されます。
良いEA: 右肩上がりで、大きなドローダウンがない 悪いEA: ギザギザ、または右肩下がり
「レポート」タブ(最重要!)
詳細な統計が表示されます。必ずチェックすべき項目:
| 指標 | 意味 | 目安 |
|---|---|---|
| 純益 | 最終的な利益 | プラスであること |
| プロフィットファクター | 総利益÷総損失 | 1.3以上が目安 |
| 最大ドローダウン | 資金からの最大下落 | 20%以下が理想 |
| 勝率 | 勝ちトレードの割合 | 戦略による |
| 総取引数 | トレード回数 | 100回以上で信頼性↑ |
プロフィットファクター(PF)の見方
PF = 総利益 ÷ 総損失- PF 1.0 = トントン
- PF 1.3 = まあまあ
- PF 1.5以上 = 良い
- PF 2.0以上 = かなり良い(逆に疑う)
最大ドローダウンの見方
例:100万円からスタート → 一時的に70万円まで減少 → その後回復
この場合、最大ドローダウンは30%(30万円)。
- 20%以下 → 許容範囲
- 30% → やや大きい
- 50%以上 → 危険
Step 6: 結果をどう判断する?
良いバックテスト結果の条件
✅ プロフィットファクター 1.3以上 ✅ 最大ドローダウン 20%以下 ✅ 総取引数 100回以上 ✅ 資金曲線が右肩上がり ✅ 勝率と損益比のバランスが取れている
注意:過剰最適化(オーバーフィッティング)
パラメータを調整しまくって、「過去データにだけ完璧に合う」EAを作ってしまうこと。
これは罠です。 過去に最適化しすぎると、未来の相場で全然勝てません。
対策:
- テスト期間を分ける(2020-2022で最適化、2023-2024で検証)
- 複数の通貨ペアでテスト
- パラメータは極端な値を避ける
Step 7: 最適化機能を使う
Strategy Testerには、パラメータを自動で最適化する機能があります。
最適化の設定
- 「最適化」にチェックを入れる
- 「エキスパート設定」→「パラメータの入力」
- 最適化したいパラメータの「スタート」「ステップ」「ストップ」を設定
例:MAの期間を5〜50の間で、5刻みでテスト
スタート: 5ステップ: 5ストップ: 50最適化結果の見方
「最適化結果」タブで、どのパラメータ組み合わせが良かったか一覧で見られます。
ただし、最適化結果を鵜呑みにしない! 必ず別の期間で検証してください。
バックテストの限界
バックテストで勝てても、実際に勝てるとは限りません。
理由
- スプレッドの変動:実際はスプレッドが広がることがある
- スリッページ:注文価格と約定価格のズレ
- 相場の変化:過去と未来は違う
- データの品質:低品質データでは正確なテストができない
だから...
バックテストは**「最低限これくらいは勝てる可能性がある」**の確認。
バックテストで勝てないEAは、絶対に本番で使わない。 バックテストで勝てたら、デモ口座で1ヶ月以上テスト。
実践チェックリスト
EAを本番運用する前に:
- 1年以上のバックテストを実施
- プロフィットファクター1.3以上
- 最大ドローダウン30%以下
- 取引回数100回以上
- 異なる期間でも同様の結果
- デモ口座で1ヶ月以上テスト
- 小ロットでリアル口座テスト
まとめ
| ステップ | 内容 |
|---|---|
| 1 | Strategy Testerを開く(Ctrl+R) |
| 2 | EA、通貨ペア、モデル、期間を設定 |
| 3 | ヒストリカルデータを準備 |
| 4 | スタートボタンで実行 |
| 5 | 結果を確認(PF、DD、取引数) |
| 6 | 複数期間・通貨ペアで検証 |
バックテストは「EAが勝てるかどうか」の第一関門です。ここをクリアしないEAは、本番に出す価値がありません。
データで判断する習慣をつければ、詐欺EAに騙されることもなくなります。自分で検証できるって、最強の武器ですよ 💪
ここまでで、MQL4/MT4シリーズは完了です!
次はPythonを使った自動売買に挑戦しましょう。MT4に依存しない、より自由度の高いシステムが作れます。
📚 次に読む記事: Python FXボット入門
🎁おすすめツール・サービス
※上記リンクにはプロモーション(広告)が含まれています
量子相場謀略|ホソノP
ブログでは書けない本音のトレード戦略とEA開発の裏側を公開。 データに基づいた検証で、再現性のある手法だけをお届けします。