From 87224a145172926cc8f3f68bec261dda5197bc1f Mon Sep 17 00:00:00 2001 From: Dennis Thiessen Date: Sat, 8 Aug 2026 22:46:41 +0200 Subject: [PATCH] docs(research): regenerate the calibration artifact from a clean tree The previous artifact was produced from a dirty working tree while HEAD still pointed at the harness commit, so its recorded revision could not reproduce it. This one records git_dirty false alongside sha256 of the three source files it depends on, so the claim "checking out this revision reproduces this artifact" is now checkable rather than implied. All hard gates pass, including the first-scored-date anchor and the row-wise state_v4 <= state_v3 invariant, so it carries a non-null recommendation. Co-Authored-By: Claude Opus 5 --- ...onitor-v4-calibration-20260808-224631.json | 2094 +++++++++++++++++ ...-monitor-v4-calibration-20260808-224631.md | 88 + 2 files changed, 2182 insertions(+) create mode 100644 reports/regime-monitor-v4-calibration-20260808-224631.json create mode 100644 reports/regime-monitor-v4-calibration-20260808-224631.md diff --git a/reports/regime-monitor-v4-calibration-20260808-224631.json b/reports/regime-monitor-v4-calibration-20260808-224631.json new file mode 100644 index 0000000..3d24d2b --- /dev/null +++ b/reports/regime-monitor-v4-calibration-20260808-224631.json @@ -0,0 +1,2094 @@ +{ + "generated_at": "2026-08-08T22:46:31", + "source": { + "git_rev": "ec1b0ac", + "git_dirty": false, + "source_sha256": { + "app/services/regime_monitor_service.py": "c54e66217872d5de", + "app/services/breadth_service.py": "b9ceb93d68d8f01b", + "scripts/run_regime_monitor_calibration.py": "6e1c58c1b952087d" + } + }, + "params": { + "end": "2026-07-24", + "sessions": 408, + "history_days": 1200, + "oas_window_days": 700, + "oas_fetch_days": 4748, + "methodology": "v2_reconstruction,v2_reconstruction_oas400,v3,v4,v4-vix-only,v4-p1-only,v4-vix-b,v4-p1-capped", + "expected_first_session": null, + "cache_dir": ".calib-cache", + "out": null, + "quiet": true + }, + "provenance": { + "symbols": { + "AAPL": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "MSFT": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "NVDA": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "AMZN": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "META": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "GOOGL": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "AVGO": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "AMD": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "ORCL": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "CRM": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "NOW": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "PLTR": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "ANET": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "DELL": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "SMCI": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "MU": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "QCOM": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "INTC": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "AMAT": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "LRCX": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "KLAC": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "SNPS": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "CDNS": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "ADI": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "TXN": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "IBM": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "CSCO": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "PANW": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "CRWD": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "VRT": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "SMH": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "QQQ": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "SPY": { + "bars": 825, + "first": "2023-04-11", + "last": "2026-07-24" + } + }, + "vix": { + "points": 850, + "first": "2023-04-11", + "last": "2026-07-24" + }, + "oas": { + "points": 778, + "first": "2023-08-08", + "last": "2026-07-24" + }, + "scored_range": [ + "2024-12-05", + "2026-07-24" + ] + }, + "hard_gates": [ + { + "gate": "symbols_fetched", + "expected": 33, + "measured": 33, + "passed": true, + "detail": [] + }, + { + "gate": "per_symbol_warmup_252_bars", + "expected": "all", + "measured": 33, + "passed": true, + "detail": [] + }, + { + "gate": "per_symbol_reaches_last_session", + "expected": "2026-07-24", + "measured": 33, + "passed": true, + "detail": [] + }, + { + "gate": "breadth_counts_full_basket", + "expected": 30, + "measured": "408/408 sessions", + "passed": true, + "detail": [] + }, + { + "gate": "sessions_scored", + "expected": 408, + "measured": 408, + "passed": true + }, + { + "gate": "last_scored_date", + "expected": "2026-07-24", + "measured": "2026-07-24", + "passed": true + }, + { + "gate": "w1_available_every_session", + "expected": 408, + "measured": 408, + "passed": true + }, + { + "gate": "state_coverage_100_every_row", + "expected": 0, + "measured": 0, + "passed": true, + "detail": [] + }, + { + "gate": "no_stale_inputs", + "expected": 0, + "measured": 0, + "passed": true, + "detail": [] + }, + { + "gate": "first_scored_date", + "expected": "2024-12-05", + "measured": "2024-12-05", + "passed": true + }, + { + "gate": "state_v4_le_v3_every_row", + "expected": 0, + "measured": 0, + "passed": true, + "detail": [] + } + ], + "blocked_by": [], + "provisional": false, + "variants": { + "v2_reconstruction": { + "label": "v2_reconstruction", + "sessions": 408, + "state": { + "avg": 22.68, + "median": 16.15, + "p80": 35.1, + "p90": 65.63, + "max": 91.2, + "scored": 408 + }, + "warning_avg": 11.65, + "saturation_census": { + "p3_pegged": 39, + "p2_pegged": 0, + "v1_pegged": 14, + "p1_pegged": 46 + }, + "price_argmax_sole": { + "P1": 9, + "P2": 18, + "P3": 308 + }, + "price_argmax_tie_inclusive": { + "P1": 82, + "P2": 53, + "P3": 381 + }, + "price_argmax_ties": 73, + "price_argmax_when_state_ge_40": { + "sessions": 64, + "sole": { + "P1": 8, + "P2": 5, + "P3": 13 + }, + "p1_sole_share_pct": 12.5, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 108, + "band_shares_current": { + "stable": 57.1, + "watch": 30.1, + "elevated": 1.7, + "breaking": 11.0 + }, + "soft_gates": [ + { + "gate": "v2_state_avg", + "expected": 22.6, + "measured": 22.68, + "tolerance": 0.3, + "passed": true + }, + { + "gate": "v2_state_p80", + "expected": 35.1, + "measured": 35.1, + "tolerance": 0.5, + "passed": true + }, + { + "gate": "v2_state_max", + "expected": 91.2, + "measured": 91.2, + "tolerance": 0.5, + "passed": true + }, + { + "gate": "v2_p3_pegged", + "expected": 39, + "measured": 39, + "tolerance": 0, + "passed": true + }, + { + "gate": "w1_live_sessions", + "expected": 108, + "measured": 108, + "tolerance": 0, + "passed": true + } + ] + }, + "v2_reconstruction_oas400": { + "label": "v2_reconstruction_oas400", + "sessions": 408, + "state": { + "avg": 26.54, + "median": 18.65, + "p80": 42.52, + "p90": 81.3, + "max": 100.0, + "scored": 408 + }, + "warning_avg": 11.2, + "saturation_census": { + "p3_pegged": 39, + "p2_pegged": 0, + "v1_pegged": 14, + "p1_pegged": 46 + }, + "price_argmax_sole": { + "P1": 9, + "P2": 18, + "P3": 308 + }, + "price_argmax_tie_inclusive": { + "P1": 82, + "P2": 53, + "P3": 381 + }, + "price_argmax_ties": 73, + "price_argmax_when_state_ge_40": { + "sessions": 88, + "sole": { + "P1": 9, + "P2": 14, + "P3": 27 + }, + "p1_sole_share_pct": 10.2, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 108, + "band_shares_current": { + "stable": 51.7, + "watch": 33.6, + "elevated": 2.2, + "breaking": 12.5 + }, + "soft_gates": [] + }, + "v3": { + "label": "v3", + "sessions": 408, + "state": { + "avg": 18.13, + "median": 9.1, + "p80": 31.36, + "p90": 65.0, + "max": 87.4, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 14, + "p1_pegged": 46 + }, + "price_argmax_sole": { + "P1": 71, + "P2": 33, + "P3": 268 + }, + "price_argmax_tie_inclusive": { + "P1": 107, + "P2": 69, + "P3": 304 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 57, + "sole": { + "P1": 51, + "P2": 4, + "P3": 2 + }, + "p1_sole_share_pct": 89.5, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 73.0, + "watch": 15.4, + "elevated": 1.2, + "breaking": 10.3 + }, + "soft_gates": [ + { + "gate": "v3_state_max", + "expected": 87.4, + "measured": 87.4, + "tolerance": 0.5, + "passed": true + } + ] + }, + "v4": { + "label": "v4", + "sessions": 408, + "state": { + "avg": 14.78, + "median": 8.35, + "p80": 21.7, + "p90": 43.63, + "max": 83.5, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 0, + "p1_pegged": 0 + }, + "price_argmax_sole": { + "P1": 17, + "P2": 48, + "P3": 307 + }, + "price_argmax_tie_inclusive": { + "P1": 53, + "P2": 84, + "P3": 343 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 47, + "sole": { + "P1": 17, + "P2": 16, + "P3": 14 + }, + "p1_sole_share_pct": 36.2, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 78.9, + "watch": 13.0, + "elevated": 4.7, + "breaking": 3.4 + }, + "soft_gates": [], + "band_grid": [ + { + "bands": [ + 15.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 15.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 15.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 15.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 15.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 6.9, + "breaking": 1.2 + } + }, + { + "bands": [ + 20.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 20.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 20.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 20.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 6.9, + "breaking": 1.2 + } + }, + { + "bands": [ + 25.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 25.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 25.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 25.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 6.9, + "breaking": 1.2 + } + } + ] + }, + "v4-vix-only": { + "label": "v4-vix-only", + "sessions": 408, + "state": { + "avg": 16.64, + "median": 8.35, + "p80": 28.6, + "p90": 61.59, + "max": 86.6, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 0, + "p1_pegged": 46 + }, + "price_argmax_sole": { + "P1": 71, + "P2": 33, + "P3": 268 + }, + "price_argmax_tie_inclusive": { + "P1": 107, + "P2": 69, + "P3": 304 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 52, + "sole": { + "P1": 50, + "P2": 1, + "P3": 1 + }, + "p1_sole_share_pct": 96.2, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 76.7, + "watch": 12.0, + "elevated": 3.9, + "breaking": 7.4 + }, + "soft_gates": [], + "band_grid": [ + { + "bands": [ + 15.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 68.4, + "watch": 18.9, + "elevated": 1.5, + "breaking": 11.3 + } + }, + { + "bands": [ + 15.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 68.4, + "watch": 18.9, + "elevated": 5.4, + "breaking": 7.4 + } + }, + { + "bands": [ + 15.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 68.4, + "watch": 18.9, + "elevated": 8.3, + "breaking": 4.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 68.4, + "watch": 20.3, + "elevated": 0.0, + "breaking": 11.3 + } + }, + { + "bands": [ + 15.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 68.4, + "watch": 20.3, + "elevated": 3.9, + "breaking": 7.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 68.4, + "watch": 20.3, + "elevated": 6.9, + "breaking": 4.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 76.7, + "watch": 10.5, + "elevated": 1.5, + "breaking": 11.3 + } + }, + { + "bands": [ + 20.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 76.7, + "watch": 10.5, + "elevated": 5.4, + "breaking": 7.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 76.7, + "watch": 10.5, + "elevated": 8.3, + "breaking": 4.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 76.7, + "watch": 12.0, + "elevated": 0.0, + "breaking": 11.3 + } + }, + { + "bands": [ + 20.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 76.7, + "watch": 12.0, + "elevated": 3.9, + "breaking": 7.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 76.7, + "watch": 12.0, + "elevated": 6.9, + "breaking": 4.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 78.7, + "watch": 8.6, + "elevated": 1.5, + "breaking": 11.3 + } + }, + { + "bands": [ + 25.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 78.7, + "watch": 8.6, + "elevated": 5.4, + "breaking": 7.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 78.7, + "watch": 8.6, + "elevated": 8.3, + "breaking": 4.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 78.7, + "watch": 10.0, + "elevated": 0.0, + "breaking": 11.3 + } + }, + { + "bands": [ + 25.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 78.7, + "watch": 10.0, + "elevated": 3.9, + "breaking": 7.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 78.7, + "watch": 10.0, + "elevated": 6.9, + "breaking": 4.4 + } + } + ] + }, + "v4-p1-only": { + "label": "v4-p1-only", + "sessions": 408, + "state": { + "avg": 16.28, + "median": 9.1, + "p80": 25.44, + "p90": 45.63, + "max": 84.0, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 14, + "p1_pegged": 0 + }, + "price_argmax_sole": { + "P1": 17, + "P2": 48, + "P3": 307 + }, + "price_argmax_tie_inclusive": { + "P1": 53, + "P2": 84, + "P3": 343 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 51, + "sole": { + "P1": 17, + "P2": 19, + "P3": 15 + }, + "p1_sole_share_pct": 33.3, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 74.3, + "watch": 16.9, + "elevated": 3.9, + "breaking": 4.9 + }, + "soft_gates": [], + "band_grid": [ + { + "bands": [ + 15.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 66.2, + "watch": 21.3, + "elevated": 5.6, + "breaking": 6.9 + } + }, + { + "bands": [ + 15.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 66.2, + "watch": 21.3, + "elevated": 7.6, + "breaking": 4.9 + } + }, + { + "bands": [ + 15.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 66.2, + "watch": 21.3, + "elevated": 9.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 66.2, + "watch": 25.0, + "elevated": 2.0, + "breaking": 6.9 + } + }, + { + "bands": [ + 15.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 66.2, + "watch": 25.0, + "elevated": 3.9, + "breaking": 4.9 + } + }, + { + "bands": [ + 15.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 66.2, + "watch": 25.0, + "elevated": 5.4, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 74.3, + "watch": 13.2, + "elevated": 5.6, + "breaking": 6.9 + } + }, + { + "bands": [ + 20.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 74.3, + "watch": 13.2, + "elevated": 7.6, + "breaking": 4.9 + } + }, + { + "bands": [ + 20.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 74.3, + "watch": 13.2, + "elevated": 9.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 74.3, + "watch": 16.9, + "elevated": 2.0, + "breaking": 6.9 + } + }, + { + "bands": [ + 20.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 74.3, + "watch": 16.9, + "elevated": 3.9, + "breaking": 4.9 + } + }, + { + "bands": [ + 20.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 74.3, + "watch": 16.9, + "elevated": 5.4, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 79.4, + "watch": 8.1, + "elevated": 5.6, + "breaking": 6.9 + } + }, + { + "bands": [ + 25.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 79.4, + "watch": 8.1, + "elevated": 7.6, + "breaking": 4.9 + } + }, + { + "bands": [ + 25.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 79.4, + "watch": 8.1, + "elevated": 9.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 79.4, + "watch": 11.8, + "elevated": 2.0, + "breaking": 6.9 + } + }, + { + "bands": [ + 25.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 79.4, + "watch": 11.8, + "elevated": 3.9, + "breaking": 4.9 + } + }, + { + "bands": [ + 25.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 79.4, + "watch": 11.8, + "elevated": 5.4, + "breaking": 3.4 + } + } + ] + }, + "v4-vix-b": { + "label": "v4-vix-b", + "sessions": 408, + "state": { + "avg": 15.24, + "median": 8.55, + "p80": 22.62, + "p90": 44.33, + "max": 83.6, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 0, + "p1_pegged": 0 + }, + "price_argmax_sole": { + "P1": 17, + "P2": 48, + "P3": 307 + }, + "price_argmax_tie_inclusive": { + "P1": 53, + "P2": 84, + "P3": 343 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 48, + "sole": { + "P1": 17, + "P2": 17, + "P3": 14 + }, + "p1_sole_share_pct": 35.4, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 77.9, + "watch": 13.7, + "elevated": 4.7, + "breaking": 3.7 + }, + "soft_gates": [], + "band_grid": [ + { + "bands": [ + 15.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 68.1, + "watch": 20.1, + "elevated": 6.4, + "breaking": 5.4 + } + }, + { + "bands": [ + 15.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 68.1, + "watch": 20.1, + "elevated": 8.1, + "breaking": 3.7 + } + }, + { + "bands": [ + 15.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 68.1, + "watch": 20.1, + "elevated": 10.0, + "breaking": 1.7 + } + }, + { + "bands": [ + 15.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 68.1, + "watch": 23.5, + "elevated": 2.9, + "breaking": 5.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 68.1, + "watch": 23.5, + "elevated": 4.7, + "breaking": 3.7 + } + }, + { + "bands": [ + 15.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 68.1, + "watch": 23.5, + "elevated": 6.6, + "breaking": 1.7 + } + }, + { + "bands": [ + 20.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 77.9, + "watch": 10.3, + "elevated": 6.4, + "breaking": 5.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 77.9, + "watch": 10.3, + "elevated": 8.1, + "breaking": 3.7 + } + }, + { + "bands": [ + 20.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 77.9, + "watch": 10.3, + "elevated": 10.0, + "breaking": 1.7 + } + }, + { + "bands": [ + 20.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 77.9, + "watch": 13.7, + "elevated": 2.9, + "breaking": 5.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 77.9, + "watch": 13.7, + "elevated": 4.7, + "breaking": 3.7 + } + }, + { + "bands": [ + 20.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 77.9, + "watch": 13.7, + "elevated": 6.6, + "breaking": 1.7 + } + }, + { + "bands": [ + 25.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 81.6, + "watch": 6.6, + "elevated": 6.4, + "breaking": 5.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 81.6, + "watch": 6.6, + "elevated": 8.1, + "breaking": 3.7 + } + }, + { + "bands": [ + 25.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 81.6, + "watch": 6.6, + "elevated": 10.0, + "breaking": 1.7 + } + }, + { + "bands": [ + 25.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 81.6, + "watch": 10.0, + "elevated": 2.9, + "breaking": 5.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 81.6, + "watch": 10.0, + "elevated": 4.7, + "breaking": 3.7 + } + }, + { + "bands": [ + 25.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 81.6, + "watch": 10.0, + "elevated": 6.6, + "breaking": 1.7 + } + } + ] + }, + "v4-p1-capped": { + "label": "v4-p1-capped", + "sessions": 408, + "state": { + "avg": 14.73, + "median": 8.35, + "p80": 21.7, + "p90": 43.63, + "max": 80.1, + "scored": 408 + }, + "warning_avg": 14.88, + "saturation_census": { + "p3_pegged": 0, + "p2_pegged": 0, + "v1_pegged": 0, + "p1_pegged": 0 + }, + "price_argmax_sole": { + "P1": 0, + "P2": 49, + "P3": 323 + }, + "price_argmax_tie_inclusive": { + "P1": 36, + "P2": 85, + "P3": 359 + }, + "price_argmax_ties": 36, + "price_argmax_when_state_ge_40": { + "sessions": 47, + "sole": { + "P1": 0, + "P2": 17, + "P3": 30 + }, + "p1_sole_share_pct": 0.0, + "cap_rule": "P1_SCORE_CAP warranted if p1_sole_share_pct > 80" + }, + "w1_nonzero_sessions": 197, + "band_shares_current": { + "stable": 78.9, + "watch": 13.0, + "elevated": 4.7, + "breaking": 3.4 + }, + "soft_gates": [], + "band_grid": [ + { + "bands": [ + 15.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 15.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 15.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 68.9, + "watch": 19.6, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 15.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 15.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 15.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 68.9, + "watch": 23.0, + "elevated": 6.9, + "breaking": 1.2 + } + }, + { + "bands": [ + 20.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 20.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 78.9, + "watch": 9.6, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 20.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 20.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 20.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 78.9, + "watch": 13.0, + "elevated": 6.9, + "breaking": 1.2 + } + }, + { + "bands": [ + 25.0, + 40.0, + 60.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 6.4, + "breaking": 5.1 + } + }, + { + "bands": [ + 25.0, + 40.0, + 65.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 8.1, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 40.0, + 70.0 + ], + "shares": { + "stable": 82.1, + "watch": 6.4, + "elevated": 10.3, + "breaking": 1.2 + } + }, + { + "bands": [ + 25.0, + 50.0, + 60.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 2.9, + "breaking": 5.1 + } + }, + { + "bands": [ + 25.0, + 50.0, + 65.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 4.7, + "breaking": 3.4 + } + }, + { + "bands": [ + 25.0, + 50.0, + 70.0 + ], + "shares": { + "stable": 82.1, + "watch": 9.8, + "elevated": 6.9, + "breaking": 1.2 + } + } + ] + } + }, + "scenarios": { + "note": "pillar arithmetic on explicit sensor scores; State weights unchanged", + "vix_a": [ + { + "scenario": "S1 ordinary tape", + "P1": 0.0, + "P2": 0.0, + "P3": 7.5, + "price": 7.5, + "breadth": 0.0, + "C1": 0.0, + "V1": 4.0, + "state": 3.6 + }, + { + "scenario": "S2 10% correction, calm credit", + "P1": 30.0, + "P2": 0.0, + "P3": 31.25, + "price": 31.25, + "breadth": 62.5, + "C1": 0.0, + "V1": 34.4, + "state": 33.28 + }, + { + "scenario": "S3a 2022-style, calm credit, no death cross", + "P1": 87.5, + "P2": 0.0, + "P3": 90.83, + "price": 90.83, + "breadth": 100.0, + "C1": 0.0, + "V1": 60.0, + "state": 70.33 + }, + { + "scenario": "S3b 2022-style, calm credit, death cross", + "P1": 87.5, + "P2": 100.0, + "P3": 90.83, + "price": 100.0, + "breadth": 100.0, + "C1": 0.0, + "V1": 60.0, + "state": 74.0 + }, + { + "scenario": "S4 credit event on top", + "P1": 100.0, + "P2": 100.0, + "P3": 100.0, + "price": 100.0, + "breadth": 100.0, + "C1": 75.0, + "V1": 86.67, + "state": 93.0 + }, + { + "scenario": "S5 March 2020, everything pegged", + "P1": 100.0, + "P2": 100.0, + "P3": 100.0, + "price": 100.0, + "breadth": 100.0, + "C1": 100.0, + "V1": 100.0, + "state": 100.0 + } + ] + }, + "diagnostics": { + "vix_top10": [ + [ + "2025-04-08", + 52.33 + ], + [ + "2025-04-07", + 46.98 + ], + [ + "2025-04-04", + 45.31 + ], + [ + "2025-04-10", + 40.72 + ], + [ + "2024-08-05", + 38.57 + ], + [ + "2025-04-11", + 37.56 + ], + [ + "2025-04-21", + 33.82 + ], + [ + "2025-04-09", + 33.62 + ], + [ + "2025-04-16", + 32.64 + ], + [ + "2026-03-27", + 31.05 + ] + ], + "candidate_anchors": { + "P5_VIX_ANCHORS_A": [ + [ + 15.0, + 0.0 + ], + [ + 20.0, + 20.0 + ], + [ + 25.0, + 38.0 + ], + [ + 30.0, + 55.0 + ], + [ + 40.0, + 80.0 + ], + [ + 55.0, + 100.0 + ] + ], + "P5_VIX_ANCHORS_B": [ + [ + 15.0, + 0.0 + ], + [ + 20.0, + 25.0 + ], + [ + 25.0, + 45.0 + ], + [ + 30.0, + 65.0 + ], + [ + 40.0, + 85.0 + ], + [ + 55.0, + 100.0 + ] + ], + "P1_TREND_BREAK_ANCHORS": [ + [ + 0.0, + 20.0 + ], + [ + 3.0, + 35.0 + ], + [ + 8.0, + 55.0 + ], + [ + 15.0, + 75.0 + ], + [ + 25.0, + 100.0 + ] + ] + } + }, + "v4_recommendation": { + "state_bands_candidate": [ + 20.0, + 50.0, + 65.0 + ], + "provisional": false, + "note": "confirm against band_grid + scenarios before shipping" + } +} \ No newline at end of file diff --git a/reports/regime-monitor-v4-calibration-20260808-224631.md b/reports/regime-monitor-v4-calibration-20260808-224631.md new file mode 100644 index 0000000..8b7f83b --- /dev/null +++ b/reports/regime-monitor-v4-calibration-20260808-224631.md @@ -0,0 +1,88 @@ +# Regime Monitor v4 calibration + +Generated 2026-08-08T22:46:31 at `ec1b0ac`, 2024-12-05 → 2026-07-24. + +Source hashes (sha256, first 16): + +- `app/services/regime_monitor_service.py` — `c54e66217872d5de` +- `app/services/breadth_service.py` — `b9ceb93d68d8f01b` +- `scripts/run_regime_monitor_calibration.py` — `6e1c58c1b952087d` + +## Hard gates + +| gate | expected | measured | | +|---|---|---|---| +| symbols_fetched | 33 | 33 | ok | +| per_symbol_warmup_252_bars | all | 33 | ok | +| per_symbol_reaches_last_session | 2026-07-24 | 33 | ok | +| breadth_counts_full_basket | 30 | 408/408 sessions | ok | +| sessions_scored | 408 | 408 | ok | +| last_scored_date | 2026-07-24 | 2026-07-24 | ok | +| w1_available_every_session | 408 | 408 | ok | +| state_coverage_100_every_row | 0 | 0 | ok | +| no_stale_inputs | 0 | 0 | ok | +| first_scored_date | 2024-12-05 | 2024-12-05 | ok | +| state_v4_le_v3_every_row | 0 | 0 | ok | + +## Distributions + +| variant | avg | median | p80 | p90 | max | +|---|---|---|---|---|---| +| v2_reconstruction | 22.68 | 16.15 | 35.1 | 65.63 | 91.2 | +| v2_reconstruction_oas400 | 26.54 | 18.65 | 42.52 | 81.3 | 100.0 | +| v3 | 18.13 | 9.1 | 31.36 | 65.0 | 87.4 | +| v4 | 14.78 | 8.35 | 21.7 | 43.63 | 83.5 | +| v4-vix-only | 16.64 | 8.35 | 28.6 | 61.59 | 86.6 | +| v4-p1-only | 16.28 | 9.1 | 25.44 | 45.63 | 84.0 | +| v4-vix-b | 15.24 | 8.55 | 22.62 | 44.33 | 83.6 | +| v4-p1-capped | 14.73 | 8.35 | 21.7 | 43.63 | 80.1 | + +## Saturation census (sessions pegged at 100) + +| variant | P1 | P2 | P3 | V1 | +|---|---|---|---|---| +| v2_reconstruction | 46 | 0 | 39 | 14 | +| v2_reconstruction_oas400 | 46 | 0 | 39 | 14 | +| v3 | 46 | 0 | 0 | 14 | +| v4 | 0 | 0 | 0 | 0 | +| v4-vix-only | 46 | 0 | 0 | 0 | +| v4-p1-only | 0 | 0 | 0 | 14 | +| v4-vix-b | 0 | 0 | 0 | 0 | +| v4-p1-capped | 0 | 0 | 0 | 0 | + +## Reproduction gates — v2_reconstruction + +| figure | published | measured | | +|---|---|---|---| +| v2_state_avg | 22.6 | 22.68 | ok | +| v2_state_p80 | 35.1 | 35.1 | ok | +| v2_state_max | 91.2 | 91.2 | ok | +| v2_p3_pegged | 39 | 39 | ok | +| w1_live_sessions | 108 | 108 | ok | + +## Reproduction gates — v3 + +| figure | published | measured | | +|---|---|---|---| +| v3_state_max | 87.4 | 87.4 | ok | + +## v4 band-share grid (watch 20 / elevated 50) + +| breaking | stable | watch | elevated | breaking | +|---|---|---|---|---| +| 60 | 78.9 | 13.0 | 2.9 | 5.1 | +| 65 | 78.9 | 13.0 | 4.7 | 3.4 | +| 70 | 78.9 | 13.0 | 6.9 | 1.2 | + +## Scenarios (pillar arithmetic, explicit sensor scores) + +| scenario | price | breadth | C1 | V1 | State | +|---|---|---|---|---|---| +| S1 ordinary tape | 7.5 | 0.0 | 0.0 | 4.0 | **3.6** | +| S2 10% correction, calm credit | 31.25 | 62.5 | 0.0 | 34.4 | **33.28** | +| S3a 2022-style, calm credit, no death cross | 90.83 | 100.0 | 0.0 | 60.0 | **70.33** | +| S3b 2022-style, calm credit, death cross | 100.0 | 100.0 | 0.0 | 60.0 | **74.0** | +| S4 credit event on top | 100.0 | 100.0 | 75.0 | 86.67 | **93.0** | +| S5 March 2020, everything pegged | 100.0 | 100.0 | 100.0 | 100.0 | **100.0** | + +Recommendation: `{'state_bands_candidate': [20.0, 50.0, 65.0], 'provisional': False, 'note': 'confirm against band_grid + scenarios before shipping'}`