← Experiments

Great Trough Detector: an exact signal replay with a weaker recent record

Completed qm-09tp.22 · 2026-08-23

Can RecessionAlert's S&P 500 Great Trough buy signal be reproduced from the files already captured in this repository without guessing its proprietary smoothing rule, and how did those supplied signals fare afterward?

Yes for the supplied 2015-2026 snapshot: all four source pages and the workbook match pinned SHA-256 values, and the runner reproduces 27 Class A markers, 58 Class B markers, and 83 unique buy sessions. No for rebuilding the hidden breadth formula or exact pre-2015 dates. On this snapshot, next-session outcomes trail the unconditional S&P baseline at every disclosed horizon, with a notably weaker post-2020 83-session record.

Research narrative

The short version

The supplied buy dates are exactly reproducible. The proprietary breadth recipe is not. That is enough for an honest indicator replay, but not enough to claim an independently rebuilt detector.

What was frozen

Four page hashes, one workbook hash, the 2014 Class A/B rules, all 83 positive markers, next-session execution, four source horizons, a 2020 subperiod split, and an extra-lag check were fixed before reading outcomes.

What failed

The local 2015-2026 signal trails the every-session S&P baseline at 37, 83, 119, and 150 sessions. Its 83-session win rate falls to 62.5% after 2020 versus 75.0% for the baseline.

Why it is still published

Readers can inspect and pair a real, causally aligned signal without mistaking it for a profitable strategy. The negative evidence and every reconstruction gap are visible beside it.

Why there is no strategy entry

The detector is buy-only, has no disclosed exit, and does not outperform its simple baseline in the available snapshot. No StrategySpec, runner overlay, tearsheet, or catalog row was added.

Returns vs S&P

No signal overlay for this experiment (parameter sweep / search)

Aligned window, both rebased to 1.0 at start — No comparable equity curve was supplied; the chart is retained for consistent detail-page navigation. · S&P dashed, experiment solid. X = Date, Y = Equity (rebased to 1.0).

Signal driver & thresholds (x-aligned)

What is disclosed, and what is not

piecedisclosed ruleboundary
Class BArm below 27.4 for 5 trading days; buy on a punch above 80 after at least 4 days below 80Exact workbook marker replay
Class AArm below 10 for 10 trading days; cancel Class B; same punch above 80Exact workbook marker replay
Breadth levelSmoothed NYSE common-stock 13-week new-high shareSmoothing constant is proprietary
HistorySource chart claims a longer historyExact calculated fields begin 2015-03-26; no chart OCR
ExitNo detector exitRFE and Donchian ideas stay separate

Unavailable means unavailable: nothing in the right column was estimated.

Next-session outcomes versus every-session S&P baseline

horizonsignal nsignal winbaseline winsignal meanbaseline mean
37 sessions8366.3%70.0%1.11%1.86%
83 sessions8268.3%74.1%3.06%4.14%
119 sessions8174.1%76.2%4.99%5.92%
150 sessions8176.5%80.0%6.58%7.57%

The baseline uses every eligible fixture session. This is signal-outcome evidence, not a portfolio backtest.

The 83-session result weakened after 2020

signal-date periodsignal nsignal winbaseline winsignal meanbaseline mean
2015-20193476.5%72.9%2.88%2.61%
2020-20264862.5%75.0%3.20%5.30%

The split was frozen at 2020; no weak cell was tuned away.

Exact buy dates are playable on Other indicators

The companion Other-indicators card exposes all 83 workbook-supplied trigger dates, the GTR level, a 20-session viewer window, pairing controls, and S&P overlay statistics. The viewer window is not a source-disclosed exit.

Signal timeline — triggers shown as verticals on main chart above.

Stats

CAGR0.00%Sharpe0.00%
Sortino0.00%maxDD0.00%

Disposition

Indicator-only publication for reproducibility and inspection. Keep the playable Other-indicators entry and its exact fixture markers, but make no strategy, excess-return, catalog-admission, or raw-formula reconstruction claim.

Follow-on work

Errors & data gaps

The breadth smoothing constant is proprietary, so the runner replays calculated GTR/BUY fields and fails closed on raw-formula reconstruction. Exact machine-readable GTR levels and buy dates begin on 2015-03-26. The source's earlier chart is not converted into fake precision. This is one current workbook snapshot with an unknown revision/vintage policy, not a point-in-time archive. Workbook codes 1 and 2 have no disclosed confidence meaning; only positive versus zero is normalized while the raw codes remain auditable. The source discloses no exit. A 20-session active band exists only for the public pairing viewer. The observed signal does not beat the unconditional fixture-span S&P baseline at any disclosed horizon, and the post-2020 83-session result is materially weaker. Cached source page bodies and workbook bytes stay outside public docs; public pages contain original summaries, hashes, derived signal flags, and derived metrics only.

Follow-up

gh issue create --title "Follow-up Great Trough Detector an exact signal replay with a weaker r" --body "Follow-up to qm-09tp.22: Can RecessionAlert's S&P 500 Great Trough buy signal be reproduced from the file" --label "priority:p2" --label "pipeline:research" --label "agent:ready"
# deep-link