What each reading means, refreshed every trading morning — and how to use it without over-reading it.
The top of the dashboard opens with a one-line status — is a new rotation starting? — from the young-rotation flag (more below), then three readings, industry first:
"Rotation" means leadership is reordering broadly — not the whole market rising or falling together, and not one mega-cap dragging its group along. Both are removed before the model ever sees the data (see Methodology). The industry and sector probabilities are detection readings (where are we now); "is a new one starting" is the separate forward question the young-rotation flag answers.
An honest limit on the industry grain. Industries are the finer, more useful view of what is happening — but the aggregate industry probability is not a good "something is starting" signal on its own: it sits above its threshold on about half of all days, so it is almost never off. When we measured its standalone forward edge (July 2026) it was indistinguishable from random. Use the industry grain to see where leadership is shifting; use the young-rotation flag for whether a new one is starting.
The probability maps to a plain-language state:
| State | Probability | What it means |
|---|---|---|
| Calm | 0.00 – 0.50 | No active rotation. Sector leadership is stable; dispersion sits below episode thresholds. |
| Elevated | 0.50 – 0.70 | Pressure building. Dispersion rising and leadership starting to reorder — watch, don't act. |
| Rotation | 0.70 + | Active regime. Leadership reordering broadly, on breadth rather than a single name. |
These are display bands on a calibrated probability — when the model reads 0.30, rotation regimes have historically occurred about 30% of the time at that level (calibration error on 2021+ is 0.0054; 0 = perfect).
The bands moved on July 17, 2026, and we owe you the reason. Elevated used to begin at 0.20. When we measured what a 0.20 crossing was worth on data the model had not been fitted on, it was very close to nothing, for a line this page was calling "the early-warning signal". So Elevated now starts at 0.50. In the walk-forward backtest (2021 onward, a model that never saw the future), a rotation was confirmed within 20 trading days of a 0.50 crossing 55% of the time, against 30% after an average day (1.81×), with a median 14 trading days of warning. Read that honestly: 45% of those crossings were not followed by a rotation. This is a tilt in the odds, not a prediction. (The 0.50 band was chosen after looking at 2021+ results, so these figures are not a clean test; the live record on the dashboard is.)
Each sector's bar is its market-denoised residual return — the sector's move after removing its own beta to the index. What remains is genuine relative movement, not the market carrying everyone together. Positive (green) leads; negative (red) lags.
Breadth — the share of a sector's members actually participating — is the honesty check on each bar. A sector "leading" on thin breadth is usually one or two names, not a real rotation into it.
The model is one read. The Regime metrics panel adds a row of recognized rotation gauges — turbulence, relative-strength dispersion, volume intensity and more — each charted as its percentile versus its own history, so you can watch the ones you trust and toggle the rest on to compare. The score on each chip (ρ vs 13F) is how closely that gauge tracked the sector rotation institutions actually executed, reconstructed from their 13F filings.
Rotation Intensity is the standout — days that carry both a volume spike and elevated turbulence. It tracked the real 13F rotation better than any single measure, and it is fully independent of the model, so when the two agree that is genuine corroboration, not one lens fooling itself. It measures rotation intensity (that it is happening), not which sector wins.
Because it is a magnitude, not a regime probability, the model and Rotation Intensity can read differently — and that is useful, not a contradiction. A Calm model beside an Active intensity means no confirmed regime yet, but realized churn already above average — often the leading edge; the reverse (model elevated, intensity quiet) is a dispersion pattern not yet backed by heavy volume. We publish both rather than merge them: a naive combination we tested tracked the real rotation worse, not better, so collapsing them into one number would hide information.
Our rule is deliberately strict: it only calls a rotation after five straight qualifying days. That stops two noisy days being announced as a regime — but it also means that by the time the rule speaks, the first four days are already behind you.
The flag asks the forward question. When a candidate run is underway, it estimates the probability that this run survives to five days and confirms. Most do not: in the walk-forward backtest about 20% of young-run days belonged to runs that made it. Runs die for unglamorous reasons — on July 14, 2026 one ended because participation printed 0.4396 against a 0.45 floor, a miss of one hundredth.
Why you can trust the number, and exactly how far. The published flag is fitted on 1990–2020 and scored on 2021+: AUC 0.813, against 0.735 for a benchmark knowing nothing but how many days the run has already lasted. Refitted every year on past data only (the walk-forward backtest), it scores 0.822 against 0.738 on 2001–now. Beating that benchmark is the whole test — runs that have lasted longer are likelier to continue, and that is arithmetic, not insight. Its calibration error on 2021+ is 0.0027 (0 = perfect).
What it does not do. It forecasts our own definition of a rotation and nothing else. It will not tell you which sector wins — we measured that and found no skill at all. It will not tell you how big the move gets — a naive "today's dispersion continues" guess beats us there. It is not a return forecast. A high reading means a rotation is more likely to be declared, not that there is money in it.
The map lays out every industry as a tile, so you can see where the rotation is concentrated at a glance — something the headline readings can't show.
Put together: a big green tile is an established rotation into that industry (broad and weeks-long — possibly already late); a small, vividly-colored tile is a fresh move just beginning — the early signal. An industry drifting with the market (no real trend) stays small and neutral, so it never dominates the map by size alone.
The chart is the monthly average of the published probability since 1990. Each day's value uses observations up to that day, but the model was fitted on 1990–2020 as a whole, so the line before 2021 is in-sample. The dashed line marks 2021: to its right is the period the fit never used. Shaded months are rotation episodes by the mechanical rule. For a record with no look-ahead at all, read the walk-forward backtest on the dashboard.
A latent-state model will fit something to any data, so the numbers below the chart are how you know this one is real:
It's a detector, not a crystal ball. Identifying whether we're in a rotation today is where the model is strong. Predicting one before it is visible is much harder, and we report that skill honestly as modest and short-lived. Don't read today's number as a forecast.
Research and educational content only — not investment advice, and not a recommendation to buy or sell any security. The reading is a statistical estimate with uncertainty.
The pipeline starts at 06:00 ET, Tuesday–Saturday (it waits while the price feed's own pipeline is still running), and the page updates when it finishes, after the prior session's prices land. The "as of" date at the top always tells you the last data the reading is built on. If the price feed stalls, the page holds the last good date rather than showing a stale number dressed up as fresh.