検証ラボ ── 2026-08-26
SQXで延べ150万本の戦略を生成して、1本も採用しなかった話(検証第1期の総括)
2026年8月、StrategyQuant X(以下SQX)で戦略の自動生成ラインを組み、延べ約150万本の戦略を生成して、約12,000本をホールドアウト検証にかけました。これを第1期と呼んでいます。
先に結論を書きます。この構成で生成した戦略群に、統計的に検出できる優位性はありませんでした。 1本も実運用に採用せず、投じた資金は0円です。そして私は、この0円こそが第1期の成果だったと考えています。バックテスト上は「勝てるように見える」戦略が山ほどあったにもかかわらず、です。
なぜ好成績に見えたのか、どうやってそれを見破ったのかを記録します。
前提
| 項目 | 設定 |
|---|---|
| 検証実施 | 2026-08-02 〜 2026-08-04(第1期) |
| 対象構成 | USDJPY / H1・M15 / simple戦略 / 遺伝的生成 / long専用 |
| 生成した戦略 | 延べ 約150万本 |
| ホールドアウト検証にかけた戦略 | 約12,000本 |
| 期間分割 | IS 2016-2021 / OOS 2021-2024 / ホールドアウト 2024-2026 |
| コスト前提 | スプレッド0.5pip+スリッページ0.8pip(仮定値・実測ではない) |
| 使用ツール | StrategyQuant X(CLI経由で自動実行) |
鍵になるのは期間分割です。ホールドアウト期間(2024-2026)は、生成にも選抜にも一度も使っていません。 生成と選抜に使った期間の成績はいくらでも「作れる」ため、戦略の実力は未使用期間でしか測れない、という前提で設計しています。
手順
- プロジェクト設定ファイル(.cfx)をスクリプトで生成し、SQXのCLI(sqcli)で戦略を大量生成する
- 結果をCSVで回収し、選抜基準(プロフィットファクター・ドローダウン・取引数など)でふるいにかける
- 生き残った戦略を、一度も使っていないホールドアウト期間で再テストする
- これを5つの独立した角度から行う(未使用期間との相関、堅牢性基準、方向依存の除去、選抜指標の予測力、クロス市場検証)
1つの検証には必ず穴があります。5つの独立した経路がすべて同じ結論に到達すれば、どれか1つが間違っていても結論は揺るがない、という設計です。
結果
5つの経路は、すべて同じ場所に着地しました。
| # | 検証した角度 | 結果 |
|---|---|---|
| 1 | 未使用期間との相関 | -0.055(無相関) |
| 2 | 3つの堅牢性基準 | 順にすべて不合格 |
| 3 | 方向依存を除いた実力 | PF 0.94(コスト分だけ負け) |
| 4 | 選抜指標の予測力 | 期間で符号が反転 |
| 5 | クロス市場検証 | 方向依存は消えない |
決定的な1つの数字
ホールドアウト後半(2025.07-2026.07)のプロフィットファクター中央値です。
| 母集団 | 後半PF中央値 |
|---|---|
| long専用(フィルタなし) | 1.450 |
| long専用+USDペアでの成立を要求 | 1.550 |
| long専用+金/EURJPYでの成立を要求 | 1.430 |
| 両方向+対称(方向依存を除去) | 1.010 |
方向への賭けを取り除くと、成績はぴたりと1.0(損益トントン)になりました。 1.43〜1.55という数字は、戦略の質ではなく「その期間にUSDJPYが上げた」ことだけで説明できます。
劣化の階段
選抜済みの母集団(両方向+対称、1,811本)を3つの期間で見ると、こうなりました。
| 期間 | PF中央値 | 状態 |
|---|---|---|
| IS 2016-2021 | 1.200 | 選抜済み |
| OOS 2021-2024 | 1.060 | 部分的に選抜済み |
| ホールドアウト 2024-2026 | 0.940 | 一度も参照していない |
選択バイアスが剥がれるにつれて単調に劣化し、最後は損益分岐点を割りました。
選抜基準も全滅
「良い戦略を選び出す」側の手段も、未使用データでは機能しませんでした。
| 選抜手段 | 結果 |
|---|---|
| 選別エンジン(PF/DD/取引数) | 逆効果(通過群の生存率18.4% < 非通過群44.4%) |
| Cross Checksを閾値として使う | 対象約48,000本が生存率0%で全滅 |
| Cross Checksを順位付けとして使う | 期間で符号が反転(+0.369 / -0.305) |
| 生成期間の純利益で上位を取る | 母集団により符号が変わる |
もっともらしい基準で厳しく絞るほど、結果はむしろ悪化しました。
解釈
第1期のバックテスト好成績は、次の3つでできていました。
見かけの好成績 = 選択バイアス + 相場の方向 + (優位性 ≈ 0)
150万本も生成して条件で絞れば、偶然良く見えるものは必ず残ります(選択バイアス。仕組みはたくさん試して一番良いのを選ぶと、なぜ嘘の好成績が生まれるのかにまとめました)。そして生成をlong専用にした時点で、成績の大部分は「USDJPYが上がったかどうか」で決まっていました(相場の方向)。この2つを取り除いたら、何も残りませんでした。
はっきりさせておきたいのは、これはSQXという道具の欠陥ではないということです。SQXは設定どおりに150万本を生成し、テストし続けました。問題は使う側の検証設計にあります。long専用で生成した時点で、私は「戦略」ではなく「方向への賭け」を量産していたのです。そして、ホールドアウト検証という潰す仕組みがなければ、私はPF 1.5の戦略群に資金を投じていたはずです。
限界
- 特定構成での結果です。 USDJPY・simple戦略・long専用という第1期の構成に対する結論であり、SQX全般や他の構成を否定するものではありません
- コスト前提は仮定値です。 スプレッド0.5pip+スリッページ0.8pipは実測に基づかない値でした。 その後この点は実測で埋めています。スプレッドが開くのは1日1時間のとおり、 スプレッドは時間帯で中央値5〜8倍・90%点で7〜12倍まで動きます。一定値を置く前提そのものが粗かったことになります
- 期間の切り方に依存します。 2つの期間で結果が一致しても偶然の確率は50%あります。指標の安定性を主張するには最低3期間必要というのが、その後の検証で得た教訓です
- 検証手法そのものの限界についてはWalk-Forwardとモンテカルロが「保証しないこと」も併せて参照してください。ホールドアウト検証も万能ではありません
- 第1期時点の総括であり、構成を変えた第2期の検証を続けています
まとめ
第1期の実績です。
| 項目 | 数値 |
|---|---|
| 生成した戦略 | 延べ 約150万本 |
| ホールドアウト検証にかけた戦略 | 約12,000本 |
| 実運用に投じた資金 | 0円 |
最後の行が成果です。優位性のない戦略群を、資金を入れる前に検出できました。バックテストの好成績を作る仕組みより、それを潰す仕組みのほうがずっと重要だった——これが第1期で一番高くついた学びです。
うまくいかなかった検証もそのまま記録するのがこのサイトの方針です(運営方針)。次回は、この検証を支えた「事前登録」——結果を見る前に合否基準を固定するやり方——について書く予定です。