最終更新: 2026年6月
バックテストを走らせて、数字が並んだ画面を見たとき——正直何が書いてあるか、最初はわからない。
「プロフィットファクター」「最大ドローダウン」「リカバリーファクター」。聞いたことはあるけど、どの数字が良くてどの数字が悪いのか、具体的な基準がわからない。筆者がMQL5の開発を始めたころ、まったく同じ状態だった。
この記事では、MT5のバックテストレポートで確認すべき5つの指標と、それぞれの「合格基準」を具体的な数値で解説する。
バックテストとは何か(確認)
ストラテジーテスター(Strategy Tester)は、作成したEAを過去の価格データに対して疑似的に売買させて、その結果を数値化する機能だ。MT5のメニュー「表示」→「ストラテジーテスター」または Ctrl+R で起動できる。
ただし、バックテストの結果は過去のデータに対する成績に過ぎない。将来の利益を保証するものではない点を最初に明記しておく。これはYMYLコンテンツとして最重要の注意点でもある。
バックテストには固有の限界がある。実際のトレード環境では発生するスリッページ(注文時の価格ずれ)・スプレッド拡大(指標発表時など)・ブローカーのシステム遅延がバックテストには反映されにくい。このため、バックテストで良好な結果が出たEAでも、ライブ環境では成績が落ちるケースがよく発生する。バックテストはあくまで「ロジックの仮説検証ツール」であり「収益保証ツール」ではないという認識が前提となる。
確認すべき5つの指標
指標1: プロフィットファクター(Profit Factor)
計算式: 総利益 ÷ 総損失
プロフィットファクター(以下PF)は、EAの総損益バランスを最もシンプルに示す指標だ。
| PF値 | 評価 | |---|---| | 1.0未満 | 損失超過(論外) | | 1.0〜1.3 | 損益均衡に近い(改善要) | | 1.3〜2.0 | 良好な範囲 | | 2.0超 | 過剰最適化を疑う |
よく「PF2.0以上が理想」という意見を見かけるが、筆者の経験では2.0を大きく超えるEAは過去データへの過剰適合(オーバーフィッティング)を疑う必要がある。実際、PF3.0超のEAをライブ環境で走らせて、数ヶ月でPF1.0を切るケースを何度も見てきた。
現実的な目標値は1.3〜1.8の範囲だ。
PFを評価する際は、バックテスト期間全体の数値だけでなく、期間を分割して各セクションのPFも確認するとよい。例えば10年間のバックテストであれば、前半5年と後半5年それぞれでPFを計算して、大きな乖離がないかを確認する。前半だけ高くて後半は低い場合、そのEAは相場環境が変わると機能しなくなる可能性がある。
指標2: 最大ドローダウン(Max Drawdown)
計算式: 運用中の最大資産から最低点までの下落率
最大ドローダウン(以下MDD)は、EAが最も苦しかった局面での損失幅を示す。
具体例で説明する。100万円の口座で運用を開始し、ある時点で口座残高が80万円まで下落した場合、MDDは20%になる。
| MDD | 評価 | |---|---| | 10%未満 | 優良 | | 10〜20% | 許容範囲 | | 20〜30% | 要注意 | | 30%超 | 高リスク |
重要なのは、バックテスト中のMDDは実際のライブ取引で必ず超えられるという事実だ。バックテストは最良のシナリオに近く、ライブ環境ではスリッページ・スプレッド拡大・データ欠損などの現実的な摩擦が加わる。
筆者の実装経験では、バックテストMDDの1.5〜2倍程度が実運用でのMDDの目安になることが多い。MDDが20%と出たら「実運用では30〜40%に達する可能性がある」と想定してロット設定を行うことを推奨する。
また、MDDのタイミングも確認すること。バックテスト期間のどの時点でMDDが発生したかを確認し、それが特定のイベント(リーマンショック2008年・コロナショック2020年・2022年の急激な円安局面など)と重なっているかを把握しておく。こうしたショックイベント時の耐性を確認することで、次のリスクオフイベント時にそのEAが耐えられるかどうかを推測できる。
指標3: リカバリーファクター(Recovery Factor)
計算式: 純損益 ÷ 最大ドローダウン
リカバリーファクターは「ドローダウンに対して、どれだけ稼いでいるか」を示す比率だ。
例: 純損益50万円、MDD10万円の場合 → リカバリーファクター = 5.0
| バックテスト期間 | 目安値 | |---|---| | 1年未満 | 1.0以上 | | 1〜5年 | 3.0以上 | | 10年以上 | 10.0以上 |
この指標は期間依存性が高い。5年間のバックテストでリカバリーファクター1.5であれば、平均すると年0.3相当のリカバリーしか発生していないことになり、評価は低い。
リカバリーファクターはPFとセットで評価するとより有益だ。PFが高くてもリカバリーファクターが低い場合、利益は出ているがドローダウンが深すぎる設計になっている可能性がある。逆にPFはそれほど高くなくてもリカバリーファクターが高い場合は、リスクに対して効率よく利益を出せているEAといえる。
指標4: 総取引数(Total Trades)
サンプル数の問題は、統計的有意性の基本だ。
取引数が少なすぎると、「たまたま良かっただけ」なのか「ロジックとして有効」なのかを区別できない。
筆者が最低限必要と考えるサンプル数は200回以上だ。100回程度のトレード結果では、統計的に信頼できる判断を下すのは難しい。
また、取引数が多すぎる場合(例: 月100回以上のスキャルピング型EAなど)は、スプレッドコストの積み重なりがバックテストで十分に考慮されているか確認する必要がある。
取引数の確認と合わせて、勝率のサンプル安定性も確認するとよい。例えば勝率65%のEAで取引数が50回の場合、単純な二項分布の計算からも、次の50回で勝率が大きく変動する可能性がある。取引数200回以上では統計的な安定性が増す。Hedgrow FXでインジケーターを生成してバックテストする際も、この取引数の基準は念頭に置いてほしい。
指標5: 勝率と平均利益・平均損失のバランス
要確認の組み合わせ:
- 勝率 × 平均利益 / 平均損失 = 期待値
勝率だけでは評価できない。例として、勝率80%でも平均損失が平均利益の5倍であれば期待値はマイナスになる。
逆に勝率40%でも平均利益が平均損失の3倍あれば、期待値はプラスになる。
期待値計算例:
勝率40%、平均利益300円、平均損失100円の場合
= 0.4 × 300 - 0.6 × 100
= 120 - 60
= +60円/トレード(正の期待値)
期待値がプラスであることは必要条件だが、それだけでは不十分だ。1トレードあたりの期待値が低い場合、スプレッドやスリッページのコストで期待値がマイナスに転じる可能性がある。特にスキャルピング系のEAは、取引ごとのコストが成績に与える影響が大きい。バックテスト設定で実際のスプレッドを正確に反映させることが、この指標を正しく評価するために重要だ。
合格基準の総合評価
Hedgrow FXが内部的な基準として使用している合格ライン(筆者参考値)は以下の通りだ。
| 指標 | 合格基準 | |---|---| | プロフィットファクター | 1.3以上 | | 最大ドローダウン | 20%以下 | | リカバリーファクター | バックテスト5年で3.0以上 | | 総取引数 | 200回以上 | | 期待値 | プラス |
5つすべてを満たすEAは、開発初期段階では少ない。どれか一つが基準を外れた場合は、パラメーター最適化よりもロジック自体の見直しから始めることを推奨する。
パラメーター最適化は「既存のロジックの微調整」であり、ロジック自体に問題がある場合は最適化しても根本解決にならない。例えば取引数が少ない場合はタイムフレームの変更やシグナル条件の緩和、MDDが大きすぎる場合は損切り幅の見直しやトレードフィルターの追加という形で、ロジックの根本から改善することが先決だ。
バックテスト結果を読む際の注意点
オーバーフィッティングのサイン
過去データに過剰適合したEAは、未来のデータで機能しない。以下のサインには注意が必要だ。
- バックテスト期間の後半に急激に成績が良くなっている
- PFが2.5を超えている
- 最適化で使ったパラメーターから少し外れるだけで成績が崩れる
- 取引数が極端に少ない(過去のわずかなシグナルだけが当たっている)
過剰最適化は「過去には完璧に機能した」という状態を作り出す。バックテストの数値がどんなに優秀でも、過剰最適化が疑われる場合は実用に向かない。
ウォークフォワードテストの重要性
バックテストの次のステップは、最適化に使っていない期間のデータで検証する「ウォークフォワードテスト」だ。例えば、2015〜2023年でパラメーター最適化を行い、2024〜2025年の未使用データで検証する。ウォークフォワード期間でも同等の結果が出れば、ロジックの汎化性が高い証拠になる。
ウォークフォワードテストのポイントは「最適化に使わなかったデータ」で検証することだ。もし2015〜2025年の全データでパラメーター最適化を行い、同じ期間でバックテストを評価しても、過剰最適化かどうかは判断できない。ウォークフォワード期間を設けることで、最適化の汎化性を初めて客観的に評価できる。
Claudeと会話しながらインジケータが作れるhedgrow-fxでは、EAのロジック設計段階でこうした検証の観点を取り入れやすい。
MT5バックテストの精度を上げる設定
バックテスト自体の精度も、結果の信頼性に直接影響する。
モデリング品質(MT5ストラテジーテスターに表示される数値)は、できる限り90%以上を目指す。OHLCデータのみのバックテストは精度が低く、実際のトレードとの乖離が大きくなりやすい。MT5では「全ティック」モードを使うことで最も現実に近いバックテストが可能だが、計算時間が大幅に増える。
スプレッドの設定も重要だ。バックテスト設定で「カスタム」スプレッドを指定し、実際のブローカーのスプレッドに近い値を設定することで、コスト計算の精度が上がる。特にスキャルピング系EAは、スプレッドの差がPFに大きく影響するため、この設定は欠かせない。
YMYL注記
バックテストの結果は過去の価格データに基づくものであり、将来の収益を何ら保証するものではありません。FX取引には元本割れのリスクが伴います。自動売買ツールを利用する場合は必ずリスク管理の設定を確認してください。
まとめ
MT5のバックテスト結果を正しく読むためには、単一の数値だけでなく5つの指標を総合的に評価することが重要だ。
- プロフィットファクター1.3以上(2.5超は過剰最適化を疑う)
- 最大ドローダウン20%以下(ライブでは1.5〜2倍になると想定する)
- リカバリーファクターは期間に応じた目安値を使う
- 総取引数200回以上(統計的有意性の確保)
- 期待値がプラスで、スプレッドコストを含めても成立するか確認
これらの指標を一通り確認した後、ウォークフォワードテストで汎化性を検証するまでを「バックテスト完了」と考えると、過剰最適化による失敗を減らせる。
よくある質問(FAQ)
Q: バックテストのデータ品質はどう確認すればいいですか? A: ストラテジーテスターのレポートに「モデリング品質」が表示されます。90%以上(ティックデータ使用時)が理想的です。品質が低いとバックテスト結果の信頼性が下がります。
Q: プロフィットファクターが高いほど良いですか? A: 必ずしもそうではありません。PF2.0超はオーバーフィッティングの可能性が高く、ライブ環境で再現できないケースが多いです。1.3〜1.8が現実的な目標値です。
Q: 最大ドローダウンはどのタイミングで確認すればいいですか? A: バックテスト開始直後と、特定の市場イベント(リーマンショック・コロナショックなど)の前後を確認することを推奨します。ショックイベント時にMDDが急拡大していないかを確認します。
Q: 取引数が少ない場合はどうすればいいですか? A: バックテスト期間を延長する、複数の通貨ペアで検証する、タイムフレームを下げてサンプル数を増やすという方法があります。いずれも一長一短があるため、ロジックに適した方法を選んでください。
Q: バックテストとフォワードテストの乖離が大きい場合の対処法は? A: ロジック自体を見直すことが先決です。パラメーターの再最適化だけでは問題の根本解決にはなりません。市場構造が変化した可能性も考慮してください。
Q: ウォークフォワードテストはどのツールで実施できますか? A: MT5のストラテジーテスターにはウォークフォワードテスト機能が標準で搭載されています。「最適化」ページでウォークフォワード期間を設定することで実施できます。
Q: バックテストで勝率90%以上のEAは信頼できますか? A: 勝率が非常に高い場合、利確幅が小さく損切り幅が大きいロジック(いわゆる「コツコツドカン」型)の可能性があります。勝率単体では評価せず、必ず平均利益と平均損失のバランス(期待値)と最大ドローダウンを合わせて確認してください。
免責事項: 本記事はMT5の操作方法・バックテスト指標の解説を目的としています。記載の数値・基準は筆者の経験に基づく参考値であり、特定の投資成果を保証するものではありません。FX取引はご自身の判断と責任のもとで行ってください。
