Pattern Lab · Methodology + live rankings
Sector Relative Strength.
Rotational rankings of the eleven SPDR sector ETFs against the S&P 500 (SPY). Each sector gets four readings: an RS-ratio (sector / benchmark, normalised to 100 a year ago), 21-day · 63-day · 252-day outperformance in percentage points vs SPY, and a Z-score of the current RS-ratio against its trailing 63-day mean — a mean-reversion signal. Sectors are sorted by 63-day outperformance descending and assigned a JdK-style RRG quadrant.
Sector charts
Compare any of the 12 SPDR ETFs + SPY side-by-side. Per-cell ticker, range, and oscillator toggles. Reuses the same indicator set as the Rubin charts terminal — including Directional Flow (DF) and DF % (the 0-100 tanh-normalised view).
The rule
For each sector ETF: compute the relative-strength ratio against SPY, normalise it to 100 at the start of a 252-day window, and track its level and trajectory. Sectors above 100 with positive short-term outperformance are leading; sectors below 100 with negative outperformance are lagging. The remaining two quadrants — weakening and improving — are the rotation candidates.
The Z-score against the trailing 63-day mean is the mean-reversion overlay: a sector with Z > +2 is statistically stretched relative to its own recent history; a sector with Z < −2 is unusually compressed. Both edges are candidates for reversal, regardless of which quadrant they currently occupy.
Data is refreshed daily from EODHD (close prices). Re-run
workers/jensen-backtest/scripts/fetch-sector-rs-prices.mjs and rebuild.
Rankings · three timeframes, separately sorted
Same eleven sectors, three independent sort lenses. A name that leads on 21d but lags on 252d is a fresh rotation candidate; one that leads on 252d but lags on 21d is a tired leader. The full picture only emerges when all three horizons are read together.
Short term · 21 trading days (~1 month)
| Rank | Ticker | Sector | Price | RS | 21d | 63d | 1y | Z | Quadrant | Chart |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | XLK | Technology | $197.78 | 119.0 | +3.6% | +3.8% | +22.3% | +1.52 | Leading | chart → |
| 2 | XLC | Communication Services | $112.07 | 83.6 | -0.3% | -2.1% | -19.1% | -0.59 | Lagging | chart → |
| 3 | XLV | Health Care | $168.16 | 101.4 | -0.4% | +2.2% | +1.6% | -0.42 | Weakening | chart → |
| 4 | XLP | Consumer Staples | $83.42 | 93.8 | -0.7% | -2.9% | -7.3% | -0.81 | Lagging | chart → |
| 5 | XLE | Energy | $65.24 | 128.3 | -1.3% | +16.4% | +33.0% | +1.20 | Weakening | chart → |
| 6 | XLY | Consumer Discretionary | $111.71 | 81.7 | -2.2% | -7.3% | -21.3% | -1.29 | Lagging | chart → |
| 7 | XLI | Industrials | $168.40 | 94.4 | -3.5% | -10.0% | -6.5% | -1.56 | Lagging | chart → |
| 8 | XLU | Utilities | $41.07 | 80.1 | -5.4% | -11.7% | -23.2% | -1.01 | Lagging | chart → |
| 9 | XLB | Materials | $49.27 | 96.0 | -5.4% | -5.5% | -4.7% | -1.82 | Lagging | chart → |
| 10 | XLF | Financials | $54.23 | 87.6 | -6.4% | -5.1% | -14.5% | -1.86 | Lagging | chart → |
| 11 | XLRE | Real Estate | $40.85 | 87.1 | -6.9% | -10.1% | -15.1% | -1.81 | Lagging | chart → |
Medium term · 63 trading days (~3 months)
| Rank | Ticker | Sector | Price | RS | 21d | 63d | 1y | Z | Quadrant | Chart |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | XLE | Energy | $65.24 | 128.3 | -1.3% | +16.4% | +33.0% | +1.20 | Weakening | chart → |
| 2 | XLK | Technology | $197.78 | 119.0 | +3.6% | +3.8% | +22.3% | +1.52 | Leading | chart → |
| 3 | XLV | Health Care | $168.16 | 101.4 | -0.4% | +2.2% | +1.6% | -0.42 | Weakening | chart → |
| 4 | XLC | Communication Services | $112.07 | 83.6 | -0.3% | -2.1% | -19.1% | -0.59 | Lagging | chart → |
| 5 | XLP | Consumer Staples | $83.42 | 93.8 | -0.7% | -2.9% | -7.3% | -0.81 | Lagging | chart → |
| 6 | XLF | Financials | $54.23 | 87.6 | -6.4% | -5.1% | -14.5% | -1.86 | Lagging | chart → |
| 7 | XLB | Materials | $49.27 | 96.0 | -5.4% | -5.5% | -4.7% | -1.82 | Lagging | chart → |
| 8 | XLY | Consumer Discretionary | $111.71 | 81.7 | -2.2% | -7.3% | -21.3% | -1.29 | Lagging | chart → |
| 9 | XLI | Industrials | $168.40 | 94.4 | -3.5% | -10.0% | -6.5% | -1.56 | Lagging | chart → |
| 10 | XLRE | Real Estate | $40.85 | 87.1 | -6.9% | -10.1% | -15.1% | -1.81 | Lagging | chart → |
| 11 | XLU | Utilities | $41.07 | 80.1 | -5.4% | -11.7% | -23.2% | -1.01 | Lagging | chart → |
Long term · 252 trading days (~1 year)
| Rank | Ticker | Sector | Price | RS | 21d | 63d | 1y | Z | Quadrant | Chart |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | XLE | Energy | $65.24 | 128.3 | -1.3% | +16.4% | +33.0% | +1.20 | Weakening | chart → |
| 2 | XLK | Technology | $197.78 | 119.0 | +3.6% | +3.8% | +22.3% | +1.52 | Leading | chart → |
| 3 | XLV | Health Care | $168.16 | 101.4 | -0.4% | +2.2% | +1.6% | -0.42 | Weakening | chart → |
| 4 | XLB | Materials | $49.27 | 96.0 | -5.4% | -5.5% | -4.7% | -1.82 | Lagging | chart → |
| 5 | XLI | Industrials | $168.40 | 94.4 | -3.5% | -10.0% | -6.5% | -1.56 | Lagging | chart → |
| 6 | XLP | Consumer Staples | $83.42 | 93.8 | -0.7% | -2.9% | -7.3% | -0.81 | Lagging | chart → |
| 7 | XLF | Financials | $54.23 | 87.6 | -6.4% | -5.1% | -14.5% | -1.86 | Lagging | chart → |
| 8 | XLRE | Real Estate | $40.85 | 87.1 | -6.9% | -10.1% | -15.1% | -1.81 | Lagging | chart → |
| 9 | XLC | Communication Services | $112.07 | 83.6 | -0.3% | -2.1% | -19.1% | -0.59 | Lagging | chart → |
| 10 | XLY | Consumer Discretionary | $111.71 | 81.7 | -2.2% | -7.3% | -21.3% | -1.29 | Lagging | chart → |
| 11 | XLU | Utilities | $41.07 | 80.1 | -5.4% | -11.7% | -23.2% | -1.01 | Lagging | chart → |
Bold-highlighted column = the timeframe each table is sorted by. The
chart → link opens the per-ticker chart at /indices/stock/?t=…
with OHLC + SMA + RSI. v2 follow-up: extend the Rubin-style charts terminal
(full oscillator set + Directional Flow) to SPDR ETFs.
By quadrant
JdK-style RRG mapping. RS-ratio on the vertical axis (above / below 100), 21-day outperformance on the horizontal axis (positive / negative). The four quadrants encode where each sector sits in its rotational cycle.
RS > 100 and 21d outperformance positive — strongest cohort
- XLK Technology +3.8%
RS < 100 but 21d outperformance positive — momentum rebuilding
- — none
RS > 100 but 21d outperformance turning negative — rotation candidate
- XLE Energy +16.4%
- XLV Health Care +2.2%
RS < 100 and 21d outperformance negative — broadly out of favor
- XLC Communication Services -2.1%
- XLP Consumer Staples -2.9%
- XLF Financials -5.1%
- XLB Materials -5.5%
- XLY Consumer Discretionary -7.3%
- XLI Industrials -10.0%
- XLRE Real Estate -10.1%
- XLU Utilities -11.7%
Sector RS is a structural overlay. It says where dispersion sits across the SPDR cohort and which sectors are entering or leaving the leading-quadrant cluster. It does not say what to do about it; that's a function of the user's framework (regime, time horizon, mean-reversion vs. momentum bias).
Sector Rotation (37-sector Closelooknet view) · Global Sectors (11×4 region matrix)
FAQ · from the current data · as of 2026-10-08
Quick answers
Which SPDR sector is leading on relative strength right now?
As of 2026-10-08, XLE (Energy) ranks #1 of 11 SPDR sectors by 63-day outperformance vs SPY, at +16.4%.
Which SPDR sector is lagging the most?
As of 2026-10-08, XLU (Utilities) ranks last (#11 of 11) by 63-day outperformance vs SPY, at -11.7%.
How many sectors are in the Leading quadrant?
As of 2026-10-08, 1 of 11 SPDR sectors sit in the Leading quadrant (RS-ratio above 100 with positive 21-day outperformance vs SPY); 8 sit in Lagging.
What does the Z-score column mean?
It is the current RS-ratio expressed as standard deviations from its own trailing 63-day mean — a mean-reversion overlay independent of the quadrant. A reading beyond +/-2 marks the sector as statistically stretched or compressed relative to its recent history.