Quantum Model CI90 Calibration Backtest
S&P 500 TOP-20 — 2026-06-18

Published: 2026-06-18  •  Updated: 2026-07-23 (re-measured across quarterly forecast start dates, against the model as served)  •  Quantustik Research  •  Rolling quarterly start dates, TOP-20 S&P 500

Disclaimer. This document is educational research only. It is not investment advice and no content herein is a solicitation to buy or sell any security. Past calibration performance does not guarantee future results. Position sizing and risk management are the sole responsibility of the reader.

1. What is CI90 Calibration?

A well-calibrated 90% confidence interval (CI90) should contain the true outcome in approximately 90 out of every 100 forecasts. If a model claims 90% coverage but only contains the outcome 60% of the time, the bands are too narrow (overconfident). If coverage is 99%, the bands are too wide (underconfident). Calibration ≈ 90% is the target.

The numbers in this post come from a reproducible backtest of the TOP-20 S&P 500 tickers (by market cap), repeated at every quarterly forecast start date, with 5000 Feynman paths and a fixed RNG seed. For each start date, ticker and horizon, the model is calibrated on price history up to that date, then asked to forecast forward; we then measure what fraction of the actual daily closes over the forecast window fell inside the model's quoted [q05, q95] band. Coverage varies widely — and the single biggest driver of that variation is simply when the forecast started. Section 3 reports every start date, including the bad ones; we do not round them up and we publish no average of them.

Important framing: this is a coverage metric, not a directional hit-rate. A high CI90 coverage score does not mean the model is correct that often about price direction. Directional accuracy for any model in efficient large-cap markets is typically only modestly better than a coin flip. The value of coverage is risk management: knowing a realistic price range with a quantified confidence level — provided the bands are actually calibrated, which (as Section 3 shows) holds for some names and horizons and not others.

2. Model Architecture

The Quantustik forecast engine combines two physics-inspired components:

The q05 and q95 percentiles of the path ensemble form the CI90 band reported in the API and dashboard.

3. CI90 Coverage by Forecast Start Date

The table below shows the measured CI90 coverage at three horizons, for each quarterly date a forecast could have started on. Coverage is the fraction of actual daily closing prices over the forecast window that fell inside the model's quoted [q05, q95] band, averaged across the TOP-20 names for that start date. This is a real, reproducible backtest: 5000 Feynman paths per Bayesian sample, RNG seed 42. The record is version-controlled in the repository at app/quantum_model/baselines/rolling_anchor_calibration.json, and the table is rendered from it rather than transcribed, so it cannot drift away from the recorded run.

There is no total row, and that is deliberate. The quarterly windows overlap at 6 months and 1 year, so nine start dates are worth about nine independent readings at 3 months but only two or three at 1 year. One averaged headline would carry an accuracy this sample cannot support — and a confidence interval printed on top of it would be worse, because an interval on an estimate of a probability reads to most people as a range the price might land in. The rows are the finding.

Cells highlighted in green are inside the closed 85–95% band we publish as well-calibrated for a 90% interval. Everything else is an honest miss, in one of two directions: below the band the interval was too narrow to contain what happened (over-confident — the direction that hides real downside), and above it the interval was so wide it carried little information — a “90% band” containing 99% of outcomes is not a 90% band, and we do not score it as a pass. We publish both directions rather than hide them, because a coverage metric is only meaningful if its failures are visible. The record is measured against the model as served, with the market and sector coupling attached, so these figures describe the same code path a live forecast runs through; the price series behind both the forecasts and the realized outcomes is FMP's split-adjusted close, which is what the production pipeline uses.

Forecast start date 3mo CI90 6mo CI90 1yr CI90
31 Mar 2024 84% 92% 90%
30 Jun 2024 87% 82% 96%
30 Sep 2024 78% 88% 90%
31 Dec 2024 87% 75% 86%
31 Mar 2025 80% 84% 94%
30 Jun 2025 83% 88% 90%
30 Sep 2025 94% 71% 90%
31 Dec 2025 95% 86% 96%
31 Mar 2026 91% 91% 90%

Methodology: one forecast window per start date, ticker and horizon, repeated quarterly. For each of them the model is calibrated on price history up to that start date (3-month = 63 trading days, 6-month = 126, 1-year = 252 days forward), then the actual daily closes over that window are checked against the forecast [q05, q95] band. No look-ahead: training strictly uses data up to the start date. Source record: rolling_anchor_calibration.json (5000 paths, seed 42). Numbers can shift slightly between machine environments because the production path kernel is parallel; the committed record is the canonical figure and is reproducible under BACKTEST_DETERMINISTIC=1.

4. How Much the Start Date Matters

The same model, the same twenty names and the same seed produce materially different coverage depending only on which quarter the forecast started in. This table states that spread directly, and counts how many start dates land inside the [85%, 95%] tolerance we publish as well-calibrated for a 90% band. A range is a description of what the start dates did, not an estimate of a long-run rate, so it claims no precision the sample cannot back.

Horizon Window (trading days) Coverage across start dates Start dates inside [85%, 95%]
3 months 63 78% – 95% 5 of 9
6 months 126 71% – 92% 5 of 9
1 year 252 86% – 96% 7 of 9

The honest read: coverage spans 3 months 78–95%, 6 months 71–92%, 1 year 86–96% across start dates, against a 90% target. The spread is the finding. We publish no single averaged number for any horizon, because these windows overlap at 6 months and 1 year — averaging them would state an accuracy this measurement cannot support, and a confidence interval printed on an estimate of a probability invites a reader to mistake it for a range the price might land in. Individual windows are worse than the table: UNH started 30 Jun 2025 (10%), NVDA started 30 Jun 2024 (6%) and NVDA started 31 Dec 2024 (2%). A model whose marketing claimed “97% on everything” would be hiding exactly this variation — we are not.

Illustrative example, not a measured result. Conceptually, coverage should be lowest when the market-conditions classifier is slow to widen its bands going into a volatility spike, and highest in calm trending markets. For instance, a 3-month forecast issued just before a sudden risk-off shock would be expected to under-cover, because realised prices gap outside bands sized for the prior calm market. This is the mechanism we tune against; the specific breakdown by market conditions is not part of this backtest artifact and is therefore not reported here as a measured figure.

5. Known Limitations


Disclaimer. This document is educational research only. The CI90 calibration figures presented are historical backtest measurements and are not a guarantee of future forecast accuracy. Quantustik does not provide personalized investment advice and no content herein constitutes a solicitation to buy, sell, or hold any security. Past performance of confidence-interval calibration does not guarantee future results. Always consult a qualified financial advisor before making investment decisions.