SPB Git

spb/anomaly-atlas Public License

Systematic discovery & rigorous validation of statistical anomalies in open HF market data (hfmarketdata.io) — pre-registered, artifact-null-driven, fully reproducible. Live atlas: www.anomaly-atlas.io

Python 61.4% JavaScript 28.7% CSS 8.6% Shell 0.7% Makefile 0.5%

# project: anomaly-atlas document: expD_leadlag_scan/analysis author: Simon-Pierre Boucher contact: contact@spboucher.ai data_source: hfmarketdata.io created: 2026-08-12 modified: 2026-08-12 status: reviewed

# Analysis — expD_leadlag_scan

Run: results/expD_leadlag_scan/20260812T070742Z/results.json (protocol pre-specified; alignment primitives §8.1-gated — the gate caught an interval-freshness bug before real data). All conclusions Level 0.

# 1. The decay measurement (H07/H08 scan half)

Both-fresh leads at +1min, 2006-2007 → 2014-2015:

Pair family 2006-2007 2014-2015
SPY → sector ETFs +0.07 .. +0.148 (all FDR) −0.02 .. +0.028
SPY → mega-caps +0.01 .. +0.03 (mostly FDR) −0.015 .. +0.046
SPY → sparse names +0.09 .. +0.12 +0.06 .. +0.075 (still FDR)

Minute-scale market→component diffusion was REAL and large in 2006-2007 on synchronized samples, and collapsed by 2014-2015 — direct, open-data confirmation of the Chordia–Roll–Subrahmanyam convergence story at the 1min floor. The residual 2014-2015 structure is statistically detectable (huge n) but an order of magnitude smaller; several cells survive FDR, so the pre-registered expected-negative clause for H08 is formally falsified — recorded as such and handed to expF (costs will likely be decisive).

# 2. ES ↔ SPY (H09 preview)

corr(SPY_{t−1}, ES_t) = −0.032 both-fresh, FDR-significant, and identical to 4 decimals across all three continuous-futures splice variants — the built-in robustness check held. Sign and size are consistent with minute-scale basis reversion rather than one-way price discovery (the +1 ES-leads direction is ≈0). A genuine structural candidate for expF/candidate work; economically tiny.

# 3. SPX → SPY: content staleness ≠ print staleness (H11 confirmed at scan level)

SPY leads SPX by +0.132 on the both-fresh subsample, with artifact share ≈ 0 — SPX "prints" every minute (fresh_frac 0.996), so synchronizing on print times removes nothing: the staleness lives INSIDE the index computation (Fisher 1966, measured live). Confirms candidate 03's design: the correction must model constituent staleness, not print gaps.

# 4. A T3 refinement for the taxonomy

expB showed LOCF joins inflate leads for mid-stale names (+0.047). expD adds the other arm: for ultra-stale names the LOCF zero-return mass dilutes the measured lead (HTD: raw +0.048 vs fresh +0.073). The non-synchronicity artifact is non-monotone in staleness — naive joins can hide as well as manufacture lead-lag. Added to T3.

# 5. Verdicts

Clause (ii) falsified (tiny FDR residuals remain in 2014-2015); clauses (iii), (iv), (v) held. Hand-off to expF: the 2014-2015 FDR survivors, the ES→SPY basis effect, and the decay curve. expE (calendar) is next; its budget is pre-counted in research_gaps.md.