122 個の売買の合図を一斉に調べたら、合格は 0 件だった
売買の合図 (インジケーターの条件) をたくさん試すと、本当は効かないものでも「効いて見える」ものが偶然混ざります。調べた数に見合うだけ合格の基準を厳しくすると、何が残るのか。自分の研究の記録で確かめました。
何を調べたかWHAT WAS TESTED
- 対象は Binance の BTCUSDT 1 銘柄だけで、15分足・1時間足・4時間足・日足を使い、判定は 2020-01-01〜2025-12-31 の 6 年間 (開発窓) だけで行った。 (当サイト実測 / 出典 / 2026-10-21)
- 123 候補のうち 1 候補 (ftc_flow_t4h) はメモリ不足で計算できず、実際に結果が出たのは 122 候補・732 セル (122 × 6) だった。 (当サイト実測 / 出典 / 2026-10-21)
- 1 つの『セル』は、候補 1 つ × 買い/売り × 何本先で測るか (4・16・64 本先) の組み合わせで、候補 1 つにつき 6 セルある。 (当サイト実測 / 出典 / 2026-10-21)
- 732 セルのうち 45 セルは信号が 1 回も出ず判定不能 (N/A) で、実際に検定されたのは 687 セルだった。 (当サイト実測 / 出典 / 2026-10-21)
- 候補は 23 の系統 (似た考え方のグループ) に分かれており、そのうち 1 系統はわざと無意味な信号を入れた『対照群』だった。 (当サイト実測 / 出典 / 2026-10-21)
数が多いと、偶然が混ざるMULTIPLE TESTING
687 回検定すれば、本当は何も無くても 5% の確率で約 34 回は『有意』が出る計算になる。 (当サイト実測 / 出典 / 2026-10-21)
補正をせず 1 セルずつ見ると、687 セル中 161 セルで p 値が 0.05 を下回った。 (当サイト実測 / 出典 / 2026-10-21) 補正をかけるたびに、「有意」に見えたものは減っていきます。
合格の条件THE GATE
合格には 6 条件すべてが必要で、(1) 月単位でまとめた信頼区間がゼロをまたがない (2) 全セルを 1 つにまとめた多重検定補正後の p 値が 0.05 未満 (3) 信号 30 回以上・実質的に独立な回数 10 以上 (4) 効果が検出可能な最小の大きさ以上 (5) 期間を区切っても符号が 6 割以上で一致 (6) 平均の差が往復コスト 15bp を超える、である。 (当サイト実測 / 出典 / 2026-10-21)
多重検定の補正には Romano-Wolf ステップダウン法 (Romano-Wolf step-down、最大統計量型) を使い、主判定では 687 セル全部を 1 つのプールにまとめて補正した。 (当サイト実測 / 出典 / 2026-10-21)
結果RESULT
687 セルを 6 条件の関門で判定した結果、合格 (A) も逆方向での合格 (D) も 0 件で、B (一部の条件を満たさず) が 141 件、C (証拠なし) が 546 件だった。 (当サイト実測 / 出典 / 2026-10-21)
多重検定の扱いだけを変えて、ほかの条件を固定すると、合格の数は次のように変わります。
最も目立った例 sv_mq2_vetoState の買い・64 本先は、平均で +87.2bp 有利に見え、系統内補正の p 値は 0.0012 だったが、全体補正では 0.1944 になり有意でなくなった。 (当サイト実測 / 出典 / 2026-10-21)
中身が同じ信号 (買い・16 本先、信号 204 回、+29.5bp) が 2 つの系統に登録されており、小さい系統 (信号のあるセル 9) では補正後 p が 0.028 で合格水準、大きい系統 (同 30) では 0.1146 で不合格になり、全体補正ではどちらも 0.9486 だった。 (当サイト実測 / 出典 / 2026-10-21) 補正のかけ方を小分けにすると、どの組に入れたかという偶然で合否が変わってしまいます。
手数料のせいではないNOT THE COST
コストの仮定だけを 15bp・8bp・4bp・0bp に変えて 732 セルを判定し直しても、合格は 4 通りとも 0 件で、コストだけが理由で落ちたセルは 0 件だった。 (当サイト実測 / 出典 / 2026-10-21)
方向がはっきりして見えた 108 セルの落第理由 (重複あり) は、全体補正 101 件、検出力不足 95 件、コスト 44 件、期間別の符号不一致 23 件だった。 (当サイト実測 / 出典 / 2026-10-21)
全体補正を通過した 7 セルは、7 件すべてが『効果が小さすぎて雑音と区別できない (検出力不足)』の条件で落ちた。 (当サイト実測 / 出典 / 2026-10-21)
検証そのものの点検CHECKING THE CHECK
- わざと乱数で作った対照の信号 (smoke_random_15m) は 6 セルすべて『証拠なし (C)』と判定され、64 本先の差は +9.96bp、全体補正後 p は 1.0 だった。 (当サイト実測 / 出典 / 2026-10-21)
- 結果ファイルを隠した状態で重要な 8 セルを別の実装で計算し直すと、信号数・実質独立回数・平均の差が 8 セルとも一致し、2026 年への漏れも見つからなかった。 (当サイト実測 / 出典 / 2026-10-21)
- 採点プログラムには結果を見る前の監査で重大欠陥が 3 件見つかり (開発窓の末尾が 2026 年の価格を先読みしていた等)、修正してから本番を走らせた。 (当サイト実測 / 出典 / 2026-10-21)
- 6 系統は、候補やパラメータを選んだ時点で 2026 年を含むデータの結果を根拠にしていたことが監査で確定し、さらに 5 系統が疑いとされた。 (当サイト実測 / 出典 / 2026-10-21)
この結果から言えること・言えないことWHAT THIS DOES NOT SHOW
- 言えること: この条件と期間では、たくさん試した中から「効いて見えた」合図は、調べた数に見合う厳しさで見ると偶然の範囲に収まった。
- 言えないこと: これらの合図に効果が無いと証明されたわけではありません。多くは効果が小さすぎて、この期間のデータでは雑音と区別できなかっただけです。証拠が無いことと、効果が無いことは別です。
- 言えないこと: 手数料が高すぎたせいだ、とも言えません。手数料をゼロにしても合格は出ませんでした。
- 対象は 1 銘柄・1 つの期間です。ほかの銘柄や期間には、そのまま当てはめられません。
自分で同じ点検をするにはTRY IT YOURSELF
チャートの上でいくつも条件を試していると、同じ落とし穴に入ります。長い期間で確かめられる道具については、TradingView の無料プランで、バックテストはどこまでできるかにまとめました。
検証の数値と条件の要約: multiple-testing.json。内容は投資助言ではありません。過去の検証結果は将来の成績を保証しません。
最終更新日: