EAの検証方法 ウォークフォワードテストについて④~弱点その2・まとめ~
※画像が見えにくい場合はクリックしていただくと拡大されます。
ウォークフォワードテストが過剰最適化につながる?
ウォークフォワードテストの弱点その2は、ウォークフォワードテストすることが過剰最適化につながる可能性があることです。
ウォークフォワードテストをするためには①イン期間②アウト期間③変数の評価方法の3つを決める必要がございます。決め方に目安はあるものの、EAのロジックによって設定は大幅に変わるため一概には言えません。
これを踏まえてウォークフォワードテストすることがなぜ過剰最適化になるのかをご説明いたします。
例えば、イン期間を52週、アウト期間を4週、変数の評価方法を利益でウォークフォワードテストした結果があまり良くなかったとします。
改善するためにイン期間を39週や26週に変更したり、アウト期間を2週に変えたりなどして再度ウォークフォワードテストしたいと考えるケースがあるかと思います。
上記の流れは起こりうることかと思いますが、これはイン期間やアウト期間が変数となり最適化していることと同様になります。最適化したテスト結果ではEAは評価できないため、ウォークフォワードテストの結果も評価できなくなります。
では、イン期間・アウト期間・変数の評価方法を複数テストし、最良の結果を選びながらもウォークフォワードテストの結果を評価するためにはどのようにしたら良いのでしょうか?
これはウォークフォワードテストに使用する期間を分割することで解決できます。
・イン期間、アウト期間、変数の評価方法を決める期間を1層目
・1層目で決めた設定のままウォークフォワードテストする期間を2層目
とします。
例)
2004.01.01~2022.12.31のヒストリカルデータを所有している場合
2004.01.01~2017.12.31でウォークフォワードテストをし、イン期間、アウト期間、変数の評価方法を決めます(1層目)。
↓
2018.01.01~2022.12.31で1層目で決めた設定でウォークフォワードテストを実施し結果を評価します(2層目)。
↓
上記結果に納得できる場合はリアルトレードを検討します。
この進め方であればウォークフォワードテストが過剰最適化になることはありません。
なお、2層目に使用する期間の長さは一般的には3年と言われていますが、今までの知見から5年は確保したほうがウォークフォワードテストの信頼性が高まります。
ウォークフォワードテストについてまとめ
ウォークフォワードテストを実施することは手間と時間がかかりますが、ウォークフォワードテストをクリアしたEAはリアルトレードでも勝てることが期待できます。
ぜひ、本記事を参考にしながら一度試してみてください。
またBookSoundはで最短3日程度でウォークフォワードテストの代行を承ることができますので是非ご利用いただければ幸いです。