バックテストとは — お金を入れる前に、過去で戦略を試す方法

バックテストは、一文でこう整理できます。

自分の売買ルールを過去のデータ全体に当てはめ、そのルール通りに一つ残らず売買していたらどうだったかを、すべて数えてみること。

肝心なのは後半です。「一つ残らず、すべて」。うまくいった数件を選んで眺めるのではなく、ルールに当たる全ケースを数えます。

そしてバックテストの本当の目的は、多くの人の期待とは少し違います。儲かる戦略を見つける道具というより、儲からない戦略を実際にお金を入れる前にふるい落とす道具に近いのです。


なぜ目ではなく、バックテストなのか

前回の記事で、チャート上で完璧に見えたパターンをルール化し、837回すべて検証した話を書きました。結果は損益比1.03 — 実質トントンでした。目で見たときは完璧だったのに、です。

目は大きく上がった事例に先に行き、同じ形から下がった数百件は視界から消えます。だから「それらしいか」を目に聞くのではなく、「全部数えるとどうか」を機械に聞く。それがバックテストです。


バックテストは4つのステップで回ります

バックテストとは — お金を入れる前に、過去で戦略を試す方法

ステップ1 — ルール化。 感覚を、機械が数えられる条件に変えます。「押されてから跳ねたら買う」ではバックテストになりません。「ボリンジャーバンドが収縮した後、上限を突破したら買う」のように、コンピュータがYes/Noで判定できる形にします。

ステップ2 — 全数実行。 その条件に当たる全ケースを売買します。きれいな事例だけ選んだ瞬間、バックテストではなく自己確信の収集になります。

ステップ3 — コスト反映。 手数料・税・スリッページ(注文価格と実際の約定価格の差)を差し引きます。これが想像より大きい。前回の実測では、同じ戦略が日足ではトントンなのに、5分足に下げると年-30%になりました。売買が増えるほど、往復コスト(実測約0.23%+スリッページ)が利益を削るからです。

ステップ4 — 成績表を読む。 リターンだけでなく、勝率・損益比・MDDを一緒に見ます。


成績表で見るべき三つ

バックテストとは — お金を入れる前に、過去で戦略を試す方法
  • 勝率 — 勝った売買の割合。高ければ良いわけではありません。小さく100回勝って大きく1回負ける戦略は、勝率が高くても口座が溶けます。
  • 損益比(プロフィットファクター) — 稼いだ金額を失った金額で割った値。1.0がトントン、1.0未満なら勝つ回数が多くても損です。勝率より先に見る値です。
  • MDD(最大ドローダウン) — 口座が高値から最大何%沈んだか。リターンが同じでもMDD-50%なら、大半は途中で耐えられず降ります。「自分が耐えられる大きさか」を問う指標です。

最大の落とし穴 — 過剰最適化

バックテストとは — お金を入れる前に、過去で戦略を試す方法

バックテストには致命的な落とし穴が一つあります。過剰最適化(オーバーフィッティング)、過去の成績が良くなるまで条件を締め続けることです。

条件を一つ足すたびに、過去の成績はほぼ必ず良くなります。過去はすでに決まっているので、条件を十分に締めればどんなデータにも完璧に合わせられるからです。問題は、そうして作った戦略が市場のルールを学んだのではなく、過去を丸ごと暗記しただけだという点です。暗記した試験問題は、二度と出ません。

こんな兆候が見えたら、過剰最適化を疑います。

  • 条件の数が増え続ける(5個、7個、10個…)
  • 条件を一つ外すと成績が崩れ落ちる
  • 特定の期間だけ、やけにうまくいく
バックテストとは — お金を入れる前に、過去で戦略を試す方法

対応の方向は一つです。戦略を作るデータと、試すデータを分けること。 期間を半分に割り、前半でルールを作って後半で試す(ウォークフォワード方式の基本アイデア)、あるいは条件の値を少しずつ変えても成績が大きく変わらないか(頑健性)を確認します。少し触っただけで崩れる戦略は、過去を暗記した戦略です。


残りの落とし穴

バックテストとは — お金を入れる前に、過去で戦略を試す方法
  • 生存バイアス — 成功した事例だけが見える問題。いま市場に生き残った銘柄だけで検証すると、消えた銘柄の失敗が抜け落ちます。(前回の記事がこの話でした。)
  • コスト無視 — 手数料・スリッページを抜くと、特に売買の多い戦略は成績が完全にひっくり返ります。
  • サンプル不足 — 売買回数が数十件なら、その成績は実力ではなく偶然の可能性が高いです。

まとめ

バックテストとは — お金を入れる前に、過去で戦略を試す方法
  • バックテスト = ルール化 → 全数実行 → コスト反映 → 成績表(勝率・損益比・MDD)を読む
  • 目的は儲かる戦略探しより、儲からない戦略をお金を入れる前にふるい落とすこと
  • 過去に完璧なほど疑う — 作るデータと試すデータを分ける
  • バックテストを通過した戦略も未来を保証しません。ただ、落とされた戦略には、だいたい落ちる理由がありました

バックテストとは — お金を入れる前に、過去で戦略を試す方法

면책 안내

本記事は情報提供を目的としたものであり、投資助言ではありません。特定銘柄の売買を推奨するものではなく、投資判断はご自身の責任でお願いします。