FundFlow · Field guide
How to read the desk
The FundFlow desk is a set of relative, descriptive instruments for reading sector behavior: a KPI strip, a momentum-rotation backtest, a relative-strength leaderboard, a Relative Rotation Graph (RRG), a momentum heatmap, a cyclical-versus-defensive regime line, a breadth gauge, and a dispersion gauge. Every one of these measures sectors against each other or against a benchmark. None of them measures a sector against its own future. They describe which parts of the market have been leading and which have been lagging, and how much risk appetite is currently being expressed across the group — nothing more. Read them as a description of the present and recent past, stated in relative terms.
These are not signals to trade, and the desk does not present them as such. The leaderboard does not tell you a sector will keep leading; the rotation backtest is a historical record of one mechanical rule, not a forecast of your forward return; the RRG plots where sectors sit on a relative-momentum plane, not where they are going next. Leadership can reverse the day after it is measured, and a relative reading says nothing about absolute direction — every sector can be falling while one still "leads." Treat the desk as a lens for understanding structure and risk appetite, not as an instruction set. This is commentary and education, not investment advice.
01 / 08
The KPI strip
Eight tiles compressing the whole market’s pulse — indices, volatility, regime, breadth, top sector — read before any single name.
Full explanation
The KPI strip is the desk's at-a-glance read on where the broad market sits today and which way risk appetite is leaning. It compresses five headline index proxies and three computed reads into one row so you can take the market's pulse before touching any single name. It answers questions like: are the major indices up or down on the day, is volatility expanding or contracting, is the tape rewarding cyclical risk-taking or defensive positioning, how widely is strength distributed across sectors, and which sector currently sits at the top of the relative-strength ranking. A desk watches it because context sets the frame: the same setup in a single stock reads very differently when breadth is broad and the regime is risk-on versus when leadership is narrow and defensive. It is a relative, proxy-based snapshot, not a measure of money actually moving into or out of funds.
Eight dense tiles sit across the top. Five are ETF index proxies: SPY for the S&P 500, QQQ for the Nasdaq 100, DIA for the Dow, IWM for the Russell 2000, and VIXY for volatility. Each shows the ETF level plus its daily percent change, coloured green or red by the sign of that change. VIXY is the deliberate exception: its colour is inverted, so volatility falling (VIXY down) shows green to signal de-risking conditions, and volatility rising shows red. The remaining three tiles are computed reads. Regime classifies RISK-ON versus RISK-OFF from the ratio of cyclical to defensive sectors measured against its own moving average. Breadth reports the percentage of sectors trading above their 50-day average. Leader names the single top-ranked sector by the Outlier RS composite, pulled from the same ranking that feeds the leaderboard so the strip and the leaderboard can never disagree. None of these are dollar fund flows; they are ETF proxies and relative reads.
- A green index tile means that proxy is up on the day, red means down — read SPY, QQQ, DIA and IWM together for whether large-cap, tech, blue-chip and small-cap are moving in agreement or splitting.
- On the VIXY tile the colour is inverted on purpose: green means volatility is falling (conditions easing), red means volatility is rising (conditions tightening). Do not read green VIXY as 'volatility up.'
- Regime reading RISK-ON means the cyclical/defensive ratio sits above its moving average; RISK-OFF means it has crossed below. It is a state label, not a forecast or a signal to act.
- Breadth as a high percentage means most sectors are above their 50-day line (broad participation); a low percentage means strength is narrow even if the headline indices are green.
- Leader shows the current #1 sector by the Outlier RS composite. Because it is drawn from the same ranking as the leaderboard, treat any apparent mismatch as a display issue, not two competing signals.
- Cross-check the tiles against each other: indices green but Breadth low, or Regime RISK-ON while VIXY is red, is internal disagreement worth noting before you lean on any one tile.
- These are ETF proxies and relative reads, not actual dollar fund flows — the strip does not tell you whether capital is entering or leaving any fund, only how prices and rankings are positioned.
- Every read is end-of-the-current-snapshot and same-day in nature: Regime and Breadth use moving-average and 50-day comparisons that lag turns, so a regime flip or breadth thinning shows up after the move has begun, not before.
- It describes the market's current state, not direction. RISK-ON, broad breadth, or a falling VIXY are descriptions of conditions, not predictions and not buy/sell instructions; conditions can reverse intraday.
- The strip is a top-level frame only — it says nothing about any individual security, valuation, news, or position-specific risk, and a single leader sector or a green index row can mask divergence happening underneath it.
02 / 08
Momentum-rotation backtest
A monthly top-3 sector-momentum rule backtested against just holding SPY — judge it by the “vs SPY” gap, not the raw return.
Full explanation
This panel measures how a simple, rules-based sector-rotation scheme would have behaved against a passive SPY position over the available history. It is a relative-strength momentum study: each month it tilts toward the SPDR sectors that have recently outperformed the index and holds only those. A desk watches it to gauge whether persistence in sector leadership has been exploitable in this sample, how much trading that exploitation costs, and how the rotation's return and drawdown profile compares to simply holding the benchmark. It is a behavioural reference for a mechanical rule, not a recommendation and not a live track record.
Once a month (roughly every 21 trading days) the rule ranks the 11 SPDR sector ETFs by a blended excess relative-strength score: it takes each sector's return over a 21-day and a 63-day lookback, subtracts SPY's return over the same windows, and blends the two excess figures. It holds the top 3 sectors equal-weight (one-third each) until the next monthly rebalance, charging 10 bps per side on whatever turnover the new basket implies. The resulting equity curve is rebased to 1.0 and drawn over a SPY buy-and-hold curve rebased the same way. Reported stats: Ann (annualised return), vs SPY (the rotation's excess over the benchmark), Sharpe (risk-adjusted return, marked with a star when the sample is too short to trust), MaxDD (worst peak-to-trough drawdown), Hit (share of rebalances that beat the benchmark, also starred on short samples), Turnover, and Rebal (number of rebalances). It runs on a limited end-of-day history and is labelled "illustrative, not a track record."
- Read the two curves together: where the rotation line sits above the rebased SPY line, the rule was ahead in this sample; where it sits below, holding the index would have done better. The gap is the visual form of the 'vs SPY' stat.
- Treat 'vs SPY' as the headline, not 'Ann'. A high annualised return that is at or below the SPY excess line means the rule mostly captured beta, not rotation skill.
- A star on Sharpe or Hit means the sample is too short to lean on that number — read it as directional, not a measured edge.
- Cross-check Turnover and Rebal against the return: if 'vs SPY' is thin while turnover is high, the 10 bps-per-side cost is eating most of what the ranking generated.
- Read MaxDD as the cost of being concentrated in only 3 sectors — a long-only, top-3 basket can draw down hard when leadership reverses between monthly rebalances.
- Hit tells you consistency, not magnitude: a Hit near or below 50% means any outperformance came from a few rebalances, not a steady edge.
- It is a single backtrack over a limited EOD history with no out-of-sample or walk-forward separation — the parameters (21/63-day blend, top-3, monthly) are fixed, so the curve shows what these specific rules did in this specific window, not what they will do next.
- Costs are modelled only as 10 bps per side on turnover. It ignores slippage, bid-ask spread, market impact, ETF tracking error, dividends/total-return effects, and taxes, so the real net result would be worse than drawn.
- Long-only and always fully invested in 3 sectors: it has no cash, hedge, or stop, so it carries full market risk and cannot avoid a broad drawdown — momentum reversals and choppy, trendless regimes are its known failure modes.
- The headline stats can mislead on short samples (hence the stars): Sharpe and Hit are unstable, and 'Ann' annualises a short record, which can overstate both gains and losses. It is commentary on a mechanical rule, not advice and not a forward expectation.
03 / 08
Outlier RS leaderboard
Ranks all 11 sectors 0–100 on strength, momentum and trend — scan top-to-bottom to see where leadership sits.
Full explanation
The Outlier RS leaderboard collapses the two-axis relative-strength rotation picture into a single ranked score, 0–100, for each of the 11 sectors. Where the rotation scatter asks you to eyeball position and direction across two dimensions, the leaderboard answers one narrow question: relative to the other sectors right now, where does each sector sit on a blend of how strong it already is, how its strength is changing, and whether it is trading above its own recent trend. It exists because a desk often needs an ordering, not a cloud — a way to scan all sectors top-to-bottom in one pass and see where relative leadership is currently concentrated versus where it is lagging.
The score is a weighted composite of three inputs, all computed across the same 11-sector cross-section. First, each sector's RS-Ratio is converted to a percentile rank against the other ten sectors; that contributes 0.45 of the weight. Second, each sector's RS-Momentum is converted to a percentile rank the same way, contributing 0.35. Third, a binary trend flag contributes 0.20: it is 1 if the sector is currently above its own 50-day average, 0 if not. The three pieces are summed and scaled to land on a 0–100 range. Because the two percentile inputs are cross-sectional, every score is relative to the current peer set — the numbers describe ordering among these 11 sectors, not absolute strength. The panel renders the result as a segmented bar for the score, with pills showing the underlying RS and MO percentiles and the >MA flag, and colours the row by tier: 66 and above is strong (green), 33 to 65 is mid (blue), below 33 is weak (dim).
- A green row (score ≥66) means the sector ranks highly on the blended measure relative to the other ten right now — it is not a statement that the sector is rising in absolute terms.
- Read the RS and MO pills together: a high RS percentile with a low MO percentile is an established leader that is fading on the momentum axis; the reverse is a laggard that is improving. The single score hides this tension, so the pills are where you recover it.
- The >MA flag is binary and worth only 0.20 — a sector can flip from below to above its 50-day average and move the score by a fixed step regardless of how far above or below it actually is.
- Mid-tier (blue, 33–65) is the crowded middle. Small input changes move sectors in and out of this band, so treat ordering within it as low-confidence.
- Because percentiles are cross-sectional, the whole board can shift when one sector's raw RS changes — a sector's score can fall purely because a peer improved, with nothing changing in the sector itself.
- Compare the leaderboard ranking against the rotation scatter rather than instead of it; if a sector's tier and its scatter quadrant disagree, the disagreement is the signal to inspect, not to average away.
- It is purely relative and cross-sectional. In a broad drawdown every sector can fall together while the leaderboard still shows green rows at the top — a high score never means the sector is going up, only that it ranks above its peers on this blend.
- The weights (0.45 / 0.35 / 0.20) and the 50-day average are fixed design choices, not optimised or validated parameters. A different blend or lookback would reorder the board, and the score gives no indication of how sensitive the ranking is to those choices.
- The 0.20 trend term is a hard binary at the 50-day average. Sectors sitting right at that line are unstable — a marginal move flips the flag and produces a visible score jump that overstates a trivial change.
- A single composite number compresses away the RS-versus-MO disagreement, the magnitude behind each percentile, and any history. Two sectors with the same score can be in very different states, and the leaderboard says nothing about why a sector ranks where it does, how long it has held that rank, or whether the ranking is durable.
04 / 08
Relative Rotation Graph (RRG)
Plots each sector’s strength vs SPY against whether that strength is rising or fading — read the tail’s direction, not just the dot.
Full explanation
The Relative Rotation Graph maps where every sector stands relative to SPY, and which way that standing is moving. It plots two things at once: how strong a sector is versus the benchmark right now (its relative-strength level), and whether that strength is building or fading (the rate of change of that level). A desk watches it because single-name or single-sector strength is ambiguous in isolation — a sector can look strong while quietly losing ground, or look weak while turning up. The RRG separates level from direction so leadership can be read as a rotating map across the whole sector universe at one glance, rather than ranked in a static table that hides which way each name is travelling.
Each sector is measured against SPY as the benchmark. The horizontal axis, RS-Ratio, is the LEVEL of that sector's relative strength versus SPY — z-score-normalised and re-centred so the neutral point sits at 100. The vertical axis, RS-Momentum, is the RATE OF CHANGE of that same relative-strength series, also centred at 100; because it is a derivative of the level, it tends to turn before the level itself does. The 100/100 crosspoint splits the plane into four quadrants: Leading (strong and rising, RS-Ratio above 100 and RS-Momentum above 100), Weakening (strong but falling), Lagging (weak and falling), and Improving (weak but rising). Each sector is drawn as a single dot with a tail attached — the tail traces the last 5 sessions of where that sector has been on the two axes, so you see the path, not just the endpoint.
- Watch RS-Momentum (the y-axis sign) first — it is the faster, leading component. RS-Ratio (the x-axis level) LAGS the underlying price-relative by weeks (StockCharts' own worked example shows roughly 10 weeks), so a sector's quadrant position is a slow, confirming read, not an early one.
- Read the tail, not just the dot — direction of the trail shows whether a sector is accelerating, stalling, or reversing; a lone dot tells you position but not travel. The tails here are short (only a few plotted sessions), so read travel as a hint, not a trajectory.
- Sectors TEND to rotate clockwise: Improving (weak, rising, lower-left up) into Leading (upper-right), then Weakening (strong but rolling over, upper-left) and down into Lagging (lower-left). This is a tendency, not a law — do not extrapolate the arc; rotations stall, skip quadrants, and whipsaw.
- RS-Momentum (y) turning before RS-Ratio (x) is expected by construction, since momentum is the rate of change of the level — a sector crossing above 100 on the y-axis while still left of 100 on x is the Improving signature, not yet confirmed leadership.
- Position relative to the 100/100 cross tells you the quadrant; both axes are centred on 100, so 'above/right of 100' means above the SPY-relative neutral, not above any absolute return level.
- Tail length is a crowding-and-conviction cue: long tails mean fast rotation, tight clusters near the centre mean sectors are tracking SPY closely with little relative signal.
- This is an illustrative cross-sectional SNAPSHOT, not a JdK-faithful RRG. Under the hood it is a single-pass approximation — a cross-sectional z-score of the relative-strength level plus a rate-of-change of that level — with windows fitted to thin daily data. The canonical JdK construction (a 52-period RoC plus a 14-period z-score with double-smoothing, designed for weekly bars with roughly 66 observations of warmup) is not computable on our roughly 130 daily closes, so do not read this as the textbook RRG.
- It is relative, not absolute — a sector in the Leading quadrant is outperforming SPY, which can still mean falling in price if the whole market is falling. The RRG says nothing about market direction or absolute return.
- It is a leadership map, not a timing or top-calling signal. Quadrant membership and the clockwise tendency describe where a sector sits and how it is moving; they do not mark entries, exits, or turning points, and rotations frequently stall or reverse mid-quadrant.
- The tails are short (only a few plotted sessions) and the z-score normalisation is relative to recent history — both make the picture sensitive to the lookback and to short bursts of noise. A two-day move can swing a dot across a quadrant boundary without a durable change in leadership. Because RS-Ratio lags by weeks, the position can keep confirming a move that has already turned.
- Everything is measured against one benchmark, SPY. Change the benchmark and the entire map changes; the graph carries no information about why a sector is rotating (flows, earnings, rates) and no view on individual names inside a sector.
05 / 08
Momentum heatmap (trailing RS)
Each sector’s out/under-performance vs SPY over 1W/1M/3M in a coloured grid — green beats the market, red lags.
Full explanation
The momentum heatmap measures trailing relative strength: how much each sector has out- or under-performed the broad market over recent fixed windows. For every sector it computes excess return versus SPY across three horizons — 1 week, 1 month, and 3 months — and lays them out in a sortable grid. A desk watches it because it converts "which sectors have been leading or lagging, and over what timeframe" into a single tabular read. It is the numerical counterpart to the RRG: the RRG plots where sectors are heading on a momentum-versus-strength plane, while the heatmap shows the trailing performance numbers behind that picture, side by side across horizons.
For each sector we take its trailing return and subtract SPY's return over the same span, producing an excess return for three windows: 1W (5 trading sessions), 1M (21 sessions), and 3M (63 sessions). Those three excess-return figures become the columns of the grid, one row per sector. Each cell is coloured by the sign and magnitude of its excess return — green for positive excess (outperforming SPY), red for negative (underperforming), with deeper shade for larger magnitude. A window toggle re-sorts the whole grid by the selected horizon, so you can rank sectors by 1W, 1M, or 3M leadership on demand. The inputs are sector price series and SPY over those three fixed lookbacks; there are no smoothing, weighting, or risk-adjustment steps beyond the raw excess-return calculation.
- Green cell = the sector beat SPY over that window; red = it lagged. The depth of colour scales with the size of the excess return, so a deep-green 3M cell is a larger margin of outperformance than a pale-green one.
- Read a row left to right (1W, 1M, 3M) to see how a sector's leadership has evolved: green across all three suggests persistent strength; red short-window next to green longer-window suggests recent fading of a prior lead.
- Use the window toggle to ask different questions — sort by 1W to surface the most recent movers, by 3M to surface the more established trend. The same sector can sit near the top under one horizon and mid-pack under another.
- Disagreement across columns within a row is itself the signal: a sector green on 3M but red on 1W is decelerating relative to the market; red on 3M but green on 1W is a recent reversal, not a confirmed trend.
- Cross-check against the RRG: the heatmap gives the trailing magnitudes, the RRG gives the trajectory. A sector with strong green numbers here that is rolling over on the RRG is a different read than one that is still climbing.
- It is entirely backward-looking. Every cell is a trailing return over a closed window; nothing here forecasts whether leadership continues or reverses next session.
- Excess return is measured only versus SPY. A sector showing deep red in a broad sell-off may still be falling less than other sectors — relative weakness here does not distinguish a defensive holder from an outright collapse, and absolute risk is invisible.
- There is no risk or volatility adjustment. A large excess return driven by a single gap or a high-volatility sector looks identical to a steady, low-variance lead of the same size; the grid cannot tell you which.
- The three fixed windows (5/21/63 sessions) impose arbitrary cut points. A move that started just outside a lookback, or a single outsized session inside it, can dominate a cell, and very short 1W readings are noisy and easily reshuffled day to day.
06 / 08
Cyclical / Defensive regime
Cyclicals vs defensives as one line — above its average is a risk-on appetite, below is risk-off.
Full explanation
This panel measures the market's risk appetite as a relative read. It tracks one cyclical-sector basket against one defensive-sector basket and asks a single question: are the parts of the market that do well when growth and demand are expanding outpacing the parts investors hide in when they want safety? When cyclicals lead, the desk reads a risk-ON tilt; when defensives lead, a risk-OFF tilt. A desk watches this because it frames every other signal — the same read that flows into the Regime KPI tile — and because relative leadership between these two baskets often shifts before the broad index does. It is a description of where appetite sits today, not a claim about where price goes next.
We compute the ratio of a cyclical-sector basket to a defensive-sector basket and plot it as a single line, overlaid with its own 20-day moving average. The line's position relative to that 20-day MA is the entire signal: above the MA means cyclicals are leading defensives over the recent window (risk-ON); below means defensives are leading (risk-OFF). This is the exact signal that drives the Regime KPI tile, so the panel and the tile never disagree. A small Dispersion tile rides alongside the line — see the dispersion section for how that is built and what it adds. No forecast, no scoring, no directional call: just the ratio, its 20-day average, and which side of it we are on.
- Line above its 20-day MA: cyclicals are leading defensives over the recent window — read this as a risk-ON tilt in appetite, the same state the Regime KPI tile will be showing.
- Line below its 20-day MA: defensives are leading — a risk-OFF tilt. Again, the KPI tile mirrors this exactly.
- A fresh cross of the line through its MA marks a change in which side of the regime you are on; treat a single-bar cross with more caution than a cross that holds for several sessions.
- The line hugging or chopping across the MA means cyclicals and defensives are roughly level — appetite is undecided, and the ON/OFF label is weak rather than informative.
- Glance at the Dispersion tile next to the line for context on how broad-based the move is — a regime read carries different weight when dispersion is high versus compressed (see the dispersion section).
- Read direction and side, not magnitude: the line being far above the MA is not a stronger 'buy' than being just above — it only tells you appetite has been tilted ON for longer or more persistently.
- It is a relative read, not a forecast. It tells you who is leading now; it does not predict whether that leadership continues, and it can flip the day after you read it.
- Both baskets can fall together. A risk-ON label only means cyclicals are falling less (or rising more) than defensives — it does not mean the market is going up. You can be 'risk-ON' inside a broad drawdown.
- The 20-day MA lags. Around turns the line will whipsaw across its average, producing crosses that reverse quickly; the signal is least reliable exactly when regimes are changing.
- It is a two-basket abstraction. Sector composition, single-name concentration, or a rotation that does not align with the cyclical/defensive split can move the ratio for reasons unrelated to genuine risk appetite — and it carries no buy/sell, level, or position implication on its own.
07 / 08
Breadth (% above 50-day MA)
The share of sectors above their 50-day average — high means a broad advance, low means a thin tape carried by a few.
Full explanation
Breadth measures how widely participation is spread across the sectors FundFlow tracks. Specifically, it reports the share of those sectors currently trading above their own 50-day moving average. A high reading means many sectors are advancing in step; a low reading means the tape is being carried by a narrow set of names while the rest lag. A desk watches breadth because index level alone can mask its own internals — a benchmark can keep printing while fewer and fewer components do the actual work. Breadth makes that internal participation visible, and is most useful as a check on whether the headline move is broadly supported or thin.
For each tracked sector we compute its own 50-day moving average, then check whether the sector is trading above or below that line. Breadth is the percentage of sectors above their 50-day MA, recomputed each period and plotted as a single line over time. Horizontal reference bands are drawn at 80, 50, and 20 to give the line context. These bands are display conventions for high / middle / low participation — they are not signals or triggers. The most informative use described in the spec is as a divergence flag: comparing the direction of the index against the direction of breadth and watching for the two to disagree.
- Treat this as a CONFIRMATION and health-context gauge, not a timing input. It tells you whether a move is broadly supported; it is not a 'go to cash when breadth drops below 50%' gate, and using it that way over-reads a noisy series.
- Read it with hysteresis, not as a precise cross. This is an 11-name series, so it steps roughly 9.1% per sector across any single threshold and is jumpy right around the 50 line. Read 'broad' above roughly 55, 'narrow' below roughly 45, and neutral in between, rather than acting on a single tick over or under 50.
- A line up near the 80 band means most tracked sectors sit above their 50-day MA — broad participation, the move is widely shared. A line down near the 20 band means few do — a narrow tape carried by a handful of leaders.
- Its most useful job is as a divergence FLAG: when the index is rising but the breadth line is falling (or vice versa), the headline and the internals disagree — flag it and look closer. Such divergences resolve in BOTH directions and on no fixed clock.
- When index direction and breadth move together, the panel is simply confirming that the move is broadly supported; no divergence to investigate.
- Watch the shape over time, not a single dot: a breadth line drifting down while price holds up is the pattern this panel is built to surface.
- This is a market-internal breadth measure — the share of tracked sectors above a moving average — and is a DIFFERENT concept from the academic 'breadth of ownership' (Chen, Hong & Stein 2002), which is a holdings-based count of how many investors own a name. Do not conflate the two; the strong ownership-breadth result does not validate this participation panel.
- With only 11 names, the series is coarse and noisy near any threshold — each sector flipping is roughly a 9.1% step — so it is least reliable exactly at the 50 line where a single sector decides the side. This is confirmation context, not a trigger.
- It is a count of sectors above a line, not a measure of magnitude — it cannot tell you how far above or below the 50-day MA any sector is, so two very different tapes can print the same breadth value.
- The 50-day MA is one fixed horizon. Participation measured against a shorter or longer average can look different, and the chosen window can lag fast turns or whipsaw in choppy conditions.
- It reflects only the sectors FundFlow tracks; concentration or rotation inside a single sector, or anything outside the tracked set, is invisible here.
- A divergence flag is an observation, not a forecast — breadth and the index can disagree for extended stretches without resolving in either direction, and the bands at 80/50/20 are display conventions, not thresholds that imply any action.
08 / 08
Dispersion
How far apart sectors are moving — wide means room for sector picks to matter, narrow means one macro factor rules.
Full explanation
Dispersion measures how far apart the sectors are moving on a given session — the cross-sectional spread of sector daily returns. When every sector posts a similar return, spread is low and the tape is being driven by one shared macro factor; selecting between sectors buys you little. When sector returns fan out, spread is high and sectors are trading on their own idiosyncratic drivers, which is the condition under which a rotation decision can actually separate from the pack. A desk watches it to size the opportunity for rotation: it answers "is there room for sector selection to matter right now," not "which sector to be in."
Each session we take the daily return of every sector in the universe and compute the standard deviation across that cross-section — one number per day capturing how widely the sectors disagreed. That raw series is smoothed to damp single-day noise, and the smoothed value is what the panel reports. Alongside the current value we draw a sparkline of its recent path and compute a percentile rank of where today's reading sits against the tool's own history, bucketed into narrow, normal, or wide. The percentile is self-referential — it compares this universe to its own past, not to any external benchmark or absolute level.
- Headline value is the smoothed std-dev of sector returns for the session — higher means sectors are decoupling, lower means they are moving as a bloc.
- Percentile bucket is the read to act on, not the raw number: 'wide' means dispersion is high versus its own history (more room for selection to separate), 'narrow' means low (a single macro factor dominates and rotation adds little), 'normal' is the unremarkable middle.
- Use the sparkline for direction of the regime: spread climbing toward 'wide' signals sectors are starting to trade on their own drivers; spread collapsing toward 'narrow' signals correlation rising and the universe consolidating onto one factor.
- Read 'wide' with caution, not enthusiasm: empirically, high dispersion clusters at market transitions and has tended to PRECEDE WEAKER subsequent relative-strength payoffs and elevated crash risk (Stivers & Sun) — it is not a green light for rotation. Because it widens the gap between right and wrong calls symmetrically, it argues for keeping holdings equal-weight rather than concentrating.
- Because the rank is against its own history, a 'wide' tag is relative — it does not assert dispersion is high in any absolute or cross-asset sense, only high for this universe.
- Dispersion is direction-blind. It tells you how much sectors are separating, never which way — a wide reading is equally consistent with leaders to be long and laggards to be short, and the panel takes no side.
- It sizes opportunity, not edge. High dispersion means there is room for selection to matter; it does not mean your selection is correct or that a profitable rotation exists. The opportunity can be wide and still be missed.
- The percentile is self-referential and regime-bound. A 'wide' tag only means wide versus this universe's own past; a structurally low-dispersion universe can read 'wide' on a modest spread, and a high-dispersion period resets the bar.
- Smoothing trades responsiveness for stability. The smoothed value lags abrupt shifts, so a sudden decoupling or re-coupling shows up late, and a single violent session can be damped out of the headline even when it matters.
- The intuitive read — wide dispersion equals a bigger rotation opportunity — is the inversion the evidence warns against: studies (Stivers & Sun 2010/2013; Hurst & Docherty) find relative-strength payoffs are SMALLER, not larger, after high-dispersion readings, because high dispersion marks unstable, transition-prone regimes.
09 · reference
The tickers
Every symbol on the desk and what it stands for. Sector reads use the 11 SPDR sector ETFs; the KPI strip adds five index proxies. All relative strength is measured against SPY.
- SPY
- S&P 500 — The 500 largest US companies — the broad-market benchmark every relative-strength read on this desk is measured against.
- QQQ
- Nasdaq 100 — The ~100 largest non-financial Nasdaq companies — technology-heavy, so it reads as the growth/tech proxy.
- DIA
- Dow Jones Industrial Avg — 30 large US "blue-chip" companies, price-weighted — an old-economy, large-cap proxy.
- IWM
- Russell 2000 — About 2,000 US small-cap companies — the small-cap / risk-appetite proxy.
- VIXY
- Short-term VIX futures — A proxy for expected near-term S&P 500 volatility ("fear"). It rises when markets get nervous — which is why its tile colour is inverted.
- XLK
- TechnologyCyclicalTechnology — software, hardware, and semiconductors.
- XLF
- FinancialsCyclicalFinancials — banks, insurers, and capital-markets firms.
- XLY
- Consumer Disc.CyclicalConsumer Discretionary — retail, autos, travel and leisure (spending that rises in good times).
- XLI
- IndustrialsCyclicalIndustrials — machinery, aerospace, defence, and transports.
- XLB
- MaterialsCyclicalMaterials — chemicals, metals & mining, and packaging.
- XLV
- Health CareDefensiveHealth Care — pharma, biotech, devices, and providers.
- XLP
- Consumer StaplesDefensiveConsumer Staples — food, beverages, and household goods (bought in any economy).
- XLU
- UtilitiesDefensiveUtilities — electric, gas, and water — steady, rate-sensitive demand.
- XLRE
- Real EstateDefensiveReal Estate — REITs and real-estate companies.
- XLE
- EnergyNeutralEnergy — oil & gas producers and oilfield services.
- XLC
- CommunicationNeutralCommunication Services — telecom, media, and large interactive/platform companies.
Cyclical sectors (Technology, Financials, Consumer Disc., Industrials, Materials) are sensitive to the economic cycle and tend to lead when risk appetite is high. Defensive sectors (Health Care, Staples, Utilities, Real Estate) have steadier demand and tend to hold up when it isn't. Energy and Communication are Neutral — their classification is ambiguous, so the cyclical/defensive regime ratio leaves them out of both baskets.
Educational reference. Commentary, not investment advice.