ai-stock-agent
あなたのバックテストが勝って見える理由
バックテスト最大の欠陥はコードのバグではない。データに居ない企業 — 死んだから居ない企業 — だ。私たちは金を払って彼らを戻した。いくつかの戦略は、彼らと一緒に死んだ。
2026年6月 · 約6分
無料データに最初から入っている欠陥
典型的な無料APIから価格を取ると、手に入るのは今日取引されている銘柄だ。数千のティッカー、数十年の履歴 — 完全に見える。だがそれは勝者によって書かれた歴史だ。2014年に上場廃止した企業や2009年に倒産した企業は、たいていリストそのものに居ない。
その銘柄群の上のバックテストは、静かに「生存」を前提条件にしている。検証しているのは「割安株を買っていたらどうなったか」ではない。「今では生き残ったと分かっている割安株を買っていたらどうなったか」だ。この2つはまったく違う問いで、後者の答えは必ず前者より良い。
なぜこのバイアスは必ず自分に甘いのか
生存者バイアスは、有利にも不利にも振れるランダムなノイズではない。常に同じ方向に押す、秤に乗せた親指だ。データから消えやすい銘柄とはまさに破滅的な敗者のことなので、彼らを取り除けばあらゆる平均が機械的に持ち上がる。
そして最も残酷に効くのが、一番魅力的に聞こえる戦略だ。「叩き売られた割安株を買う」は生存データの上では天才的に見える。なぜなら、叩き売られたままゼロになった銘柄 — 戦略を破壊したはずの銘柄 — は、そもそも買える場所に存在しないからだ。バックテストは「回復した敗者」の中からしか選べない。
直すには何が要るか
解決策はポイントインタイムのデータだ。過去のすべての日付について、その日に実在し売買可能だった銘柄の正確な集合 — 後に死んだ銘柄も含み、上場廃止時のリターンまで計上したもの。これは現在のティッカー一覧からは復元できない。当時の構成を当時のまま記録したアーカイブから来るしかない。
本プロジェクトは日本株の有料アーカイブを購入し、パネルをその方式で再構築した。上場廃止銘柄込み、10年分、生存者バイアスなし。これは本研究で最も重要なデータ上の決断だった — 「正しいデータを持っていなかっただけ」という言い訳が、否定的な結果に対して二度と成立しないようにするためでもある。
死者を戻すと何が変わったか
生存データの上では魅力的に見えた戦略のいくつかが、誠実なパネルの上では機能しなくなった。その変わり方は仕組みどおりだった。問題を抱えた企業の回復に暗黙に賭けるタイプのアイデアほど大きく崩れた。誠実なデータには、回復しなかった問題企業が入っているからだ。
本サイトの主要な数字が、似たアイデアについてネットに出回るバックテストより「悪く」見えることがあるのも同じ理由だ。悪いのではない。他の数字にまだ含まれているお世辞を、差し引いてあるだけだ。
野生のバックテストで見抜く方法
バックテストを見たら、まず一つだけ問えばいい。「その銘柄群はどこから来たのか」。答えが現在の指数構成銘柄や無料の価格APIなら、結果は水増しされていると見なすべきだ — 大型株のモメンタム系なら中程度、割安・小型・困窮銘柄を買うものなら深刻に。
関連する兆候: データ提供元の履歴開始日とちょうど同じ日から始まるリターン、上場廃止への言及ゼロ、「いつ時点か」を言わない「全銘柄で検証」。誠実な研究はデータソースを名指しし、ポイントインタイムという言葉を使う。その言葉が無ければ、秤にはたぶん親指が乗っている。
生き残る、退屈な結論
時価総額加重インデックスには、この問題がそもそも存在しない。実在するものを実在するまま持ち、新顔を自動で加え、死者を自動で外す。インデックスが誠実な検証で打ち負かしにくい理由の一部はこれだ。本研究は別の角度から何度も同じ結論に戻ってくる。主張されるエッジの多くは測定の産物であり、誠実に測ったときに残るものがインデックスである。
関連用語
本記事は過去データのシミュレーションに基づく研究の解説であり、投資助言ではありません。過去の分布は将来の結果を保証しません。投資判断はご自身の責任で行ってください。
ai-stock-agent