Code / experiments/micro/expC_reversion_scan/analysis.md
experiments/micro/expC_reversion_scan/analysis.md
65 lines
---
project: anomaly-atlas
document: expC_reversion_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 — expC_reversion_scan
Run: `results/expC_reversion_scan/20260812T062408Z/results.json` (354
requests, 10.5M rows, manifest embedded; protocol pre-specified; detectors
§8.1-gated). All conclusions Level 0.
## 1. The scan's most valuable output is about the NULL
The pre-specified bounce null (EDGE daily spread, pure Roll alternation,
`-s²/4/Var(r)`) predicts intraday AC1 of −3 to −27 — outside [−1, 1],
mathematically impossible. Diagnosis: the daily *effective* spread implies
far more bounce variance than 1–5min bar closes contain, because consecutive
intraday closes rarely flip bid/ask side (order-flow persistence). Lesson
(now taxonomy T1, methodology rule): **a spread-based bounce null must be
variance-consistent with the return series it is applied to** — otherwise
"excess" statistics are artifacts of the null itself. The 90 positive-excess
"survivors" are exactly that and are discarded.
## 2. Corrected triage — MA(1)-consistent VR null
Bounce (any lag-1-only process) implies VR(q) = 1 + 2·AC1·(1−1/q). Negative
`VR30 − VR30_MA1` = multi-lag reversion beyond ALL lag-1 effects — a
conservative null (it also absorbs any real lag-1 reversion). This
correction is a documented post-hoc null fix (LOG §12 entry), computed from
the same saved cells.
**14 triage cells** pass FDR(vr30) with excess < −0.05:
* **Daily 2008–2015 mega-cap/index reversal** — the broadest pattern:
XOM AC1 −0.148 (excess_AC1 −0.133, FDR), JPM −0.104, SPY −0.079 (−0.055,
FDR); median 1day VR30 excess −0.12/−0.16 across all cells. Consistent
with crisis-regime multi-day reversal; likely regime-bound.
* **1min multi-lag reversion in 2014–2015 liquid names**: JPM (−0.243),
XOM (−0.075), NVDA (−0.061) — 30-minute-horizon reversion visible in 1min
bars, *not* explained by lag-1 bounce.
* Scattered 5min/30min cells (MSFT 2000–07 −0.108; illiquid names where
staleness (T2) remains a live confound).
## 3. Verdicts on the pre-registered clauses
* **H01 (liquid intraday lag-1 reversion = 0 net of bounce): CONFIRMED** —
zero liquid negative-excess survivors in 2008–2015 intraday. The
expected-negative held.
* **Decay clause: PARTIALLY FALSIFIED** — median VR30 excess is flat at 5min
across sub-periods and only mildly shrinking at 1day. Recorded as-is; the
clean monotone decay narrative does not hold inside train.
## 4. Hand-off
The 14 triage cells + the daily-reversal family go to expF (SPA vs
artifact-null benchmark, DSR with the 22-hypothesis budget) and expH
(validation split). Nothing here enters the atlas. expD should reuse the
MA(1)-consistency lesson for its cross-correlation nulls.