利益最大のEAを選んではいけない?Parameter Stabilityで過学習を検出する方法

EA最適化では最高利益のパラメータを選ぶほど、過学習の危険が高まることがあります。本記事ではParameter Stabilityの考え方を使い、安定したパラメータ領域を見つける方法と、Walk-Forward・OOS・Monte Carloを組み合わせた検証手法を解説します。

なぜ最高利益のパラメータが危険なのか

MT5でEAを最適化すると、数百から数万通りのパラメータ候補から最も利益が大きい組み合わせを簡単に抽出できます。しかし、その最良値が将来も機能するとは限りません。

過去データのノイズへ偶然適合した結果であれば、バックテストでは優秀でもフォワードテストで急激に成績が悪化します。これがオーバーフィッティングです。

実運用を前提としたEA開発では、「最高利益の一点」を探すのではなく、周辺パラメータでも安定して成績を維持できる領域を探すことが重要です。この考え方がParameter Stabilityです。

Parameter Stabilityとは

Parameter Stabilityとは、入力パラメータを少し変更しても戦略の成績が大きく崩れない性質を指します。

例えば移動平均期間が37で最大利益となった場合、36、38、39でも近いProfit Factorやドローダウンを維持できれば、比較的ロバストな戦略と考えられます。

一方、37だけ極端に高く、36や38で急激に悪化する場合は、過去データへ適合しすぎている可能性があります。

Plateauを探す

安定したパラメータ領域は、最適化結果をグラフ化すると「山頂」ではなく「高原」のように見えます。

これをPlateauと呼びます。

例えば、

  • MA期間:35〜42
  • ATR倍率:1.8〜2.2

の範囲でProfit Factorや最大ドローダウンが安定しているなら、その領域は特定の一点より信頼しやすいと判断できます。

最終的な設定値はPlateauの中央付近を選ぶ方法が一般的です。境界付近を選ぶと、市場環境が少し変化しただけで成績が崩れやすくなるためです。

利益以外の指標も見る

Parameter Stabilityを評価する際は、純利益だけでは不十分です。

確認したい指標は以下です。

  • Profit Factor
  • Sharpe Ratio
  • 最大ドローダウン
  • 取引回数
  • 平均損益
  • Recovery Factor

特に取引回数が極端に少ない設定は、偶然の影響を受けやすいため注意が必要です。

利益が少し低くても、周辺パラメータでリスク指標が安定している設定の方が実運用には適しています。

Out-of-Sampleで確認する

Parameter Stabilityを確認した後は、最適化に使っていないOut-of-Sample(OOS)期間で検証します。

例えば、

  • 2022〜2025年:In-Sample
  • 2026年前半:Out-of-Sample

というように期間を分離します。

OOSで成績が大きく悪化する場合、パラメータの安定性が見えていても、戦略そのものが過去環境へ依存している可能性があります。

Walk-Forward Analysisを組み合わせる

さらに厳格に評価する場合はWalk-Forward Analysisを利用します。

一定期間で最適化し、その直後の未知期間で検証する処理を繰り返します。

例えば、

1. 12か月で最適化

2. 次の3か月でOOS検証

3. 期間を3か月前へ移動

4. 再び最適化と検証

という流れです。

各期間で選ばれるパラメータが大きく変動しないかを見ることで、戦略の構造的な安定性も確認できます。

Monte Carloでさらに揺さぶる

Monte Carlo分析では、取引順序やスリッページ、スプレッドなどをランダムに変化させて戦略の耐性を確認します。

例えば、

  • 約定価格へランダムなスリッページを追加
  • 取引順序を入れ替える
  • スプレッドを拡大する
  • 一部の取引を欠損させる

といったストレスを加えます。

これらの条件でも破綻しないEAであれば、実運用への信頼度は高まります。

MT5での実践フロー

実務では次の順序が有効です。

1. MT5 Strategy Testerで広い範囲を最適化

2. 上位結果だけでなく周辺パラメータを確認

3. Plateauを抽出

4. OOSで再検証

5. Walk-Forward Analysisを実施

6. Monte Carloでストレステスト

7. フォワードテストへ移行

一段階だけで採用を決めず、複数の検証を通過したパラメータだけをライブ運用候補にします。

どこで最適化を止めるべきか

最適化を続けるほど、過去データ上の成績は改善しやすくなります。しかし、パラメータを追加するたびにOOS成績やPlateauの広さが悪化するなら、それ以上の最適化は逆効果です。

一つの判断基準は、「バックテスト利益は改善しているが、パラメータ安定性が改善していない」状態です。この段階ではロジック追加ではなく、検証へ移る方が合理的です。

まとめ

EA最適化では、最高利益のパラメータを選ぶことが必ずしも正解ではありません。

重要なのは、周辺設定でも安定した成績を示すParameter StabilityとPlateauを確認することです。その上でOOS、Walk-Forward Analysis、Monte Carloを組み合わせることで、過去データへの過剰適合を検出しやすくなります。

長期運用を前提とするなら、「最も儲かった設定」ではなく、「多少条件が変わっても壊れにくい設定」を選ぶことが、再現性の高いEA開発につながります。

ABOUTこの記事をかいた人

当サイトは、システムトレードに関する専門的な知識、技術、経験を皆様と共有することで、真剣なトレーダーの方々にインスピレーション(アイデアの源泉)の供給をいたします。トレーダーの競争力強化に焦点をあて、トレーディングシステムの構築を目的としてその普及に貢献します。 詳細は「概要とサービス内容」をご覧下さい。 ご要望はこちらで承ります。