🧪 AIシグナル研究日誌 #28
blocked=True×ショート 前向き反証開始(p=0.003)——in-sampleの47.8%はメタル交絡とmacd_dead偏りの人工産物か(過去データの集計・将来を保証しません)
第5回(2026年6月13日)の研究で「blocked=True(S/R壁あり)のシグナルは全体 53.7%」という初期エッジを確認しました。第17回(2026年6月22日)では方向別に分解し「blocked=True×ショートが 55.9%(19/34)」と報告。そのまま前向きトラッカーに登録し、出来事を待ちました。今回(2026年7月3日)、前向きデータが 16 件に達したタイミングで集計すると、2/16 件しか勝っていないという急落が判明しました。この乖離が統計的ノイズなのか、それとも in-sample エッジの崩壊なのかを解剖します。
① blocked=True×ショート in-sample(全期間): 47.8%(33/69)95%CI [36.5%〜59.4%] E(R)=+0.116——損益分岐43.0%は超えるが幅広いCI
② 主ドライバー解剖: メタル(GC/SI)×blocked×ショート 88.9%(8/9)が全体を引き上げ。ma_dead×blocked×ショート 70.0%(14/20)が第二の高値要因
③ 主ドラッグ要因: macd_dead×blocked×ショート 34.9%(15/43)——このシグナルが発火件数の大半(43/69件)を占め全体を引き下げる
④ 前向きトラッカー(signal_lab_tracker.py 出力・verify対象外): 2/16件。二項検定 p=0.003——in-sample CI[36.5%〜59.4%]と95%CIが完全分離
⑤ 対照群: blocked=True×ロングの前向きは19/31件で健在。blocked効果はロング方向に限定される可能性
⑥ ⚠️ すべて過去データの集計。将来の成績を保証するものではなく、売買推奨でもありません
🔍 なぜ今回この仮説を選んだか
毎朝 signal_lab_tracker.py update を実行し、前向きトラッカーの状態を確認しています。2026年7月3日の今朝の更新で、「blocked=True×dir=short」の欄が目を引きました——前向き平均R が −0.71、95%CI[−1.10〜−0.32](全域マイナス)となっており、これは前向き N=16 件のうち 2/16 件しか勝っていないことを意味します。
in-sample の 47.8%(33/69)と前向きの 12.5%(2/16)という差は、「何かが変わったのか、それとも単なる小サンプルのノイズか」という問いを生みます。この問いに答えるため、今回は in-sample の構成要素を解剖し、前向き期間の外れ値の原因を探ります。これは優先度②(前向きで大きく動いた仮説)に該当する今日の研究テーマです。
📋 仮説と事前宣言
今回の仮説と、その合否を事前に判定するための基準を宣言します。
主仮説(H1):blocked=True×ショート の in-sample エッジは、前向きデータと統計的に有意差がある(CIが分離する)。
交絡仮説(H2):in-sample の 47.8% は、特定のシグナル種別またはグループの高成績によって人工的に引き上げられている。
事前宣言した合否基準:
- H1 通過: 前向き k/n の Wilson 95%CI が in-sample CI[36.5%〜59.4%] と重複しない(完全分離)かつ 二項検定 p < 0.05
- H2 通過: メタルまたは特定シグナルを除外した in-sample 値が 43% を下回る
📊 検証結果①:in-sample 全体
決済済みシグナル 1,328 件のうち、blocked=True(S/R 壁あり)×ショート方向の全件を集計しました。
| 条件 | k / n | 勝率 | 95% CI(Wilson) | 期待値 E(R) | 備考 |
|---|---|---|---|---|---|
| blocked=True×ショート(主仮説) | 33 / 69 | 47.8% | [36.5%〜59.4%] | +0.116 | CI 幅 23pp——安定エッジなし |
| blocked=True×ロング(対照) | 43 / 89 | 48.3% | [38.2%〜58.5%] | +0.127 | 方向差わずか 0.5pp |
| blocked=False×ショート(対照) | 81 / 207 | 39.1% | [32.7%〜45.9%] | −0.087 | 壁なしは損益分岐43%割れ |
📊 検証結果②:シグナル別分解
blocked=True×ショートの 69 件は、どのシグナルで構成されているでしょうか。
| primary_signal | k / n(IS全体) | 勝率 | 95% CI | 前向き件数(参考) |
|---|---|---|---|---|
| macd_dead(MACDデッドクロス) | 15 / 43 | 34.9% | [22.4%〜49.8%] | 前向き 1/12(tracker値) |
| ma_dead(MAデッドクロス) | 14 / 20 | 70.0% | [48.1%〜85.5%] | 前向き 0/3(tracker値) |
| first_pullback_short 他 | 4 / 6 | 66.7% | — | 前向き 1/1 |
最も注目すべき点が二つあります。
第一に、macd_dead が 43 件(62%)を占める主力シグナルでありながら、34.9% と損益分岐以下です。ma_dead の 70.0% が全体平均を引き上げていますが、その件数は 20 件に過ぎません。
第二に、前向き16件のうち 12 件が macd_dead(75%)です。in-sample での主力シグナルが前向き期間にも偏って出現し、かつ in-sample 34.9% だったものが前向きでさらに落ちて 1/12=8.3% になっています。前向きの「惨状」は macd_dead の偏在が最大の説明変数です。
📈 可視化:blocked×ショート IS 成績の分解
図1:blocked=True×ショートの in-sample 成績分解。損益分岐43%(黄破線)に対し、全体47.8%のうち macd_dead(62%を占める)は34.9%と分岐以下、メタルグループ(13%)の88.9%が全体を引き上げている。過去データの集計であり将来を保証しない。
📊 検証結果③:グループ別——メタル交絡の正体
次にグループ別(資産クラス別)に分解します。
| グループ | k / n(IS全体) | 勝率 | 95% CI | 前向き件数(参考) |
|---|---|---|---|---|
| メタル(GC=F / SI=F) | 8 / 9 | 88.9% | [56.5%〜98.0%] | 前向き 1/1(tracker値) |
| 他FXクロス(EURUSD など) | 11 / 22 | 50.0% | [30.7%〜69.3%] | 前向き 0/3 |
| 円クロスFX(USDJPY など) | 7 / 16 | 43.8% | [23.1%〜66.8%] | 前向き 0/3 |
| 指数(日経 / S&P500 など) | 4 / 14 | 28.6% | [11.7%〜54.6%] | 前向き 1/8 |
最重要発見:メタルグループ(GC=F・SI=F)×blocked×ショートの in-sample 成績が 8/9=88.9% と際立って高い。全69件のうち9件(13%)を占めるこのグループが、全体平均を大幅に引き上げていました。
逆に指数グループ(日経先物・S&P500・Nasdaq・ダウ・FTSE)は 4/14=28.6% と損益分岐を大きく下回っています。指数でのショートエッジの低さは、第25回(指数×ショート 27.4%)でも確認済みの構造的特性です。
📊 検証結果④:前向きデータ(signal_lab_tracker.py 出力)
以下は signal_lab_tracker.py update --date 2026-07-03 の出力です。この値は verify.py の照合対象外(日付フィルターは verify.py が非対応)であり、参考値として掲載します。
| 条件 | 前向き k/n(登録日以降) | 前向き平均 R | 95%CI(R) | 状態 |
|---|---|---|---|---|
| blocked=True×ショート(主仮説) | 2/16(登録日: 2026-06-25) | −0.708 | [−1.10〜−0.32] | 🟡蓄積中 |
| blocked=True×ロング(対照) | 19/31 | +0.430 | [+0.02〜+0.84] | 🟡蓄積中 |
前向き 16 件の内訳
tracker 登録日(2026年6月25日)以降に決済された blocked=True×ショートの全件:
- 勝ち(TP1): 2件——GC=F(first_pullback_short×下降中)、NKD=F(macd_dead×上昇中)
- 負け(SL): 14件——macd_dead が 12 件(指数×上昇中5件・円クロス2件・他FX3件・BTC1件)、ma_dead 3件
- シグナル別: macd_dead 12件(75%)、ma_dead 3件(19%)、first_pullback_short 1件
- トレンド別: 上昇中 7件(1勝6敗)、下降中 6件(1勝5敗)、中立 3件(0勝3敗)
前向き期間の特徴として、metal グループの発火がほぼゼロ(1件のみ)であった点が目立ちます。in-sample で 88.9% を叩き出したメタルショートが沈黙し、代わりに in-sample でも低パフォーマンスだった指数・FX の macd_dead が多発した結果です。
🔢 統計的分離:二項検定と CI
「前向き 2/16 という結果は、in-sample 勝率 47.8% が本当の勝率だとしたら、どれくらい珍しいか?」を計算します。
- 帰無仮説:真の勝率 = 47.8%(in-sample 推定値)
- 観測値:n=16 中 k=2 勝
- P(X≤2 | n=16, p=0.478) ≈ 0.003
- 判定:p=0.003 < 0.05 → 統計的に有意な差あり(帰無仮説を棄却)
Wilson 95%CI を並べると:
- in-sample 33/69: CI [36.5%〜59.4%]
- 前向き 2/16: CI [3.5%〜36.0%](tracker 集計結果)
📊 対照群:blocked=True×ロング
比較のために、同じ「壁あり」でもロング方向の前向き成績を確認します。
| 方向 | in-sample k/n | IS 勝率 | 前向き k/n(参考) | 前向き E(R)(参考) |
|---|---|---|---|---|
| blocked=True×ショート | 33 / 69 | 47.8% | 2/16 | −0.708 CI[−1.10〜−0.32] |
| blocked=True×ロング | 43 / 89 | 48.3% | 19/31 | +0.430 CI[+0.02〜+0.84] |
in-sample ではロング(48.3%)とショート(47.8%)の差がわずか 0.5pp なのに、前向きでは ロングが堅調(期待値+0.43)なのに対し、ショートが急落(期待値−0.71)という真逆の動きをしています。
この対比は「blocked=True というフィルターは、ロング方向には有効だが、ショート方向には機能しない(あるいは逆効果)」という可能性を示唆しています。S/R 壁は「価格の行く手を阻む障害」ですが、ショートの場合は「壁がある = 下抜けしにくい = ショートが失敗しやすい」という逆の論理も成り立ちます。
🎯 解釈と今後の方針
in-sample エッジの正体
blocked=True×ショートの in-sample 47.8%(33/69)は、3つの構造的要因が組み合わさっていました:
- メタル交絡:GC=F・SI=F の blocked=True×ショートが 8/9=88.9% と異常高成績。わずか 9 件が全体平均を大きく引き上げていた。メタル除外後の in-sample は 25/60=41.7% で損益分岐割れ。
- ma_dead 高成績(小N):ma_dead×blocked×ショートが 14/20=70.0% と高いが、N=20 は CI 幅が大きく(48.1%〜85.5%)、前向きでは 0/3 と沈黙。
- macd_dead が過半数かつ低成績:全件の 62% を占める macd_dead が 34.9% と既に損益分岐以下。in-sample でも引き下げ要因だったものが、前向きではさらに低い 1/12=8.3% になった。
今後の方針
- blocked=True×ショート:前向きトラッカーは「蓄積中」のまま継続観察。ただし、現時点で「エッジなし・むしろ逆効果」という方向性を記録。N=50 まで待って再判断する。
- メタル×blocked×ショート:N=9 では in-sample の 88.9% を信頼できない。メタルがショート方向に発火する機会を前向きで蓄積し、独立検証する。
- ma_dead×blocked×ショート(70.0%、N=20):N が小さく前向き 0/3 と矛盾。N=30 まで前向き観察を継続。
- blocked=True フィルターは研究上ロング方向に絞って検討する(候補):これは当サイト内部の研究方針であり、読者への売買推奨ではありません。前向きデータが揃い次第、正式に判断します。
⚠️ この検証の限界(必読)
- 前向き N=16 は小サンプル:2/16 という結果は、真の勝率が 47.8% であっても確率 0.3% で起こりえます(二項 p=0.003)。方向性は明確ですが、絶対的な結論ではありません。
- メタル交絡はサンプル数が少ない:in-sample の 88.9%(8/9)も N=9 という非常に小さなサンプルです。金・銀のショートに特有の条件(例:高ボラ局面)が偶然集まった可能性があります。
- 前向き期間のレジーム:2026年6月25日〜7月3日は特定の市場環境(例:指数が強い上昇局面)が続いていた可能性があり、その期間限定の結果かもしれません。
- 過去データへの注意:すべての分析は過去データの集計であり、将来の成績を保証するものではありません。
📡 前向きトラッカー定点観測
基準日 2026-07-03 時点のトラッカー全体(signal_lab_tracker.py table --html 出力)を掲載します。
📡 前向きトラッカー定点観測(期待値ベース)
| 仮説 | 種別 | 宣言基準 | 前向き現在値(平均R) | 状態 |
|---|---|---|---|---|
| 指数×ロング(全足ライブ) | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R +0.33 CI[+0.12~+0.54](68/119・勝率57%) | ✅昇格 |
| group=all | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.05 CI[-0.10~+0.20](108/240・勝率45%) | 🟡蓄積中 |
| blocked=False | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.05 CI[-0.11~+0.22](87/193・勝率45%) | 🟡蓄積中 |
| dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.10 CI[-0.07~+0.27](86/182・勝率47%) | 🟡蓄積中 |
| blocked=False×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.04 CI[-0.15~+0.22](67/151・勝率44%) | 🟡蓄積中 |
| trend=中立・もみあい×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.18 CI[-0.04~+0.39](57/113・勝率50%) | 🟡蓄積中 |
| tier=neutral | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.11 CI[-0.32~+0.10](43/113・勝率38%) | 🟡蓄積中 |
| tf=4h×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.08 CI[-0.13~+0.30](52/112・勝率46%) | 🟡蓄積中 |
| trend=下降 | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.02 CI[-0.21~+0.24](44/101・勝率44%) | 🟡蓄積中 |
| group=other_fx×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.17 CI[-0.07~+0.40](49/98・勝率50%) | 🟡蓄積中 |
| group=metal | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.12 CI[-0.36~+0.12](32/85・勝率38%) | 🟡蓄積中 |
| group=index | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R -0.11 CI[-0.36~+0.14](31/81・勝率38%) | 🟡蓄積中 |
| trend=下降×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.03 CI[-0.22~+0.29](35/79・勝率44%) | 🟡蓄積中 |
| 売られすぎ逆張り買い(rsi_oversold_bounce) | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R -0.09 CI[-0.36~+0.17](28/72・勝率39%) | 🟡蓄積中 |
| reversalL(逆張り買い) | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.29 CI[+0.01~+0.57](37/67・勝率55%) | 🟡蓄積中 |
| blocked=False×dir=short | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.15 CI[-0.14~+0.43](32/65・勝率49%) | 🟡蓄積中 |
| trend=下降×dir=short | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.15 CI[-0.14~+0.44](31/63・勝率49%) | 🟡蓄積中 |
| group=metal×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.15 CI[-0.46~+0.16](19/52・勝率36%) | 🟡蓄積中 |
| trend=中立・もみあい×dir=short | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R -0.19 CI[-0.51~+0.12](17/49・勝率35%) | 🟡蓄積中 |
| trend=下降×reversalL | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.23 CI[-0.15~+0.62](19/36・勝率53%) | 🟡蓄積中 |
| group=metal×reversalL | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.13 CI[-0.51~+0.25](13/35・勝率37%) | 🟡蓄積中 |
| tier=good | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.67 CI[+0.31~+1.02](25/35・勝率71%) | 🟡蓄積中 |
| trend=中立・もみあい×reversalL | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.51 CI[+0.13~+0.89](22/34・勝率65%) | 🟡蓄積中 |
| tier=good×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.68 CI[+0.31~+1.05](23/32・勝率72%) | 🟡蓄積中 |
| signal=low_break | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.17 CI[-0.26~+0.59](15/30・勝率50%) | 🟡蓄積中 |
| group=btc×dir=long | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.16 CI[-0.61~+0.29](9/25・勝率36%) | 🟡蓄積中 |
| trend=上昇×reversalL | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R +0.22 CI[-0.27~+0.70](12/23・勝率52%) | 🟡蓄積中 |
| group=index×reversalL | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R +0.23 CI[-0.31~+0.77](10/19・勝率53%) | 🟡蓄積中 |
| blocked=True×dir=short(今回テーマ) | edge | 前向きN≥80かつ平均RのCI下限>0 | 平均R -0.71 CI[-1.10~-0.32](2/16・勝率12%) | 🟡蓄積中 |
| group=btc×reversalL | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R -0.17 CI[-0.77~+0.44](5/14・勝率36%) | 🟡蓄積中 |
| group=index×dir=short | gate | 前向きN≥80かつ平均RのCI上限<0 | 平均R +0.30 CI[-0.51~+1.10](5/9・勝率56%) | 🟡蓄積中 |
本研究は signals-log.json の過去データを Python スクリプト(signal_lab_verify.py・signal_lab_sweep.py・signal_lab_tracker.py)で決定論的に集計したものです。すべての数値は過去の集計値であり、将来の投資成果を約束・保証するものではありません。Wilson 95%CI・二項検定 p 値は統計的な幅・傾向の参考値であり、確定的な事実を示すものではありません。本コンテンツは情報提供・教育を目的としており、金融商品取引法に基づく投資助言ではありません。当サイトは金融商品取引業者ではなく、投資助言・代理業の登録もしておらず、特定の銘柄・売買の推奨を行うものではありません。投資判断はご自身の責任において行ってください。損失が生じた場合でも当サイトは一切の責任を負いません。掲載データに誤りがある場合はお知らせください。