Objective
Independently replicate the distinct RecessionAlert inventory row for DeMark SP-500 analysis from the checked-in data/recessionalert.sqlite snapshot without live-site requests, credentials, private account data, or canonical crawl-database mutation.
Source and provenance
Page https://recessionalert.com/demark-analysis-for-sp-500/ bound to SHA256 sha256:2182cdc8962b8bcadc9008acd3a880fbe5486dfc804f728e661902885680cc3b, fetched 2026-08-22T23:44:53Z, published 2014-09-01. Public proxies loaded read-only from data/market.sqlite.
Disclosed rule, native span, and publication lag
Documented fragments include TD-Setup Class-A/B/C buy and sell rules, RA buy>=8 / sell>=9 thresholds, summation complements, and a 1-5 bar reaction hint. No native setup-count or summation observations are pinned. Daily close cadence is documented; exact publication lag and post-2020 Trendex successor semantics are unknown. Causal default is lag>=1 on daily closes; lag-zero is control_only.
Approach and variants
Primitives in research/research_campaign/recessionalert_1379.py. Families: canonical 9-count TD-Setup, RA thresholds, Class-A/B/C summation complements, reaction-window holds, SPY/IEF overlays. Trial ledger: 24 variants across lag 0/1/2 and holding 1/3/5 bars.
Results (exploratory)
SPY/IEF overlay on RA buy>=8 lag2 yields best tested Sharpe (~0.446). Long-history ^GSPC buy setups underperform buy-and-hold. Class-B summation cross is the strongest long-history event-study family. Disposition: exploratory_tested_proxy with no playable indicator promotion.
Files and validation
research/campaigns/recessionalert-demark-sp500-1379/campaign.jsonresearch/campaigns/recessionalert-demark-sp500-1379/synthesis.jsonresearch/findings/1379.mdtests/test_recessionalert_1379.py
Validation: focused pytest 8 passed; read-only DBs; no live RA fetch.
Limitations
Public proxies are not official RecessionAlert DeMark chart series. Exact proprietary modifications, native parity, and portfolio execution remain undisclosed. Do not treat exploratory equity paths as a registered Other/Indicators signal.