RESEARCH_STATUS.md — RAID (UQO WP 40)
Last update: 2026-11-02 (Phase 2 passed). Legend: ✅ verified by tests/artifacts · 🧪 implemented, validation pending · 🧭 experimental · ⛔ blocked · ⏳ planned · ✖ not implemented (deliberately).
Phases
| Phase | Gate | Status | Evidence |
|---|---|---|---|
| 0 Audit | scope & feasibility memo | ✅ passed 2026-11-02 | docs/audit.md, docs/capabilities.md, docs/novelty_matrix.md, docs/risks.md, docs/PROGRESS.md |
| 1 Foundation | clean build + tests + docs | ✅ passed 2026-11-02 | ctest 26/26 (314 assertions), pytest 7/7, docs/PROGRESS.md Phase 1 |
| 2 Data | offline synthetic tests + opt-in live tests | ✅ passed 2026-11-02 | offline [findata] 4/4, live [live] 2/2 (60 assertions), docs/operations/findata.md |
| 3 Numerical primitives | accuracy + measured break-even | ⏳ | — |
| 4 Econometrics (Tier A) | references + Monte Carlo | ⏳ | — |
| 5 Extensions (Tier B) | per-feature specs + tests | ⏳ | — |
| 6 Benchmarking E1–E7 | every claim traceable | ⏳ | — |
| 7 Manuscript | reproducible build, no placeholders | ⏳ | — |
| 8 Independent review | clean-checkout reproduction | ⏳ | — |
Methods registry (summary; full entries in docs/methods/registry.md from Phase 4)
| Method | Tier | CPU FP64 | Metal FP32 | Reference software | Status |
|---|---|---|---|---|---|
| returns (log/arith), lag/lead, rolling windows, calendar-aware aggregation | A | ✅ | ⏳ (Phase 3) | numpy; exchange_calendars (calendar exact 2000–2026) | ✅ CPU |
| RV, BPV, RSV±, RQ, jump proxy, TriPV, rCov/rCorr | A | ✅ (numpy truth 1e−12) | ⏳ (Phase 3) | highfrequency 1.0.3 (R comparison Phase 4) | ✅ CPU |
| OLS/WLS/ridge, HC0–3, HAC, cluster, rolling OLS | A | ✅ (statsmodels 1e−9) | ⏳ (sufficient stats, Phase 3) | statsmodels 0.15, scipy 1.18 | ✅ CPU |
| HAR-RV, log-HAR, HAR-X, HARQ | A | ⏳ | ⏳ | highfrequency HARmodel, statsmodels |
⏳ |
| GARCH(1,1), GJR, EGARCH (N, t), QMLE/Hessian/OPG SE, forecasts | A | ✅ (arch 8.0: loglik 5e−4, params 5 %) | ⏳ (batched likelihood, Phase 3) | arch 8.0 ✅, rugarch 1.5.6 (Phase 4) | ✅ CPU |
| Bootstrap (stationary / circular block), Monte Carlo | A | ⏳ | ⏳ | arch.bootstrap | ⏳ |
| VAR, GFEVD, Diebold–Yilmaz | B | ⏳ | ⏳ | statsmodels VAR | ⏳ |
| Realized GARCH, HEAVY, DCC, PCA/shrinkage, Kalman | B | ✖ until Tier A passes | ⏳ | ||
| Pre-averaging, realized kernels, MSRV, BNS test | C | ✖ (1-min bars) | highfrequency | 🧭 only if validated | |
| Hawkes, order-flow, LOB methods | C | ✖ | ✖ | — | ✖ no admissible data (bars only) |
Blockers
- None at Phase 0. Seven cluster nodes unreachable (m2m16, M2M32, M2M32b, M4M36, m4ma, m4mb, m4mc): E7 reports them as not tested unless they come back.
Next safe action
Phase 3: Metal backend (device discovery, runtime + prebuilt shader library, buffer pool, batched reductions, rolling sums, regression sufficient statistics, GARCH likelihood batch), FP32-vs-FP64 accuracy tests, first break-even microbenchmarks (bench_reductions) with manifests.