ARIMA_SAX_Hybrid_Forecaster/HANDOVER_R1R.md

107 lines
4.4 KiB
Markdown
Raw Permalink Normal View History

# HANDOVER - R1-R (Reproducible Real-Data Replication)
Status: SESSION CLOSED (R1-R.1 complete) - prepared for R1-R.2
## Project Identity
- Project: ARIMA_SAX_Hybrid_Forecaster
- Repository: https://forge.mql5.io/chiki2bum2/ARIMA_SAX_Hybrid_Forecaster.git
- Branch: main
- Working tree: CLEAN
## 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