{"product":"SML REGIME SCAN","version":"2.2.1","generated_at":"2026-11-06T20:47:46.434Z","history_from":"2022-05-11","history_to":"2026-10-22","oos_from":"2025-01-10","universe":395,"samples":41158,"cost_round_trip_pct":0.1,"baseline":"same-day average forward move of every scanned ticker (a random pick of the same stocks on the same day)","rules":"Verdict from the out-of-sample period only (2025-01-10 onward; the first 60% of history is in-sample). PROVEN: out-of-sample 10-day excess > 0 with t ≥ 2.5 and in-sample excess > 0. PROMISING: out-of-sample excess > 0 with t ≥ 1.5. NEGATIVE: out-of-sample excess < 0 with t ≤ −1.5. THIN: fewer than 80 out-of-sample samples. Directional excess is net of 0.1% round-trip cost. One sample per 5 bars per setup per ticker; same-day samples are correlated, so t is optimistic — the thresholds are set high for that reason.","setups":[{"setup":"TREND_PULLBACK","bias":"bullish","label":"Pullback inside a trend — bullish","in_sample":{"n":2314,"excess_5d_pct":0.068,"excess_10d_pct":0.093,"beat_baseline_10d":0.456,"t_stat_10d":0.55},"out_of_sample":{"n":1548,"excess_5d_pct":0.278,"excess_10d_pct":0.56,"beat_baseline_10d":0.464,"t_stat_10d":2.16},"verdict":"promising","plain":"Pullback inside a trend — bullish: beat the same-day random pick out-of-sample after costs, but confidence is moderate."},{"setup":"TREND_CONTINUATION","bias":"bullish","label":"Trend continuation — bullish","in_sample":{"n":8478,"excess_5d_pct":-0.1,"excess_10d_pct":-0.143,"beat_baseline_10d":0.45,"t_stat_10d":-1.81},"out_of_sample":{"n":5234,"excess_5d_pct":-0.008,"excess_10d_pct":0.22,"beat_baseline_10d":0.468,"t_stat_10d":1.73},"verdict":"promising","plain":"Trend continuation — bullish: beat the same-day random pick out-of-sample after costs, but confidence is moderate."},{"setup":"SQUEEZE_COIL","bias":"bearish","label":"Volatility squeeze (coiled) — bearish","in_sample":{"n":568,"excess_5d_pct":-0.23,"excess_10d_pct":-0.209,"beat_baseline_10d":0.507,"t_stat_10d":-0.51},"out_of_sample":{"n":503,"excess_5d_pct":0.276,"excess_10d_pct":0.552,"beat_baseline_10d":0.612,"t_stat_10d":1.21},"verdict":"no_edge","plain":"Volatility squeeze (coiled) — bearish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"BREAKOUT","bias":"bullish","label":"Range break on volume — bullish","in_sample":{"n":2871,"excess_5d_pct":0.021,"excess_10d_pct":0.196,"beat_baseline_10d":0.453,"t_stat_10d":1.08},"out_of_sample":{"n":2036,"excess_5d_pct":-0.298,"excess_10d_pct":0.165,"beat_baseline_10d":0.45,"t_stat_10d":0.69},"verdict":"no_edge","plain":"Range break on volume — bullish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"SQUEEZE_COIL","bias":"neutral","label":"Volatility squeeze (coiled) — two-sided","in_sample":{"n":841,"excess_5d_pct":null,"excess_10d_pct":0.393,"beat_baseline_10d":0.385,"t_stat_10d":1.88},"out_of_sample":{"n":675,"excess_5d_pct":null,"excess_10d_pct":0.096,"beat_baseline_10d":0.338,"t_stat_10d":0.34},"verdict":"no_edge","plain":"Volatility squeeze (coiled) — two-sided: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"SQUEEZE_COIL","bias":"bullish","label":"Volatility squeeze (coiled) — bullish","in_sample":{"n":675,"excess_5d_pct":-0.301,"excess_10d_pct":-0.039,"beat_baseline_10d":0.443,"t_stat_10d":-0.13},"out_of_sample":{"n":627,"excess_5d_pct":-0.169,"excess_10d_pct":-0.079,"beat_baseline_10d":0.41,"t_stat_10d":-0.23},"verdict":"no_edge","plain":"Volatility squeeze (coiled) — bullish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"TREND_CONTINUATION","bias":"bearish","label":"Trend continuation — bearish","in_sample":{"n":4522,"excess_5d_pct":-0.376,"excess_10d_pct":-0.53,"beat_baseline_10d":0.494,"t_stat_10d":-4.77},"out_of_sample":{"n":2972,"excess_5d_pct":-0.235,"excess_10d_pct":-0.15,"beat_baseline_10d":0.498,"t_stat_10d":-0.98},"verdict":"no_edge","plain":"Trend continuation — bearish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"TREND_PULLBACK","bias":"bearish","label":"Pullback inside a trend — bearish","in_sample":{"n":1623,"excess_5d_pct":-0.499,"excess_10d_pct":-0.503,"beat_baseline_10d":0.477,"t_stat_10d":-2.86},"out_of_sample":{"n":1058,"excess_5d_pct":-0.09,"excess_10d_pct":-0.31,"beat_baseline_10d":0.516,"t_stat_10d":-1.31},"verdict":"no_edge","plain":"Pullback inside a trend — bearish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"RANGE_STRETCH","bias":"bullish","label":"Stretched inside a range — bullish","in_sample":{"n":132,"excess_5d_pct":0.357,"excess_10d_pct":0.46,"beat_baseline_10d":0.515,"t_stat_10d":0.91},"out_of_sample":{"n":144,"excess_5d_pct":-0.598,"excess_10d_pct":-0.613,"beat_baseline_10d":0.451,"t_stat_10d":-1.25},"verdict":"no_edge","plain":"Stretched inside a range — bullish: no reliable difference from a random pick of the same stocks on the same day."},{"setup":"RANGE_STRETCH","bias":"bearish","label":"Stretched inside a range — bearish","in_sample":{"n":61,"excess_5d_pct":0.625,"excess_10d_pct":2.303,"beat_baseline_10d":0.508,"t_stat_10d":1.64},"out_of_sample":{"n":48,"excess_5d_pct":1.495,"excess_10d_pct":2.237,"beat_baseline_10d":0.625,"t_stat_10d":1.91},"verdict":"thin_sample","plain":"Stretched inside a range — bearish: too few out-of-sample occurrences to judge."},{"setup":"BREAKOUT","bias":"bearish","label":"Range break on volume — bearish","in_sample":{"n":2413,"excess_5d_pct":-0.431,"excess_10d_pct":-0.272,"beat_baseline_10d":0.512,"t_stat_10d":-1.77},"out_of_sample":{"n":1815,"excess_5d_pct":-0.726,"excess_10d_pct":-0.353,"beat_baseline_10d":0.531,"t_stat_10d":-1.71},"verdict":"negative","plain":"Range break on volume — bearish: did WORSE than a random pick of the same stocks on the same day, out-of-sample."}],"score_buckets_oos":[{"bucket":"60–74","n":6274,"excess_10d_pct":-0.259,"t_stat_10d":-2.3},{"bucket":"75–89","n":4373,"excess_10d_pct":0.08,"t_stat_10d":0.6},{"bucket":"90–100","n":5338,"excess_10d_pct":0.462,"t_stat_10d":3.43}],"score_buckets_is":[{"bucket":"60–74","n":8543,"excess_10d_pct":-0.235,"t_stat_10d":-2.76},{"bucket":"75–89","n":6995,"excess_10d_pct":-0.202,"t_stat_10d":-2.22},{"bucket":"90–100","n":8119,"excess_10d_pct":-0.103,"t_stat_10d":-1.15}],"headline":{"label":"A+ setups (score ≥ 90, every directional setup type pooled)","in_sample":{"n":8119,"excess_5d_pct":-0.147,"excess_10d_pct":-0.103,"beat_baseline_10d":0.475,"t_stat_10d":-1.15},"out_of_sample":{"n":5338,"excess_5d_pct":-0.093,"excess_10d_pct":0.462,"beat_baseline_10d":0.503,"t_stat_10d":3.43},"verdict":"promising","plain":"Score-90+ setups beat a random pick of the same stocks on the same day by 0.462% per 10 trading days out-of-sample (t 3.43, 5,338 occurrences, after 0.1% costs); in-sample -0.103% (t -1.15). Verdict: PROMISING."},"hypotheses":[{"id":"aplus_with_tide","label":"A+ WITH the Cascade tide","in_sample":{"n":5175,"excess_5d_pct":-0.151,"excess_10d_pct":-0.108,"beat_baseline_10d":0.468,"t_stat_10d":-1},"out_of_sample":{"n":2916,"excess_5d_pct":-0.133,"excess_10d_pct":0.815,"beat_baseline_10d":0.508,"t_stat_10d":4.25},"verdict":"promising","plain":"A+ WITH the Cascade tide: +0.815% per 10 days vs a same-day random pick out-of-sample (t 4.25, n 2916); in-sample -0.108% (t -1). PROMISING — A+ setups whose direction agrees with at least 2 of the 3 Cascade price domains (SPY vs SMA20&50, SPY 5-session return, universe breadth)."},{"id":"aplus_against_tide","label":"A+ AGAINST the Cascade tide (control)","in_sample":{"n":704,"excess_5d_pct":-0.269,"excess_10d_pct":-0.712,"beat_baseline_10d":0.469,"t_stat_10d":-2.26},"out_of_sample":{"n":656,"excess_5d_pct":-0.765,"excess_10d_pct":-0.081,"beat_baseline_10d":0.506,"t_stat_10d":-0.24},"verdict":"no_edge","plain":"A+ AGAINST the Cascade tide (control): -0.081% per 10 days vs a same-day random pick out-of-sample (t -0.24, n 656); in-sample -0.712% (t -2.26). NO EDGE — the opposite filter, kept as a control: if this also wins, the tide adds nothing."},{"id":"qualified_with_tide","label":"A+ and A WITH the Cascade tide","in_sample":{"n":9233,"excess_5d_pct":-0.186,"excess_10d_pct":-0.19,"beat_baseline_10d":0.458,"t_stat_10d":-2.42},"out_of_sample":{"n":5156,"excess_5d_pct":-0.207,"excess_10d_pct":0.467,"beat_baseline_10d":0.485,"t_stat_10d":3.49},"verdict":"promising","plain":"A+ and A WITH the Cascade tide: +0.467% per 10 days vs a same-day random pick out-of-sample (t 3.49, n 5156); in-sample -0.19% (t -2.42). PROMISING — every qualified setup (score ≥ 75) agreeing with the tide."},{"id":"aplus_with_spy200","label":"A+ WITH the SPY 200-day trend","in_sample":{"n":5677,"excess_5d_pct":-0.018,"excess_10d_pct":0.106,"beat_baseline_10d":0.469,"t_stat_10d":0.95},"out_of_sample":{"n":3856,"excess_5d_pct":0.05,"excess_10d_pct":0.723,"beat_baseline_10d":0.496,"t_stat_10d":4.41},"verdict":"proven","plain":"A+ WITH the SPY 200-day trend: +0.723% per 10 days vs a same-day random pick out-of-sample (t 4.41, n 3856); in-sample +0.106% (t 0.95). PROVEN — A+ setups pointing the same way as SPY versus its 200-day average."},{"id":"aplus_bullish","label":"A+ bullish only","in_sample":{"n":5309,"excess_5d_pct":0.064,"excess_10d_pct":0.232,"beat_baseline_10d":0.471,"t_stat_10d":2.06},"out_of_sample":{"n":3559,"excess_5d_pct":0.12,"excess_10d_pct":0.799,"beat_baseline_10d":0.489,"t_stat_10d":4.61},"verdict":"proven","plain":"A+ bullish only: +0.799% per 10 days vs a same-day random pick out-of-sample (t 4.61, n 3559); in-sample +0.232% (t 2.06). PROVEN — long-side A+ setups only."},{"id":"qualified_with_indexes","label":"A+ and A WITH four-index posture","in_sample":{"n":7644,"excess_5d_pct":-0.177,"excess_10d_pct":-0.177,"beat_baseline_10d":0.466,"t_stat_10d":-2.09},"out_of_sample":{"n":4185,"excess_5d_pct":-0.097,"excess_10d_pct":0.391,"beat_baseline_10d":0.474,"t_stat_10d":2.68},"verdict":"promising","plain":"A+ and A WITH four-index posture: +0.391% per 10 days vs a same-day random pick out-of-sample (t 2.68, n 4185); in-sample -0.177% (t -2.09). PROMISING — every qualified setup (score ≥ 75) pointing the way at least 3 of the 4 indexes (SPY, QQQ, IWM, DIA) are in a full trend — each on the same side of both its 20- and 50-day averages with a confirming 5-day move — with none trending against. Added 2026-11-06 so the four-index read in the backdrop is measured like every other filter, not assumed."}],"summary":"Score-90+ setups beat a random pick of the same stocks on the same day by 0.462% per 10 trading days out-of-sample (t 3.43, 5,338 occurrences, after 0.1% costs); in-sample -0.103% (t -1.15). Verdict: PROMISING. By setup type: 0 proven, 2 promising, 1 negative of 11 setup types, tested on 41,158 occurrences across 395 tickers from 2022-05-11 to 2026-10-22. No setup type cleared the PROVEN bar this run. Market filters tested (6, all shown): 2 proven, 3 promising.","track_record":{"started":null,"days":1,"late_days":1,"picks":0,"latest_session":"2026-11-05","latest_hash":"69a5afc74561196fea6898ef21b9edb71010f4d867e753148c1a64cf78901370","chain_ok":true,"aplus":{"picks":0,"resolved_10d":0,"excess_5d_pct":null,"excess_10d_pct":null,"beat_baseline_10d":null,"t_stat_10d":null},"proven_filter":{"picks":0,"resolved_10d":0,"excess_5d_pct":null,"excess_10d_pct":null,"beat_baseline_10d":null,"t_stat_10d":null},"all_qualified":{"picks":0,"resolved_10d":0,"excess_5d_pct":null,"excess_10d_pct":null,"beat_baseline_10d":null,"t_stat_10d":null},"plain":"Live forward record starts at the next on-time close (picks published before the next session opens). 1 late day kept in the ledger but not counted.","verify":"Each day (v 2): hash = sha256(prev_hash + \"|\" + session + \"|\" + published_at + \"|\" + JSON.stringify(picks)), first prev_hash = 64 zeros. A day published after the next session opened is marked late and never counted. Recompute the chain from GET /regime-scan/track; any edit to a past pick breaks every hash after it. Results are excess return vs the same-day average of all scanned tickers, direction-adjusted, minus 0.1% round-trip cost."},"not_advice":"Research output describing technical conditions on completed daily bars. Not a buy or sell instruction, not financial advice. Past results, including out-of-sample results, do not guarantee future results."}