バックテスト:戦略を検証するための完全ガイド
理論上は素晴らしく見える戦略も、実際の運用では崩れることがあります。バックテストは、厳密に行われることを条件に、優れたアイデアと幻想を切り分けます。本ガイドでは、データの選択、重要なメトリクス、避けるべき落とし穴、そして差を生むツールという完全な手法をお届けします。

理論上は素晴らしく見える戦略も、実際の運用では崩れることがあります。バックテストは、厳密に行われることを条件に、優れたアイデアと幻想を切り分けます。本ガイドでは、データの選択、重要なメトリクス、避けるべき落とし穴、そして差を生むツールという完全な手法をお届けします。
要点
バックテストとは、戦略を過去データに適用し、その堅牢性を見積もる手法です。適切に行えば、実際のドローダウン、リスク/リワード比、戦略が崩れる条件が明らかになります。不適切に行えば、過去には「完璧」でも実運用では1か月ももたない戦略が生まれます。両者の差は、ほとんどのアマチュアトレーダーが見落としている5〜6個の方法論的原則にかかっています。
なぜ実運用前にバックテストを行うのか
3つの根本的な理由:
- 価値のないアイデアを除外する。 10年間で60%のドローダウンを出す戦略は、リターンに関わらず実用に耐えません。バックテストはそれを5分で明らかにします。
- マネー・マネジメントを校正する。 トレードの実際の分布(平均利益、平均損失、連続損失の長さ)を知ることで、ポジションを適切にサイズ調整できます。
- 必要な自信を構築する。 過去の挙動を見ずに戦略を運用すると、最初のドローダウンで諦めることになります。厳密なバックテストは、耐えるための文脈を提供します。
バックテストは将来のパフォーマンスを保証するものではありません。むしろその逆で、誤った「良いアイデア」をはじくフィルターです。バックテストで失敗する戦略が実運用で成功する可能性は極めて低いのです。
堅牢なバックテストの構成要素
データ
| データの種類 | 典型的な粒度 | ユースケース |
|---|---|---|
| OHLC日足 | 1日1本のローソク | スイング、ポジショントレード |
| OHLCイントラデイ | 1分〜1時間 | デイトレード |
| ティックデータ | 各約定 | HFT、スキャルピング |
| 板情報 | 板のスナップショット | マーケットメイク、アービトラージ |
ほとんどのトレーダーには、クリーンな日足またはH1データで十分です。信頼できる情報源は、Bloomberg、Refinitiv、Polygon.io、Alpaca、EODHD、ブローカー自身(Interactive Brokers、MetaTrader)です。一般向けサイトからスクレイピングされた、しばしば不完全なデータは避けてください。
3つの事前処理が不可欠です:
- 株式の配当・分割を調整する。
- ギャップ(祝日、停止)を粗い補間なしで埋める。
- 異常値(かつて存在しなかった50%のヒゲなど)を確認する。
ルール
各ルールを曖昧さなく文書化してください。「RSIが低いときに買う」は実行不能です。「日足RSI 14が30を下回ったら終値で買い、70を上回ったら売る」はテスト可能です。
ルールの4つのカテゴリ:
- エントリー:水準とタイミングを伴う正確な条件。
- エグジット:ストップロス、テイクプロフィット、条件付きエグジット。
- マネー・マネジメント:ポジションサイズ、トレードあたりリスク、同時保有数の上限。
- フィルター:トレンド、ボラティリティ、時間帯、曜日、ニュース。
コスト
最も見落とされがちな要素です。年間100トレードを行う戦略について、コストなしでバックテストを行うと、パフォーマンスを5〜15%過大評価します。
組み込むべき構成要素:
- 手数料:ブローカーや銘柄により、1トレードあたり0.5〜5ドル。
- スプレッド:主要FXで1〜2pips、流動性のある先物で1ティック、小型株では0.5%まで。
- スリッページ:イントラデイで通常0.5〜2ティック、ニュース時に発動するストップではそれ以上。
- オーバーナイトファイナンス:レバレッジのかかるCFDや暗号資産。
重要なメトリクス
総リターンだけでは不十分です。誠実な評価のための6つのメトリクス:
| メトリクス | 定義 | 最低許容水準 |
|---|---|---|
| シャープレシオ | リターン / ボラティリティ(年率) | > 1.0(理想は > 1.5) |
| 最大ドローダウン | 期間中の累積最悪損失 | 通常 < 20-25% |
| カルマー比 | 年間リターン / 最大ドローダウン | > 0.5(理想は > 1) |
| 勝率 | 勝ちトレードの% | R/Rに応じて、通常35-60% |
| 平均R/R | 平均利益 / 平均損失 | 通常 > 1.5 |
| プロフィットファクター | 利益合計 / 損失合計 | > 1.5(理想は > 2) |
平均R/Rが3:1であれば、勝率30%でも非常に利益を出せる戦略はあり得ます。逆に、R/Rが0.3:1で勝率80%の戦略は危険です(たった一度の悪いトレードで長い連勝が台無しになります)。
知っておくべき落とし穴
1. オーバーフィッティング
最も狡猾な落とし穴です。200通りのパラメータ組み合わせを試し、最良のものを採用すると、過去履歴でシャープ3.5を示す戦略ができあがる。しかし3か月後の実運用では15%を失います。
症状:
- 最適化期間では優秀なパフォーマンス、それ以外では平凡。
- パラメータに対する極端な感度:EMA 21は機能するがEMA 22は破綻する。
- 調整可能なパラメータが4〜5を超える。
- 出来すぎな成績(単純な戦略でシャープ > 3)。
対策:
- データを分割する:70%を学習、30%を検証。前者で最適化し、後者で検証する。
- ウォークフォワード分析:スライディングウィンドウで最適化し、次の期間で検証する。
- シンプルさを優先する:パラメータは最大2〜3個まで。
- 複数の銘柄でテストする:EUR/USDで機能する戦略はGBP/USDでも耐える必要がある。
2. 生存バイアス
現在のS&P 500構成銘柄でバックテストすると、指数から外れた企業(多くは破綻による)を無視することになります。結果は当時の実際のパフォーマンスを過大評価します。個別株戦略では、過去のユニバース(Compustat、CRSP)を使ってください。
3. ルックアヘッドバイアス
判断時点で利用できなかった情報を使うこと。よくある例:現在進行中のバーが確定する前に、そのバーで移動平均を計算してしまうこと。このバイアスはパフォーマンスを人為的に押し上げます。
4. 代表性のない市場環境
2017〜2021年だけでバックテストすると、持続的な上昇相場の環境を無視してしまいます。2022年には、こうした「無敵」の戦略の多くが破綻しました。少なくとも完全な1サイクル(2008年または2020年を含む10〜15年)をカバーしてください。
最近の上昇相場だけをカバーするバックテストは、バックテストではなく幻想です。テストの価値は、市場が逆風のときに戦略がどう振る舞うかを明らかにする能力にあります。
2026年に利用可能なツール
| ツール | 強み | 弱み | 価格 |
|---|---|---|---|
| TradingView(Pine Script) | 巨大なコミュニティ、素早い習得 | 無料版でバックテスト期間に制限 | 無料 + 月15-60ドル |
| MetaTrader(MQL4/5) | FX標準、ブローカー経由で無料 | 独自言語、デバッグが面倒 | 無料 |
| Python(Backtrader、vectorbt、zipline) | 完全な柔軟性、データサイエンスのエコシステム | 学習コスト、インフラ | 無料 + データコスト |
| QuantConnect | クラウド、マルチアセット、広大なデータユニバース | 本格的な機能にはサブスク | 無料 + 月25-200ドル |
| Obside | ノーコード、20年分のバックテストが1分未満、AIコパイロット | 裁量×システマティック戦略向けに設計 | フリーミアム |
選択はあなたの技術レベルと目的によります。スピードとアクセスのしやすさなら、ObsideかTradingView。最大限の柔軟性なら、vectorbtやBacktraderを使うPython。
3つのアプローチ:手動、コード化、自動化
手動バックテスト。 過去チャートに手作業でルールを適用します。戦略を理解する教育目的には有用です。真剣な検証にはあまりに遅く、認知バイアスの影響を受けやすい(3年分のデータで通常50〜100時間)。
コード化バックテスト。 ルールを実装するコード(Python、Pine、MQL)を書きます。正確で再現性がありますが、開発スキルが必要です。単純な戦略で3〜15時間を見込んでください。
AIアシスト・バックテスト。 戦略を自然言語で記述すると、AIがコードを生成しテストを実行します。合計で数分。高度な言語モデルの普及に伴い、2024年から一般化しているアプローチです。
バックテストから本番運用へ
検証済みのバックテストは必要条件ですが十分条件ではありません。運用前にさらに4ステップ:
- ペーパートレード:30〜90日のリアルタイム模擬運用で、執行レイテンシーを検証しパフォーマンスを確認する。
- ウォークフォワード・ライブ:象徴的な資金(口座の1〜5%)で1〜3か月運用する。
- 段階的なスケール拡大:パフォーマンスが期待通りなら30日ごとにサイズを倍に。
- 継続的なモニタリング:異常なドローダウンや期待からの乖離に対するアラート。
この進め方により、不快な驚き(想定より悪い実スリッページ、ブローカーのレイテンシー、バックテストでカバーされていないイベント)のリスクを低減します。
Obsideで数分のうちに戦略をテスト
従来のバックテストは数日かかります:データ収集、コーディング、デバッグ、分析。Obsideなら、戦略を自然言語で記述し、20年分のマルチアセット履歴でバックテストを実行し、1分未満でシャープ、ドローダウン、堅牢性が得られます。AIコパイロットが結果を説明し、文脈に沿った改善を提案します。無料でObsideアカウントを作成し、今夜にも最初の戦略を検証しましょう。
教育コンテンツのみ。投資助言を構成するものではありません。トレードには、元本毀損の可能性を含むリスクがあります。
FAQ
理想的には10〜15年で、少なくとも一度の大きな危機(2008年、2020年)を含めるべきです。簡易な実証なら5年でも足りますが、その範囲で強い結論を導かないでください。イントラデイ戦略は絶対年数は少なくて済みますが、より多くのデータ(分足やティック単位)が必要です。