ARIMA_SAX_Hybrid_Forecaster/HANDOVER_R1R.md

4.4 KiB

HANDOVER - R1-R (Reproducible Real-Data Replication)

Status: SESSION CLOSED (R1-R.1 complete) - prepared for R1-R.2

Project Identity

Current Commit

  • Local HEAD: f74b644 (research: execute R1-R frozen model run)
  • Remote HEAD: f74b644 (in sync, no push pending)

Remote Status

  • origin/main == local main == f74b644 (verified at session close)

R1-R.0 Status: PROTOCOL FROZEN

  • Protocol version: r1-r-v0.1.0-frozen (results/R1_R/R1_R_PROTOCOL.md)
  • Protocol commit: 4da3788 (scripts/run_r1r_origins.py)
  • Config hash: ef1e3fd55b9808cf (frozen configs/default.json)
  • Dataset: results/R1_real_data/XAUUSDc_M1_raw.json (397,558 M1 bars)
    • M1 close hash 80e4b52b..., M5 9619c186..., M15 c5141d4c...
  • Origin rule: deterministic stride = 8 x HORIZON; origins = cand[::stride]
  • Origin list hashes (frozen): M1=dbd6b7c7..., M5=085c0114..., M15=b5c7abb9...
  • Generation run twice, byte-identical (newline='' LF writes)
  • Target: Forward Return / ATR(20) = (close[o+H] - close[o]) / ATR20[o]

R1-R.1 Status: COMPLETE

  • Execution commit: 607da55 (scripts/run_r1r_models.py)
  • Models: Naive, Drift, ARIMA(1,0,0) (rolling fit window 300), SAX (word 8, alphabet 5, window 24, top_k 10, min_analogs 5, neutral 0.25), Hybrid
  • All 5 models executed at every frozen origin; origin lists read from frozen CSVs, never regenerated
  • Statsmodels warnings recorded (benign, see report)

Evidence Locations

  • results/R1_R/R1_R_PROTOCOL.md - frozen protocol documentation
  • results/R1_R/R1_R_PROTOCOL_MANIFEST.json - frozen origin manifest (hashes + counts)
  • results/R1_R/origins_M1.csv / origins_M5.csv / origins_M15.csv - frozen origin lists
  • results/R1_R/predictions_M1.csv / predictions_M5.csv / predictions_M15.csv - prediction records (immutable)
  • results/R1_R/R1_R_EXECUTION_MANIFEST.json - execution manifest (prediction hashes, checks)
  • results/R1_R/R1_R_EXECUTION_REPORT.md - execution report (pre-flight, integrity, no-lookahead)

Origin Counts (frozen)

  • M1: 3260 origins
  • M5: 3194 origins
  • M15: 3214 origins

Prediction Row Counts (origins x 5 models)

  • M1: 16300 rows (3260 x 5)
  • M5: 15970 rows (3194 x 5)
  • M15: 16070 rows (3214 x 5)
  • Total: 48340 prediction records
  • Prediction file hashes: M1=4a15d3fd..., M5=de9767c659..., M15=a484741cb511...

Integrity Result

  • ALL_INTEGRITY_OK = True
  • Row counts, prediction hashes, duplicate/missing combos, origin presence, timestamp/window matches, config hash (ef1e3fd55b9808cf) and dataset hashes all verified OK

No-Lookahead Result

  • PASS (no critical lookahead defect)
  • 9 spot mutation checks (3 origins per resolution M1/M5/M15): future bars strictly after origin mutated; ARIMA and SAX predictions unchanged in all 9 cases
  • SAX fast-path equivalence: 40/40 identical (M1 prefix, seed 7)

Known Statsmodels Warnings

  • "Non-stationary starting autoregressive parameters found. Using zeros as starting parameters."
  • One "Maximum Likelihood optimization failed to converge" warning for an individual fit
  • Benign: present in historical frozen run family, no causality impact, predictions still produced; convergence quality note deferred to metrics gate

Historical R1 / R1-F Status (UNCHANGED)

  • Historical R1 published counts 489/511/515 - NOT reproduced by R1-R (by design, independent)
  • R1-F.2 audit: F1-F7 PASS; F8 MAJOR stride reproducibility gap (runtime stride never recorded)
  • R1-F.2a stride provenance: UNRESOLVED (outcome C); F8 remains UNRESOLVED
  • DEFECT-001 (SAX z-normalize fix) fixed at ff95e11; fast SAX path equivalence-validated
  • Historical R1 and R1-F evidence files were NOT modified by R1-R work

Next Gate

R1-R.2 - INDEPENDENT METRICS (NOT STARTED, do not run in this session)

  • Inputs: frozen prediction CSVs as immutable evidence (results/R1_R/predictions_*.csv)
  • Metrics computed independently from the frozen rows; no model reruns
  • Must not modify prediction files, origin lists, protocol manifest, or models

Explicit Prohibitions

  • Do NOT run R1-R.2 in this session (deferred to next session)
  • Do NOT calculate final metrics (MAE/MASE/CIs/bootstrap/effective sample/economic verdicts) now
  • Do NOT modify models, protocol, config, or origin lists
  • Do NOT regenerate origins or stride
  • Do NOT rerun R1-R.1
  • Do NOT modify historical R1 / R1-F evidence
  • No force-push