EAを実弾で動かす前に必ずやるべきなのが、バックテスト(過去データでの検証)です。しかし手順どおりに実行しても、「モデリング品質が90%にならない」「バックテストでは優秀なのに実運用で溶ける」という壁に多くの人がぶつかります。この記事では、MT4/MT5でのバックテスト手順に加えて、結果レポートの正しい読み方、過剰最適化を見抜く方法、そして実運用へつなげるフォワードテストの進め方までを解説します。

この記事の要点

  • バックテストは「合格させる試験」ではなく「実運用に耐えないEAを見つけるふるい」として使うのが正しい位置づけです。
  • MT4ではモデリング品質90%が実質的な上限値。90%未満の結果はヒストリカルデータ不足で信頼できません。
  • 総利益だけでなく、プロフィットファクター・最大ドローダウン・総取引回数・期待利得・リカバリーファクター・最大連敗数の6指標で評価します。
  • 本番投入前に、デモ口座での動作確認 → リアル口座の最小ロットという順でフォワードテストを行います。

バックテストで何がわかり、何がわからないのか

バックテストは、EAの売買ロジックを過去の相場データに当てはめて、「もしその期間に動かしていたらどうなっていたか」をシミュレーションする作業です。

ここで重要なのは、バックテストの役割を正しく理解しておくことです。

バックテストの守備範囲
わかること わからないこと
ロジックが致命的に破綻していないか 将来も同じ成績を出せるか
最大ドローダウンの規模感 実際のスリッページと約定拒否の影響
取引頻度とコスト負担の大きさ 指標発表時のスプレッド拡大の影響
パラメータに対する成績の感度 相場環境が変化した後の耐性

つまりバックテストは「合格させるための試験」ではなく「不合格を見つけるためのふるい」です。良い結果が出たEAが必ず勝つわけではありませんが、悪い結果が出たEAはほぼ確実に実運用でも通用しません。この順序で捉えておくと、数字に振り回されずに済みます。

ヒストリカルデータの準備とモデリング品質90%

バックテストの精度は、使用するヒストリカルデータの精度でほぼ決まります。MT4は初期状態では過去データが不足しているため、まずデータを揃える作業から始めます。

MT4での設定手順

  1. バー数の上限を引き上げる:「ツール」→「オプション」→「チャート」タブを開き、「ヒストリー内の最大バー数」と「チャートの最大バー数」に十分大きな値(例:99999999)を入力します。ここが小さいと、データを取り込んでも古い部分が切り捨てられます。
  2. ヒストリーセンターからデータを取得:「ツール」→「ヒストリーセンター」(F2)を開き、検証したい通貨ペアの1分足(M1)を選んで「ダウンロード」します。
  3. チャートを開いて更新:対象通貨ペアのチャートを開き、時間足を切り替えながらスクロールしてデータを読み込ませます。

モデリング品質90%が目標値

MT4のバックテスト結果レポートには「モデリング品質」という項目があります。「全ティック」モードで1分足データが十分に揃っていれば90%と表示され、これが実質的な上限値です。25%や50%と表示される場合はデータ不足で、そのテスト結果は信頼できません。n/a(該当なし)の場合は、そもそもデータが読み込まれていません。

より高い精度を求める場合は、実際のティックデータ(1分足からの補完ではなく、値動きそのものの記録)を使う外部ツールを併用する方法もあります。ただし初期段階では、まずモデリング品質90%を安定して出せる状態を目指せば十分です。

MT4でのバックテスト手順

データが揃ったら、ストラテジーテスターで検証を実行します。

  1. ストラテジーテスターを開く:「表示」→「ストラテジーテスター」(Ctrl+R)で、画面下部にテスターが表示されます。
  2. EAを選択:「エキスパートアドバイザ」のプルダウンから検証したいEAを選びます。ここに表示されない場合は、EAファイルが正しいフォルダに置かれていません。
  3. 通貨ペアと時間足を指定:EAが想定している通貨ペア・時間足に合わせます。EAの説明書に指定があれば必ずそれに従ってください。
  4. モデルを「全ティック」にする:「始値のみ」「コントロールポイント」は高速ですが精度が大きく落ちます。スキャルピング型EAでは特に、必ず「全ティック」を選びます。
  5. 期間を指定する:「日付を使用」にチェックを入れ、開始日と終了日を設定します。最低でも2〜3年、できれば5年以上を確保したいところです。
  6. スプレッドを設定する:「現在値」ではなく、実運用で想定される値を固定で入れるのが安全です。TitanFXのブレード口座でスキャルピング型EAを回すなら、手数料込みの実質コストを踏まえた値を使います(スプレッド比較記事参照)。
  7. パラメータと初期証拠金を設定:「エキスパート設定」からロット数・損切り幅などを入力し、初期証拠金には実際に投入する予定額を入れます。
  8. スタートして結果を確認:完了後、「結果」「グラフ」「レポート」「操作履歴」の各タブを確認します。

スプレッドを狭く設定しすぎない

バックテストで最も結果を歪めるのがスプレッド設定です。常時最狭スプレッドを前提にしたテストは、実運用より大幅に良い数字が出ます。実際には指標発表時や早朝にスプレッドは拡大します。やや厳しめの値でテストして、それでも利益が残るかを確認してください。

MT5でのバックテスト手順と違い

MT5のストラテジーテスターは、MT4から大幅に改良されています。基本の流れは同じですが、次の違いを押さえておきましょう。

MT4とMT5のバックテスト比較
項目 MT4 MT5
ティックの精度 1分足からの生成(モデリング品質90%) 実ティックに基づくテストが可能
処理速度 シングルスレッド マルチスレッド対応で高速
複数通貨ペアの同時テスト 不可 可能
データ準備 ヒストリーセンターで手動取得 実行時にサーバーから自動取得
最適化機能 総当たり 遺伝的アルゴリズムに対応

MT5では「モデル」の選択肢に「実際のティックに基づく全ティック」があり、これを選ぶと業者が配信した実際のティックデータで検証できます。MT4より現実に近い結果が得られるため、これから新しくEAを検証するならMT5を推奨します。

ただし、EAファイルには互換性がありません。MT4用のEA(.ex4)はMT5では動作しないため、手持ちのEAがどちらに対応しているかを先に確認してください。詳しくはMT4・MT5完全ガイドで解説しています。

結果レポートの読み方(6つの指標)

テストが終わったら、総利益だけを見て判断してはいけません。次の6つを順に確認します。

バックテストレポートの主要指標と目安
指標 意味 見るべき水準
プロフィットファクター 総利益 ÷ 総損失 1.3以上が一つの目安。3.0超は過剰最適化を疑う
最大ドローダウン 資産のピークからの最大下落幅 この2倍の余力を資金計画に見込む
総取引回数 テスト期間中の売買回数 最低200回以上。少ないと偶然の可能性が高い
期待利得 1取引あたりの平均損益 スプレッド・手数料を引いてもプラスか
リカバリーファクター 純益 ÷ 最大ドローダウン 3以上あれば回復力が高い
最大連敗数 連続して負けた回数 精神的に耐えられる回数か

あわせて資産曲線(グラフタブ)の形を必ず目で確認してください。右肩上がりでも、階段状に急落を繰り返しているEAと、緩やかに積み上がるEAでは運用の難易度が違います。特に、終盤で急激に利益が伸びているグラフはナンピン・マーチンゲール型の可能性が高く、その裏には「いつか来る大きな一撃」が潜んでいます。

勝率90%超のEAに注意

勝率の高さは優秀さの証明ではありません。損切りを置かずに含み損を耐えるロジックは、簡単に勝率90%を超えます。その代わり、一度の失敗で口座を飛ばします。勝率を見るときは必ず「平均利益」と「平均損失」の比率をセットで確認してください。平均損失が平均利益の何倍にもなっているEAは危険です。

カーブフィッティングを見抜く3つの方法

カーブフィッティング(過剰最適化)とは、過去データにパラメータを合わせ込みすぎて、その期間だけ抜群の成績が出る状態を指します。バックテストが美しいEAほど疑ってかかる価値があります。

1. アウトオブサンプル検証

テスト期間を2つに分けます。前半(インサンプル)でパラメータを調整し、調整に一切使っていない後半(アウトオブサンプル)でそのまま動かす方法です。ここで成績が大きく崩れるなら、そのパラメータは過去に合わせ込んだだけということになります。

2. パラメータの感度をみる

最適とされたパラメータの前後の値でもテストしてみます。たとえば最適値が「20」なら、18・19・21・22でも実行します。20だけ突出して良く、周辺の値では損失になるなら、それは偶然のピークです。逆に、周辺の値でも安定してプラスなら、ロジックに実体がある可能性が高いといえます。

3. 複数の相場環境をまたぐ期間でテストする

トレンド相場だけ、あるいはレンジ相場だけの期間で検証しても意味がありません。金利上昇局面・下降局面、ボラティリティの高い時期と低い時期を含む長期間でテストし、どの局面で損失が出るのかを把握しておきます。「どの相場でも勝てるEA」はまず存在しないので、苦手な相場を知っておくこと自体が運用の武器になります。

フォワードテストの進め方

バックテストを通過したEAは、いきなり本番投入せず、段階を踏んで実運用に移します。

  1. デモ口座で1〜2週間:まずは資金を賭けずに、EAが想定どおりに発注・決済するかを確認します。この段階で見つかる不具合の多くは、ロジックではなく設定ミスです。
  2. リアル口座・最小ロットで1〜3ヶ月:ここが本当の検証です。デモとリアルでは約定条件が異なり、スリッページや約定遅延という「バックテストに存在しない要素」が初めて現れます。
  3. バックテストとの乖離を測る:同じ期間のバックテストを回して、実運用の成績と比較します。乖離が小さければ、ロットを段階的に引き上げていきます。
  4. 停止基準を決めておく:「最大ドローダウンがバックテストの1.5倍を超えたら停止」など、感情を挟まない撤退ルールを事前に決めます。

フォワードテストにTitanFXが向く理由

フォワードテストでは、バックテストとの乖離をできるだけ小さくしたいところです。TitanFXはNDD方式で約定の透明性が高く、スプレッドも業界最狭水準のため、「コスト要因による乖離」を小さく抑えられます。またEAの稼働制限がないため、テスト中に口座を凍結される心配もありません。高頻度売買のEAなら、実質コストの低いブレード口座が適しています。約定条件の詳細は約定力の検証記事をご覧ください。

よくある質問

モデリング品質が90%になりません

原因はほぼヒストリカルデータの不足です。「ツール」→「オプション」→「チャート」でバー数の上限を最大にしたうえで、ヒストリーセンターから対象通貨ペアの1分足を再取得してください。また、モデルが「全ティック」以外になっていると90%は表示されません。

バックテストで勝てるのに実運用で負けるのはなぜですか?

主な原因は3つです。(1) スプレッドを実際より狭く設定していた、(2) スリッページと約定遅延を織り込んでいない、(3) パラメータが過去に合わせ込まれている(カーブフィッティング)。特にスキャルピング型EAは、1回あたりの利幅が小さいため、この3つの影響を強く受けます。

テスト期間はどれくらい必要ですか?

最低2〜3年、可能なら5年以上を推奨します。加えて、総取引回数が200回を下回るテストは統計的な信頼性が低く、偶然の結果である可能性が高くなります。取引頻度の低いEAほど、長い期間が必要です。

デモ口座とリアル口座で結果が変わりますか?

変わります。デモ口座は約定が理想的に処理されるため、実際よりも良い成績が出やすい傾向があります。デモは「EAが正しく動くかの動作確認」、リアルの最小ロットは「実際の成績の検証」と、役割を分けて考えてください。

MT4とMT5、どちらでバックテストすべきですか?

これから始めるならMT5です。実ティックに基づく検証ができ、処理も高速で、複数通貨ペアの同時テストにも対応しています。ただし手持ちのEAがMT4専用なら、MT4で検証するほかありません。EAファイルに互換性はない点に注意してください。

フォワードテストはTitanFXのリアル口座で

口座開設・口座維持手数料は無料。EAの稼働制限もありません。
詳しい手順は口座開設の流れ(7ステップ解説)をご覧ください。

無料で口座開設する

この記事を書いた人

FX歴11年。デイトレードを中心に、EAによる自動売買も併用しています。国内証券会社での取引に加え、海外FXはTitanFX・XM・AXIORYの利用経験があります。当サイトでは取引コスト・約定環境・EA運用を中心に解説しています。

運営者情報・編集方針を見る