自分の投資手法って、本当に効いてるのか。ずっと確かめたかったので、AIと一緒に過去のデータで検証する仕組みを作りました。やってみて一番の収穫は、勝てる手法が見つかったことではなくて、自分を騙さないための検証ルールの方が何倍も大事だと分かったことです。今日はその作り方と、バックテストで過学習を防ぐ考え方を、非エンジニアの目線でやさしく書きます。相場の予想や銘柄の話は一切しません。
正直に言うと、僕はFXの頃に手法を検証しては、過去ではうまくいくのに実戦だと負ける、というのを何度も繰り返してきました。いわゆる過学習です。だから今回は、勝てる手法を探す前に、まず自分を騙さない検証のルールをAIに先に作らせました。
なぜ自分で検証すると、だいたい自分を騙すのか
バックテストには、人がハマりやすい落とし穴がいくつかあります。専門用語を抜きで言うと、こんな感じです。
ひとつ目は、たくさん試すと偶然勝つものが必ず出てくること。100個ルールを試せば、まぐれで勝つ1個は出ます。それを見て効いた、と思い込んでしまう。
ふたつ目は、結果を見てから条件を後出しでいじってしまうこと。うまくいくように基準をこっそり緩める。これをやると、過去にだけ都合のいい手法ができあがります。
みっつ目は、未来の情報をうっかり混ぜてしまうこと。その時点ではまだ分からないはずの数字を使って、過去を当てにいってしまう。気づかないうちにカンニングしているわけです。
だから先に、過学習を弾くルールをAIに作らせた
手法を試す前に、合格の基準を数字で固定して、AIに見張り役をやらせました。やったのは大きく3つです。
試した回数を全部数えて記録する。まぐれ当たりを割り引くためです。負けた手法も消さずに残す。次に、過去のデータを前半と後半に分けて、後半は一回しか触らない。後半で負けたら微調整して再挑戦、は禁止にしました。最後に、検証を回す前に仮説と合格ラインを先に書いて固定する。あとから基準を甘くできないようにするためです。
この見張り役を先に作っておくと、AIが勝ったと言ってきても、その数字を信じていいのかを機械的に判定できます。AIの言葉ではなく、決めておいた数字で決める。ここがいちばん大事でした。
実際に回してみて分かったこと
手応えのあった手法もあれば、あっさり葬られた手法もありました。とくに面白かったのは、ある手法を回したら数字がやたら良く出たのに、中身を調べたら計算の土台が壊れていて、その良い数字が全部あてにならなかったケースです。もし検証ルールがなかったら、僕はその壊れた数字を見て、これは最強だと信じていたと思います。
逆に言うと、検証部隊の本当の仕事は、勝ち手法を見つけることよりも、勝った気になる罠を弾くことでした。地味だけど、ここがいちばん効きます。
これは投資以外にも効く考え方
自分に都合のいい結論ほど疑う。試した回数を数える。答えを見てから条件を変えない。これって投資に限らず、何かを検証するとき全部に効く考え方だなと思いました。AIは判断を丸ごと任せる相手というより、自分の思い込みを点検させる相手として使うのが、今のところ僕にはしっくりきています。
AIに何を任せて何を任せないかの線引きはAIに投資判断を任せて大丈夫?に書きました。毎朝の投資チェックをAIで自動化した話は毎朝の投資チェックをAIで自動化した話、どのAIをどう使っているかは投資のAIツール、ほぼ無料でいけた話にまとめています。
そうやって検証した手法を実際にツール化して、初めて本物のお金を入れたその後は、AIで自分の投資ルールをツール化して初めて実弾を入れた話に続きます。
おわりに代えて
検証だ過学習だとやってきて思うのは、リターンをいじるより先に、確実に効く「種銭づくり」があるということでした。僕が最初にやったのは固定費の見直しです。
※本記事は仕組みや考え方の紹介であって、投資助言ではありません。検証結果は過去データに基づく概算で、将来の成果を約束するものではありません。最終的な投資判断はご自身の責任でお願いします。


