- 「過去2年でいちばん利益が出た設定を選び、次の半年にそのまま使う」を、半年ずつずらして9回くり返した
- 選んだ時点の成績(学習期間のPF)は9回とも1.0を超えていたが、次の半年もPF1.0以上だったのは9回中1回だけ。PFの真ん中の値は1.11から0.87に下がった
- 1回目だけを見ればPF1.19で「通用した」と言える。1回の確認で結論を出さず、何回かずらして確かめることが大切だと分かった
EAの設定を決めるとき、いちばん手軽なのは「過去のデータで一番成績が良かった設定を使う」方法です。でも、その設定がこれからも通用するかは、使っていない期間で確かめないと分かりません。
以前の記事「最適化した設定は次の3か月も通用するか」では、この確認を1回だけ行いました。今回は同じ考え方を半年ずつずらして9回くり返し、「1回だけの確認」でどこまで分かるのかも見てみました。
検証のやり方
使ったのは、開発中の自作EA(為替の5分足・15分足で水平線を抜けたあとの戻りを狙うもの、1時間足のチャネルを抜けたら順張りするもの)です。為替16ペア×3種類=48の組み合わせに、それぞれ54通りの設定、合計2,592通りを、2020年1月から2026年6月までMT5でバックテストしました。
- 2年分で選ぶ(学習期間)組み合わせごとに、過去24か月の利益がいちばん大きかった設定を1つ選びます。その中から成績の良い組み合わせを最大12個(同じ通貨ペアは1つまで)まとめて使います。
- 次の半年に、そのまま使う(確認期間)選んだ設定は変えずに、次の6か月の成績を見ます。この期間のデータは、設定を選ぶときには一切使っていません。
- 半年ずらして、くり返す確認期間を2022年1〜6月から2026年1〜6月まで半年ずつずらし、合計9回行いました。
費用は厳しめに見ています。テスターのスプレッドに加えて、スリッページを片道0.5pips、スプレッドの上乗せを往復0.3pipsとして差し引きました。1回の取引で負けるのは、仮の資金10万円の1%までになるようにロットを決めています。
9回の結果
| 回 | 確認期間 | 学習期間のPF | 確認期間のPF |
|---|---|---|---|
| 1 | 2022年1〜6月 | 1.07 | 1.19 |
| 2 | 2022年7〜12月 | 1.09 | 0.93 |
| 3 | 2023年1〜6月 | 1.16 | 0.95 |
| 4 | 2023年7〜12月 | 1.16 | 0.87 |
| 5 | 2024年1〜6月 | 1.14 | 0.90 |
| 6 | 2024年7〜12月 | 1.13 | 0.85 |
| 7 | 2025年1〜6月 | 1.11 | 0.73 |
| 8 | 2025年7〜12月 | 1.02 | 0.81 |
| 9 | 2026年1〜6月 | 1.09 | 0.72 |
※PF(プロフィットファクター)=総利益÷総損失。1.0を下回ると、その期間は負け越しです。いずれも上記の厳しめの費用を差し引いた値です。
学習期間のPFは9回とも1.0を超えていました。選んだ時点では、どれも「勝てる設定」に見えていたということです。ところが確認期間では、PF1.0以上だったのは1回目(1.19)だけで、残りの8回はすべて負け越しでした。
9回の真ん中の値(中央値)で比べると、学習期間の1.11が、確認期間では0.87まで下がっています。また、確認期間の最大ドローダウンは9回とも20%を超えていました。
1回だけ確かめていたら、逆の結論になっていた
もしこの検証を1回目だけで終えていたら、「過去2年で選んだ設定は、次の半年でもPF1.19。むしろ良くなった」という結論になっていたはずです。
使っていない期間で確かめること自体は正しいやり方です。それでも、確認が1回だけだと、たまたま相場が合った期間に当たることがあります。何回かずらしてくり返すと、1回目の良い結果が例外だったことが見えてきました。
条件を厳しくして選んでも、大きくは変わらなかった
「利益が一番」ではなく、もっと慎重に選んだらどうなるかも試しました。学習期間で、PF1.15以上・最大ドローダウン15%以下・月の半分以上がプラス・前半と後半のどちらもPF1.0以上、といった条件をすべて満たす設定だけを選ぶ方法です。
この方法では、9回のうち4回は条件を満たす設定がなく、「使わない」という判断になりました。選べた5回の学習期間のPFは1.18〜1.28と高めでしたが、確認期間でPF1.0以上だったのは5回中2回(1.40と1.02)でした。選び方を厳しくしても、学習期間の良さがそのまま続くわけではありませんでした。
この検証から考えたこと
- 学習期間の数字は「選んだ結果」でもある2,592通りの中から一番を選べば、その期間に偶然合った設定も混ざります。学習期間のPFが1.1前後なら、確認期間で1.0を割っても不思議ではありません。
- 確認は1回で終わらせない期間をずらして何回か確かめ、「何回中何回、確認期間でも通用したか」で判断します。1回の良い結果は、運の可能性があります。
- 費用を厳しめに入れて確かめる今回のように1回の値幅が小さい売買では、スプレッドやスリッページの差がPFを大きく動かします。スプレッドのコストも合わせて確認しておくと安心です。
- 「使わない」も結果のひとつ条件を満たす設定がない回は、無理に選ばないほうが損を避けられました。基準を先に決めておくと、この判断がしやすくなります。
まとめ
過去2年で一番良かった設定を次の半年に使う検証を9回くり返すと、次の半年もPF1.0以上だったのは1回だけでした。選び方を厳しくしても、5回中2回です。
今回のEAは、この結果を受けてこのままの形では使わないことにしました。うまくいかなかった結果ですが、「1回の確認では分からないことがある」と数字で確かめられたのは、次の開発にとって大きな収穫だったと感じています。
※本記事は情報提供を目的としたもので、特定の金融商品やEAの売買・利用を推奨するものではありません。記載の数値は開発中の自作EAのバックテスト結果です。2025年6月以前は1分足から作った値動きで検証しており、実際のティックとは異なります。バックテストと実際の運用では、スプレッドや約定の違いにより結果が変わることがあります。FX・CFD取引には元本を失うリスクがあります。過去の成績は将来の成果を保証しません。投資判断はご自身の責任で行ってください。