バックテストで騙される典型例と実戦で使える検証手順

システムトレード
スポンサーリンク
【DMM FX】入金
  1. バックテストは便利だが、最も簡単に投資家を騙す道具でもあります
  2. 典型例1:未来の情報を使ってしまうルックアヘッドバイアス
    1. 実践的な対策
  3. 典型例2:上場廃止銘柄を除外してしまうサバイバーシップバイアス
    1. 実践的な対策
  4. 典型例3:手数料、スリッページ、税金を無視している
    1. 具体例
    2. 実践的な対策
  5. 典型例4:パラメータをいじりすぎて過去にだけ最適化している
    1. 危険なサイン
    2. 実践的な対策
  6. 典型例5:検証期間が相場環境に偏っている
    1. 実践的な対策
  7. 典型例6:取引回数が少なすぎるのに優位性があると思い込む
    1. 実践的な対策
  8. 典型例7:最大ドローダウンを軽視している
    1. 実践的な対策
  9. 典型例8:銘柄の流動性を無視している
    1. 実践的な対策
  10. 典型例9:含み益ベースの成績を過信している
    1. 実践的な対策
  11. 典型例10:勝率だけを見て期待値を見ていない
    1. 期待値の見方
  12. 実戦で使えるバックテスト検証手順
    1. 手順1:売買ルールを文章で明確にする
    2. 手順2:コスト込みで検証する
    3. 手順3:期間を分けて確認する
    4. 手順4:アウトオブサンプルを使う
    5. 手順5:パラメータの安定性を見る
    6. 手順6:最悪ケースを想定する
    7. 手順7:小額でフォワードテストする
  13. 投資家が見るべきバックテスト指標
  14. バックテスト結果を実運用に落とし込む資金管理
  15. バックテストを信用してよい条件
  16. 個人投資家向けの簡易チェックリスト
  17. まとめ:バックテストは答えではなく、疑うための道具です

バックテストは便利だが、最も簡単に投資家を騙す道具でもあります

システムトレードやルールベースの投資を始めると、多くの人が最初にバックテストへ強い期待を持ちます。過去の株価データに売買ルールを当てはめ、利益が出たかどうかを確認できるため、感覚だけで売買するより合理的に見えるからです。たとえば「25日移動平均線を上抜けしたら買い、下抜けしたら売り」「RSIが30以下なら買い、70以上なら売り」「決算発表後にギャップアップした銘柄を翌日寄り付きで買う」といったルールを過去10年分で検証すれば、勝率、平均利益、最大ドローダウン、損益曲線などを確認できます。

しかし、ここに大きな罠があります。バックテストは過去に対して最適化された結果を簡単に作れます。つまり、未来に通用する戦略ではなく、過去データにだけ都合よく合った戦略を「勝てる戦略」に見せてしまうのです。これは投資初心者だけの問題ではありません。経験者でも、損益曲線が右肩上がりで、プロフィットファクターが高く、勝率も高い結果を見ると、つい「これは使える」と判断してしまいます。

バックテストで重要なのは、良い数字を出すことではありません。その数字がどれだけ実運用に近い条件で得られたのか、偶然ではなく構造的な優位性に基づいているのか、相場環境が変わっても耐えられるのかを見抜くことです。本記事では、バックテストで騙される典型例を具体的に整理し、個人投資家が実際に使える検証手順まで落とし込みます。

典型例1:未来の情報を使ってしまうルックアヘッドバイアス

バックテストで最も危険なのが、知らないうちに未来の情報を使ってしまうケースです。これをルックアヘッドバイアスといいます。たとえば、ある銘柄の終値が25日移動平均線を上回ったら、その日の終値で買ったことにするバックテストがあります。一見すると普通に見えますが、その日の終値が確定するのは大引け後です。大引け前に終値がいくらになるかは分かりません。それにもかかわらず、確定後の終値を見て、その同じ終値で約定したことにすると、実際には不可能な売買をしていることになります。

同じ問題は決算データでも起きます。たとえば「営業利益が前年比20%以上増えた企業を決算発表日に買う」というルールを作った場合、決算情報が市場に出た時刻を考慮しなければなりません。引け後に発表された決算を、その日の終値で買ったことにすると、未来を見て売買しているのと同じです。実際には翌営業日の寄り付き以降でしか反応できません。

実践的な対策

売買判定に使う情報と約定価格の時間順序を必ず分けます。日足であれば、当日終値を使ってシグナルを判定した場合、最短でも翌営業日の寄り付きまたは翌営業日の終値で約定したと仮定します。決算やIRを使う場合は、発表時刻が場中か引け後かを分け、引け後発表なら翌営業日以降の価格で検証します。これだけで、見かけ上の成績が大きく落ちることは珍しくありません。しかし、それが現実に近い成績です。

典型例2:上場廃止銘柄を除外してしまうサバイバーシップバイアス

現在も上場している銘柄だけを対象にバックテストすると、過去に倒産、上場廃止、吸収合併、業績悪化で消えた銘柄が検証から抜け落ちます。これをサバイバーシップバイアスといいます。たとえば「時価総額100億円未満の小型株を分散して買う」という戦略を、現在残っている銘柄だけで10年前から検証すると、非常に良い成績になる場合があります。なぜなら、10年前に存在していたが、その後ひどい下落で消えた銘柄が除外されているからです。

これは小型株、低位株、バイオ株、赤字グロース株、テーマ株の検証で特に危険です。過去の成功銘柄だけを見ると「小型株は夢がある」と感じますが、実際にはその裏に多くの失敗銘柄があります。失敗銘柄を消したデータで検証すれば、当然ながら過去の成績は美しく見えます。

実践的な対策

可能であれば、過去時点で存在していた銘柄リストを使います。難しい場合でも、検証対象を「現在の勝ち残り銘柄だけ」に限定していないかを確認します。個人投資家が完全なデータを用意するのは簡単ではありませんが、少なくとも小型株戦略では、倒産や上場廃止をゼロとして扱うバックテストを信用しすぎてはいけません。現実的には、一定割合の銘柄に大幅下落や流動性低下を想定したストレスを加えるだけでも、成績の見え方は大きく変わります。

典型例3:手数料、スリッページ、税金を無視している

バックテストでは、売買コストを入れるかどうかで結果が大きく変わります。特に短期売買では、手数料よりもスリッページの影響が深刻です。スリッページとは、想定価格と実際の約定価格のズレです。たとえば、前日終値1,000円の銘柄を翌日寄り付きで買うルールを作っても、実際には寄り付きが1,030円になるかもしれません。薄商い銘柄なら、成行注文を出しただけで不利な価格で約定することもあります。

バックテスト上では1回あたり平均利益が1.2%ある戦略でも、片道0.3%、往復0.6%のスリッページが発生すれば、利益の半分が消えます。さらに税金や手数料を考慮すると、実際の手残りはかなり小さくなります。勝率が高くても平均利益が小さい戦略ほど、コストに弱くなります。

具体例

ある短期戦略が、過去5年で勝率58%、平均利益0.8%、平均損失0.7%、取引回数1,000回だったとします。コストなしでは一見プラスに見えます。しかし、往復スリッページを0.4%、手数料等を0.1%見込むと、1回あたり0.5%が削られます。平均利益が0.8%しかないなら、実運用ではほとんど優位性が残りません。実際には、急騰銘柄ほど約定価格が不利になりやすいため、見かけよりさらに悪化する可能性があります。

実践的な対策

最低でも、売買代金、流動性、注文方法に応じたコストを入れます。大型株の日足スイングなら往復0.1〜0.3%、小型株や材料株なら往復0.5〜1.5%程度のストレスをかけて確認する価値があります。デイトレや寄り付き売買では、想定より不利な価格で約定する前提を置きます。コストを少し入れただけで崩れる戦略は、実戦向きではありません。

典型例4:パラメータをいじりすぎて過去にだけ最適化している

バックテストでよくある失敗が、パラメータを何度も変更して最も良い結果を探すことです。たとえば移動平均線なら、5日、10日、15日、20日、25日、50日などを試し、損切り幅も3%、5%、7%、10%を試し、利確幅も5%、8%、12%、15%を試します。その中で最も利益が大きい組み合わせを採用すると、過去データに合わせ込んだだけの戦略になりやすくなります。これがカーブフィッティングです。

カーブフィッティングされた戦略は、バックテスト上では驚くほど美しい損益曲線になります。しかし、未来の相場では機能しにくいです。なぜなら、その戦略が相場の本質的な歪みを捉えているのではなく、過去に偶然発生した値動きの癖に合わせているだけだからです。

危険なサイン

パラメータを少し変えただけで成績が急落する戦略は危険です。たとえば25日移動平均線では利益が出るが、24日や26日では大きく悪化するなら、それは本質的な優位性ではなく、過去データへの過剰適合である可能性が高いです。本当に強い戦略は、パラメータを多少ずらしても成績が大きく崩れません。

実践的な対策

最良パラメータだけを見るのではなく、周辺パラメータの成績分布を確認します。たとえば損切り幅5%が最適なら、4%、6%、7%でも大きく崩れないかを見ます。移動平均線25日が良いなら、20日、30日、35日でも一定の利益が残るかを確認します。利益が一点だけ突出している場合は、採用を避ける判断が現実的です。

典型例5:検証期間が相場環境に偏っている

バックテストの結果は、検証期間に大きく左右されます。上昇相場だけで検証した順張り戦略は強く見えます。低金利でグロース株が買われ続けた期間だけを使えば、成長株投資は簡単に見えます。逆に、レンジ相場だけで検証した逆張り戦略は高勝率に見えます。しかし、相場環境が変わると急に機能しなくなります。

たとえば、NASDAQ系のレバレッジETFを上昇相場中心の期間でバックテストすると、長期保有が極めて有利に見えることがあります。しかし、金利上昇局面、急落局面、長期横ばい局面を含めると、ドローダウンの大きさや回復期間の長さが見えてきます。株式戦略でも同じです。マザーズ指数が強い期間だけで小型グロース戦略を検証すれば、誰でも勝てるように見えます。

実践的な対策

検証期間を、上昇相場、下落相場、横ばい相場、高ボラティリティ相場、低ボラティリティ相場に分けて確認します。全期間の損益だけでなく、環境別の成績を見ます。特に重要なのは、負ける局面を把握することです。勝てる時期を知るより、どの環境で壊れるかを知る方が実運用では重要です。

典型例6:取引回数が少なすぎるのに優位性があると思い込む

バックテストで大きな利益が出ていても、取引回数が少なすぎる場合は注意が必要です。たとえば10年間で20回しか売買していない戦略があり、そのうち2回の大勝ちで利益の大半を稼いでいるとします。この場合、次の10年でも同じように大勝ちが発生するとは限りません。少数の取引結果は偶然の影響を強く受けます。

特にイベント投資、IPO、TOB思惑、テーマ株、決算ギャップなどは取引回数が少なくなりやすいです。数回の成功事例だけを見て「このパターンは勝てる」と判断すると、実運用で期待と違う結果になりやすくなります。

実践的な対策

取引回数が少ない戦略では、勝率や利益率よりも事例の中身を確認します。どの銘柄で勝ったのか、なぜその利益が出たのか、同じ条件が今後も起こるのかを見ます。また、利益上位数件を除外した場合の成績も確認します。上位5%の取引を除いただけで戦略全体が赤字になるなら、その戦略は再現性に疑問があります。

典型例7:最大ドローダウンを軽視している

最終利益が大きいバックテストでも、途中で資産が半分以下になるような戦略は、実運用では続けられない可能性が高いです。最大ドローダウンとは、資産のピークからどれだけ下落したかを示す指標です。たとえば100万円が180万円まで増えた後、90万円まで落ちた場合、ピークからの下落率は50%です。その後300万円まで増えたとしても、実際に運用している人が50%の含み損期間を耐えられるかは別問題です。

多くの投資家は、バックテストの損益曲線を冷静に見ているときは「これくらい耐えられる」と考えます。しかし、実際に自分のお金が減っている場面では、同じ判断はできません。さらに、過去最大ドローダウンは未来の最大値ではありません。実運用では、過去の最大ドローダウンを超える下落が起きる前提で考える必要があります。

実践的な対策

最大ドローダウンの1.5倍から2倍を想定します。バックテスト上の最大ドローダウンが25%なら、実運用では40〜50%程度まで悪化する可能性を考えます。その下落に耐えられないなら、ロットを下げるか、戦略そのものを見直します。利益率よりも、継続可能な資金配分を優先するべきです。

典型例8:銘柄の流動性を無視している

小型株や急騰株のバックテストでは、流動性の問題がよく無視されます。理論上は100万円分買えることになっていても、実際の板が薄ければ、想定価格では約定できません。1日の売買代金が3,000万円しかない銘柄に対して、500万円の注文を入れれば、自分の注文で価格を動かしてしまう可能性があります。

バックテストでは、終値や始値で希望数量をすべて約定したことにしがちです。しかし、現実の市場では、出来高、板の厚さ、値幅制限、特別気配、ストップ高・ストップ安、寄らずの展開などがあります。特に「前日ストップ高銘柄を翌日買う」「出来高急増銘柄を寄り付きで買う」といった戦略では、バックテスト通りに約定するとは限りません。

実践的な対策

1回の注文金額を、直近平均売買代金の一定割合以下に制限します。目安としては、個人投資家でも売買代金の1〜3%を超える注文は慎重に扱うべきです。さらに、出来高急増日の価格だけでなく、普段の出来高も確認します。急騰日だけ流動性が増えている銘柄は、売りたいときに流動性が消えることがあります。

典型例9:含み益ベースの成績を過信している

バックテストでは、ポジションを保有中の含み益をそのまま評価して損益曲線を作ることがあります。長期投資では自然な処理ですが、流動性の低い銘柄や急騰株では注意が必要です。終値では大きな含み益が出ていても、実際にその価格で売れるとは限りません。急騰後に出来高が急減すれば、利確しようとしても価格が大きく下がる可能性があります。

また、含み益が出ている状態と、実際に利益確定できた状態は違います。短期トレードでは、出口ルールが曖昧な戦略ほど、バックテスト上の利益が実運用で消えやすくなります。「上がったら適当に利確する」というルールは検証不能です。出口が曖昧なまま入口だけを検証しても、実戦では役に立ちません。

実践的な対策

入口ルールと同じくらい出口ルールを明確にします。利確、損切り、保有日数、トレーリングストップ、決算前後の扱い、ギャップダウン時の処理を決めます。含み益が最大化された地点ではなく、実際に売るルールで利益が残るかを確認します。

典型例10:勝率だけを見て期待値を見ていない

勝率が高い戦略は魅力的に見えます。しかし、投資で重要なのは勝率だけではなく期待値です。勝率80%でも、勝つときに1%しか取れず、負けるときに10%失うなら、長期的には厳しい戦略になります。逆に勝率40%でも、勝つときに大きく取り、負けるときに小さく抑えられれば利益は残ります。

バックテストで騙される人は、勝率、総利益、最大利益だけを見がちです。しかし、実際に見るべきなのは、平均利益、平均損失、損益比率、連敗数、最大ドローダウン、取引回数、月次損益のばらつきです。特に、負けトレードの大きさが不安定な戦略は危険です。普段は小さく勝つが、たまに大きく負ける戦略は、バックテスト期間が短いと本当のリスクが見えません。

期待値の見方

期待値は、単純には「勝率×平均利益 − 負率×平均損失」で考えられます。たとえば勝率55%、平均利益4%、平均損失3%なら、期待値は0.55×4% − 0.45×3% = 0.85%です。1回あたり平均して0.85%の優位性がある計算です。ただし、ここからコストとスリッページを引く必要があります。コストを引いた後でもプラスが残るかを確認しなければ意味がありません。

実戦で使えるバックテスト検証手順

ここからは、個人投資家が実際に使える検証手順を整理します。重要なのは、いきなり最適なルールを探さないことです。まず仮説を作り、その仮説が市場構造として合理的かを考え、次に検証し、最後に実運用に近い条件で耐久性を確認します。

手順1:売買ルールを文章で明確にする

最初に、売買ルールを誰が読んでも同じ結果になる形で書き出します。「強そうな銘柄を買う」「下がりすぎたら買う」では検証できません。「過去20日高値を終値で上抜けし、当日出来高が20日平均の2倍以上、かつ時価総額300億円以上、翌営業日寄り付きで買う」のように条件を明確にします。出口も同じです。「利益が出たら売る」ではなく、「購入価格から8%上昇で利確、5%下落で損切り、どちらにも到達しなければ10営業日後の寄り付きで売却」と決めます。

手順2:コスト込みで検証する

最初から手数料とスリッページを入れます。コストなしの成績は参考程度にしかなりません。特に短期売買では、コストを入れる前のプロフィットファクターが1.2程度なら、実運用ではほぼ消える可能性があります。最低でも保守的なコストを入れ、それでも利益が残るかを確認します。

手順3:期間を分けて確認する

全期間の成績だけでなく、前半、後半、上昇相場、下落相場、横ばい相場に分けます。たとえば2013〜2017年、2018〜2020年、2021〜2023年、2024年以降のように分けると、どの時期に強く、どの時期に弱いかが見えます。全期間では利益が出ていても、直近数年で機能していない戦略は慎重に扱うべきです。

手順4:アウトオブサンプルを使う

過去データの一部をルール作成用、残りを確認用に分けます。たとえば2014〜2020年でルールを作り、2021〜2025年で確認します。ルール作成に使っていない期間でも利益が残るなら、過去への過剰適合リスクは少し下がります。逆に、作成期間だけ強く、確認期間で崩れるなら、その戦略は採用しない方が無難です。

手順5:パラメータの安定性を見る

最も良い数値だけではなく、周辺の数値でも結果が安定しているかを確認します。損切り5%、利確8%、保有10日が最適だった場合、損切り4〜7%、利確6〜12%、保有7〜15日でも大きく崩れないかを見ます。安定した戦略は、多少条件を変えても利益が残ります。逆に、特定の組み合わせだけ勝つ戦略は危険です。

手順6:最悪ケースを想定する

バックテストの最大ドローダウン、最大連敗、最悪月次損益を確認します。そして、それをそのまま信じず、さらに悪化する前提で資金管理を考えます。過去最大ドローダウンが20%なら、実運用では30〜40%まで想定します。最大連敗が8回なら、12〜15回程度まで想定します。それでも継続できるロットに下げることが重要です。

手順7:小額でフォワードテストする

バックテストで良い結果が出ても、すぐに大きな資金を入れるべきではありません。まずは小額で、実際の約定、スリッページ、心理的負担、注文の出しやすさを確認します。フォワードテストとは、未来の相場で実際にルールを動かして確認することです。紙上の検証では見えない問題が必ず出ます。注文を出すタイミングが難しい、思ったより約定しない、連敗時にルールを守れない、などです。

投資家が見るべきバックテスト指標

バックテスト結果を見るときは、総利益だけを見てはいけません。最低限確認すべき指標があります。まずプロフィットファクターです。これは総利益を総損失で割った数値です。1を超えていれば利益が損失を上回りますが、1.05や1.10程度ではコストや誤差で消える可能性があります。短期売買なら、保守的なコスト込みで1.2以上は欲しいところです。

次に最大ドローダウンです。利益率が高くても、ドローダウンが大きすぎる戦略は継続困難です。年率リターンと最大ドローダウンのバランスを見る必要があります。たとえば年率20%でも最大ドローダウン60%なら、精神的にも資金管理上も厳しいです。一方、年率10%でも最大ドローダウン10%程度なら、継続しやすい戦略と言えます。

取引回数も重要です。取引回数が少なすぎると統計的な信頼性が低くなります。もちろん長期投資では取引回数が少ないのは自然ですが、その場合は定量結果だけでなく、投資仮説の妥当性を重視します。短期売買であれば、最低でも数百回程度のサンプルがある方が判断しやすくなります。

さらに、月次損益の安定性を確認します。最終利益が同じでも、ほとんどの月がマイナスで数回の大勝ちだけに依存している戦略と、比較的安定して利益を積み上げる戦略では、運用のしやすさが違います。個人投資家にとっては、期待リターンだけでなく、継続できるかどうかが極めて重要です。

バックテスト結果を実運用に落とし込む資金管理

戦略が良さそうに見えても、資金管理を誤ると失敗します。たとえば、過去最大ドローダウンが15%の戦略に資金の100%を入れた場合、実運用で30%下落することもあります。さらに、同じタイミングで生活資金の不安や市場全体の暴落が重なると、冷静に続けられなくなります。

実運用では、1つの戦略に全資金を入れないことが基本です。複数戦略、複数資産、複数時間軸に分けることで、特定の戦略が不調でも全体が壊れにくくなります。たとえば、短期順張り、逆張り、高配当、インデックス積立、現金を組み合わせると、相場環境への依存度を下げられます。

また、バックテスト上の1回あたり損失が小さくても、連敗は必ず起こります。1回の損失が資産の2%で、10連敗すれば単純計算で約20%近い下落になります。心理的に耐えられないなら、1回あたりのリスクを1%以下に下げるべきです。投資で重要なのは、最高のリターンを狙うことではなく、退場せずに続けることです。

バックテストを信用してよい条件

バックテストを完全に否定する必要はありません。むしろ、正しく使えば非常に有効な道具です。信用できるバックテストには共通点があります。第一に、売買ルールが明確で、裁量の余地が少ないことです。第二に、未来情報を使っていないことです。第三に、手数料とスリッページが保守的に入っていることです。第四に、複数の相場環境で大きく崩れていないことです。第五に、パラメータを少し変えても成績が安定していることです。

さらに、戦略の背景に合理的な仮説があることも重要です。たとえば「決算上方修正後、短期的に機関投資家の買いが入りやすい」「出来高を伴う高値更新は需給が改善している可能性がある」「低流動性銘柄の急騰はスリッページが大きくなりやすい」といった市場構造を説明できる戦略は、単なる数字合わせより信頼しやすいです。

逆に、理由は分からないが過去だけ勝っている戦略は慎重に扱うべきです。過去に勝っていた理由を説明できない場合、負け始めたときに継続すべきか停止すべきか判断できません。実運用では、この判断不能が大きなストレスになります。

個人投資家向けの簡易チェックリスト

バックテスト結果を見たら、次の項目を確認してください。ひとつでも重大な問題がある場合、その戦略をすぐに実運用するのは危険です。

まず、シグナル判定に使った情報が、その時点で本当に入手可能だったかを確認します。次に、約定価格が現実的かを見ます。当日終値で判定して当日終値で買っていないか、引け後発表の材料を当日中に使っていないかを確認します。

次に、コストを入れても利益が残るかを見ます。特に短期売買では、コストをやや厳しめに入れてもプラスでなければ実戦向きではありません。次に、取引回数と利益の偏りを見ます。少数の大勝ちだけに依存していないか、直近でも機能しているかを確認します。

さらに、最大ドローダウンと連敗数を見ます。その2倍程度の悪化に耐えられる資金配分になっているかを考えます。最後に、パラメータを少し変えても成績が残るかを確認します。このチェックを通過した戦略だけを、小額でフォワードテストする価値があります。

まとめ:バックテストは答えではなく、疑うための道具です

バックテストは、投資戦略を検証するうえで強力な道具です。しかし、使い方を間違えると、現実には通用しない戦略を「勝てる戦略」と誤認させます。ルックアヘッドバイアス、サバイバーシップバイアス、コスト無視、カーブフィッティング、相場環境の偏り、流動性の無視、勝率偏重など、落とし穴は多くあります。

重要なのは、美しい損益曲線を探すことではありません。その損益曲線が、どれだけ現実に近い条件で作られたのかを疑うことです。良いバックテスト結果を見たときほど、厳しいコストを入れ、期間を分け、パラメータをずらし、最悪ケースを想定する必要があります。

個人投資家にとって、バックテストの目的は「絶対に勝てる戦略」を見つけることではありません。負ける条件を把握し、自分が継続できる資金量に調整し、実運用で壊れにくいルールを作ることです。バックテストを信じるのではなく、バックテストを疑いながら使う。この姿勢を持てる投資家ほど、長期的に市場で生き残りやすくなります。

コメント

タイトルとURLをコピーしました