Market InternalsUpdated daily

Sector Health Dashboard

SystemTrader's Sector Health Dashboard answers one question every morning: is the market broadly healthy, where is leadership, what is deteriorating, and what changed today? Each of the 11 GICS sector ETFs is placed by its actual distance from the 50-day and 200-day moving averages, with regime classification, aggregate breadth, daily transitions, and a rotation watchlist.

Built by
SystemTrader
Source
TradeStation daily ETF closes for the 11 GICS sector ETFs
Methodology
Per-ETF 50d & 200d SMA classification (Strong / Weakening / Recovery / Weak); aggregate % above MAs over rolling history
Updates
Daily after market close (~1pm PT)
Last: 2026-05-12
For educational and informational purposes only — not financial advice. Past performance does not guarantee future results. See full disclaimer.
Sector Health
11 ETFs · 2026-05-12
HEALTHY
75/100
·Healthy and steady
above 20d
64%
·0.0%
above 50d
73%
·0.0%
above 200d
82%
·0.0%
50d breadth Δ5d -18.2%pp20d 0.0%pp

Healthy, steady. 8 of 11 ETFs are above their 50-day average; 9 of 11 above their 200-day. Weak pocket: XLV. Pullback pockets: XLE, XLU.

Sector Regime Map

Each ETF placed by its actual distance from the 50-day (X) and 200-day (Y) moving averages. Hover any dot for full details.

Strong (top-right) Pullback (top-left) Recovery (bottom-right) Weak (bottom-left) Transition today Outlier (clamped)
Breadth & Regime Mix
11 ETFs
above 20d64%·0.0% 1d-18.2% 20d
above 50d73%·0.0% 1d0.0% 20d
above 200d82%·0.0% 1d-9.1% 20d
7
1
2
1

Rotation Watchlist

Where rotation is most likely next — across the 11 GICS sector ETFs

Closest to Breakout
Below 200d, smallest gap
XLVHealth Care-1.0% from 200d
XLFFinancials-2.0% from 200d
Closest to Breakdown
Above 200d, within 3%
XLCCommunication Services+0.9% above 200d
XLYConsumer Discretionary+1.0% above 200d
XLUUtilities+1.9% above 200d
Testing 50d
Within ±1.5% of 50d
XLEEnergy-0.68% from 50d
XLCCommunication Services+0.73% from 50d
XLVHealth Care-1.09% from 50d
Overextended
More than +10% above 50d
XLKTechnology+18.8% above 50d
Improving Fastest
Distance from 50d expanding
XLVHealth Care+2.07pp
XLPConsumer Staples+1.39pp
Deteriorating Fastest
Distance from 50d contracting
XLKTechnology-2.40pp

All sectors — sortable detail

ETFGroupRegime 1dvs 50dvs 200d1w1mYTDIn regime
XLK
Technology
GrowthSTRONG-1.51%+18.8%+23.0%+5.8%+20.3%+21.7%25d
XLI
Industrials
CyclicalSTRONG-0.39%+3.0%+8.8%+1.1%+0.9%+12.4%25d
XLP
Consumer Staples
DefensiveSTRONG+1.28%+1.5%+4.0%+0.5%+3.5%+8.7%6d
XLY
Consumer Discretionary
CyclicalSTRONG-0.90%+3.5%+1.0%+0.2%+3.8%-0.9%21d
XLB
Materials
CommoditySTRONG-0.23%+3.0%+10.3%+1.2%-0.1%+15.0%6d
XLRE
Real Estate
Rates-SensitiveSTRONG+0.02%+4.0%+6.4%+0.9%+3.6%+10.5%25d
XLC
Communication Services
GrowthSTRONG+0.24%+0.7%+0.9%+0.2%+0.9%-1.6%21d
XLE
Energy
CommodityWEAKENING+0.70%-0.7%+17.4%-3.2%+0.8%+28.8%5d
XLU
Utilities
Rates-SensitiveWEAKENING+0.11%-2.0%+1.9%-2.5%-2.6%+5.9%5d
XLF
Financials
CyclicalRECOVERY+0.78%+1.8%-2.0%-0.0%-0.2%-5.8%22d
XLV
Health Care
DefensiveWEAK+1.96%-1.1%-1.0%+0.4%-1.4%-5.8%16d

Breadth History

SPY price on top; below it, the count of sectors in each regime over time across the 11 GICS sector ETFs.

Sector breadth in our live strategies

Scorpio rotates across an 11-sector ETF universe based on a 2-factor trend-quality score (R² + MA alignment). Mars uses sector-level momentum to filter its stock universe down to the strongest 3 sectors before picking individual names.

How Sector Health Dashboard Works

  1. 1
    Pull daily closes for the 11 GICS sector ETFs
    Each trading day after the close, we read closing prices for the 11 official GICS sector ETFs: XLF (Financials), XLK (Technology), XLE (Energy), XLV (Health Care), XLI (Industrials), XLP (Consumer Staples), XLY (Consumer Discretionary), XLU (Utilities), XLB (Materials), XLRE (Real Estate), and XLC (Communication Services). Using only the official sector ETFs keeps the read directly comparable to standard sector commentary.
  2. 2
    Compute 20-day, 50-day, and 200-day SMAs per ETF
    For each sector we compute the simple moving averages and check whether today's close is above or below each MA. Above the 50-day = short/intermediate-term uptrend. Above the 200-day = long-term uptrend. The combination of the two defines the sector's regime.
  3. 3
    Classify each sector into one of four regimes
    Strong = above both 50d and 200d (uptrend confirmed). Weakening / Pullback = above 200d but below 50d (long-term up, short-term breakdown). Recovery = below 200d but above 50d (long-term down, short-term reclaim). Weak = below both (downtrend confirmed).
  4. 4
    Score the headline Sector Health and surface daily tone
    The hero card combines % above 20d / 50d / 200d into a 0-100 health score and labels the level (Healthy / Mixed / Fragile / Risk-Off). A separate "tone" line — broadening, cooling, deteriorating, stabilizing, or steady — is derived from the 1-day vs 20-day change in 50d-MA breadth, so the hero answers both "where are we" and "where are we headed today" at a glance.
  5. 5
    Place every ETF on the Sector Regime Map
    The signature visual is a four-quadrant scatterplot: each ETF's X position is its % from the 50-day MA, its Y position is its % from the 200-day MA. The 0/0 cross divides the plane into Strong (top-right), Pullback (top-left), Recovery (bottom-right), and Weak (bottom-left). Outliers (more than ±25% from either MA) are clamped to the edge with a small arrow; a "Full scale" toggle expands to auto-fit. Hover any dot for details on desktop; on mobile the map is static.
  6. 6
    Track breadth history (SPY + per-regime panels) and rotation watchlists
    The Breadth History chart stacks SPY price on top with four small panels below it — one per regime — so you can see how the 11 sectors distributed across Strong / Pullback / Recovery / Weak through any rally or selloff. The Rotation Watchlist surfaces the actionable edge cases: sectors closest to breaking out above the 200d, closest to breaking down, testing the 50d, overextended above the 50d, and the day's fastest improvers and deteriorators by % from MA.
  7. 7
    Flag regime transitions for the day
    When a sector moves between regimes (e.g., Recovery → Strong, or Strong → Weakening) between yesterday's and today's close, we mark it. Transitions are highlighted with a cyan ring around that sector's dot on the regime map and a "↻ today" tag in the detail table. These often precede meaningful sector-level rotation.

Who Uses Sector Health Dashboard

Day Traders
Use sector breadth as same-session context. When SPY rallies but only 30% of sectors are above their 50d MA, the index move is concentrated and likely fragile. Healthy rallies have 70%+ breadth.
Swing Traders
Identify which sectors just transitioned regimes — Recovery → Strong is a frequent setup for sector-leadership swings. Weakening → Weak is a defensive signal in a name you're long.
Long-Term Investors
Watch the % above 200d trend. Sustained breadth contraction (200d % falling from 80%+ down through 50%) has historically aligned with major bull-market tops. Below 30% has marked durable bear regimes.
Systematic Traders
Use sector breadth as a filter or regime overlay. Many momentum strategies underperform when breadth is collapsing even if SPY is still making highs — sector rotation is leaking risk before the index does.

Pro Tips

01
Watch for breadth-price divergences
When SPY makes a new high but the % of sectors above their 50d MA fails to confirm (lower high), you have a classic non-confirmation. This doesn't guarantee a top — but it removes the cleanest bull case.
02
Track regime transitions over absolute regime
A sector that's been in Strong regime for 200 days carries less information than one that just transitioned today. Today's transitions are highlighted with a cyan ring on the regime map and a "↻ today" tag in the detail table — that's usually where the actionable trades hide.
03
Read the Sector Regime Map by quadrant cluster
The four quadrants of the regime map have predictive shape, not just colour. A tight cluster in the top-right (Strong) means leadership is broad and trending. A spread along the y-axis with little x-axis movement means trend is intact but rotation is flat. A drift from top-right toward top-left (Pullback) is the classic late-bull warning. Watch the cluster shape as much as the dot count.
04
Use the Rotation Watchlist for the next-likely-mover trade
Most actionable signals don't come from sectors deep in one regime — they come from edge cases. The watchlists isolate them: "Closest to Breakout" (just below 200d, ready to flip into Strong), "Closest to Breakdown" (just above 200d, vulnerable), "Testing 50d" (the short-term inflection line), and "Overextended" (above 50d but stretched). Skim these every morning before placing trades.
05
50d % is the tactical signal; 200d % is the strategic one
The 50d % oscillates fast and is good for short-term setup confirmation. The 200d % moves slowly — it's the signal that matters for asset-allocation decisions. Both falling = serious risk-off. 50d falling, 200d steady = noise.
06
Use the regime quadrant per sector
Strong = ride. Weakening = trim or hedge. Recovery = consider entries with stops below the 50d. Weak = avoid long, consider short. The four-state model captures the full trend cycle better than a single up/down.
07
Pair with VIX and Credit Spreads
Sector breadth is one of three classic risk-on/risk-off signals. Confirming all three (breadth contracting + VIX rising + credit spreads widening) is far more reliable than any single read. Disconfirmation = wait.
08
Defensive sectors leading is its own signal
When XLP (staples) and XLU (utilities) are in Strong regime while XLK (tech) and XLY (discretionary) are Weakening, the market is rotating defensive. This usually precedes broader risk-off.
09
Days-in-regime tracks regime durability
A sector that just moved to Strong (1 day) is fragile. One that's been Strong for 60+ days has earned the trend. Higher days-in-regime = stronger conviction in the current trend.

Common Issues & Solutions

Why are some sectors marked "unknown" instead of having a regime?
A sector is marked unknown only when its 200-day MA cannot be computed yet — typically because the ETF has fewer than 200 trading days of history. All ETFs in the current universe have many years of history, so this is rare and usually only affects very recently launched ETFs.
The data shows yesterday's close, not today's
Daily bars are appended after market close (4 PM ET). Our pipeline runs at 1 PM PT (4 PM ET) and the recompute completes shortly after. Today's bar should be visible by ~5 PM ET on regular trading days.
Why doesn't a 50d/200d crossover show up immediately?
The regime check is on close vs MA, not on MA vs MA. A sector flips regime the day its close crosses the 50d or 200d MA. A 50d/200d golden cross or death cross is a separate signal — useful but slower.
The Breadth & Regime Mix shows a different green count than "% above 50d"
They're measuring different things. "% above 50d" counts every sector above its 50-day MA (regardless of 200d). The regime mix bar requires a sector to be above BOTH the 50d AND the 200d to count as Strong (green). A sector that's above 50d but below 200d falls into Recovery (blue) on the regime mix bar but still contributes to the % above 50d figure.

Frequently Asked Questions

What is sector breadth?
Sector breadth measures how broadly a market move is participating across sectors. The % of sectors above their 50-day or 200-day moving averages is a classic measure: when 80%+ are above their 50-day MA, the rally has broad participation. When only 30% are, the index is being held up by a narrow group of leaders — a fragility signal.
What are the four sector regimes?
Strong = above both the 50-day and 200-day MAs (uptrend confirmed). Weakening = above 200d but below 50d (long-term up, short-term breaking down). Recovery = below 200d but above 50d (long-term down, short-term reclaim). Weak = below both (downtrend confirmed). The four-state model captures the full trend cycle better than a binary up/down.
Which ETFs does this dashboard track?
The 11 official GICS sector ETFs: XLF (Financials), XLK (Technology), XLE (Energy), XLV (Health Care), XLI (Industrials), XLP (Consumer Staples), XLY (Consumer Discretionary), XLU (Utilities), XLB (Materials), XLRE (Real Estate), and XLC (Communication Services). Using only the official sector ETFs keeps the dashboard directly comparable to standard GICS sector commentary.
Why does sector breadth matter?
Healthy bull markets have broad participation — most sectors trending up together. Late-stage rallies tend to narrow as fewer sectors carry the index. Sustained breadth contraction (% above 200d falling from 80%+ to under 50%) has aligned with most major bull-market tops in recent decades. Conversely, breadth thrusts (% above 50d expanding from under 20% to over 90% within a few weeks) have marked durable bull-market starts.
How is the regime classified?
For each sector, we check today's close against its 50-day and 200-day simple moving averages. The combination of the two flags determines the regime: Strong (both up), Weakening (200 up, 50 down), Recovery (200 down, 50 up), Weak (both down). This is reassessed every day after the close.
What is a regime transition?
A regime transition happens when a sector moves from one regime to another between yesterday's close and today's. For example, Recovery → Strong (sector reclaimed its 200-day MA), or Strong → Weakening (sector lost its 50-day MA). Transitions are flagged on the page in two ways: a cyan ring around that sector's dot on the Sector Regime Map, and a "↻ today" tag next to the regime label in the sortable detail table. They often precede meaningful sector-level rotation.
What is the Sector Regime Map?
The Sector Regime Map is a four-quadrant scatterplot where each ETF is placed by its actual distance from the 50-day MA (X axis) and 200-day MA (Y axis). The 0/0 cross divides the plane into Strong (top-right, above both MAs), Pullback (top-left, above 200d but below 50d), Recovery (bottom-right, below 200d but above 50d), and Weak (bottom-left, below both). Hover any dot on desktop for details. The default scale is capped at ±25% so a single outlier can't squash the rest of the chart; outliers are clamped to the edge with an arrow, and a "Full scale" toggle expands to auto-fit.
What is the Rotation Watchlist?
The Rotation Watchlist surfaces the sectors most likely to rotate next. Six categories: Closest to Breakout (below 200d, smallest gap), Closest to Breakdown (above 200d, within 3%), Testing 50d (within ±1.5%), Overextended (more than +10% above 50d), Improving Fastest (largest 1-day expansion in % from 50d), and Deteriorating Fastest (largest 1-day contraction). The lists update every day after the close and are useful for spotting setups before they show up as full regime transitions.
How do I read the daily tone (broadening, cooling, etc.)?
The hero Sector Health card shows a level (Healthy / Mixed / Fragile / Risk-Off) plus a tone line capturing today's direction. Tone is derived from how the % of sectors above the 50-day MA changed over 1 day vs. 20 days: broadening = expanding fast, cooling = short-term down but medium-term still up, stabilizing = short-term up but medium-term still down, deteriorating = both down, steady = no meaningful change. The combined readout (e.g. "Healthy but short-term breadth cooling") makes it obvious whether the headline is improving or fading.
How is the health score calculated?
The 0-100 health score is a transparent weighted average of the % of sectors above each MA: 40% × (% above 50d) + 40% × (% above 200d) + 20% × (% above 20d). Score thresholds: 70-100 Healthy, 50-70 Mixed, 30-50 Fragile, 0-30 Risk-Off.
How is sector breadth different from market breadth?
Market breadth (e.g., on /tools/breadth) measures how many individual stocks across the broad market are above their MAs — typically across thousands of names. Sector breadth measures the same thing but at the sector-ETF level, so 11 readings instead of thousands. Sector breadth is more interpretable for sector-rotation decisions; market breadth is more sensitive for early stress detection in individual names.
What is the difference between Weakening and Recovery regimes?
Both are mixed signals but in opposite directions. Weakening = sector's long-term trend is up (above 200d) but short-term has rolled over (below 50d) — could be a buyable pullback or the start of a real top. Recovery = sector's long-term trend is down (below 200d) but short-term is reclaiming (above 50d) — could be a counter-trend bounce or the start of a real bottom. Watch days-in-regime to gauge durability.
How often is the data updated?
The underlying ETF CSVs are refreshed daily after market close (around 1 PM PT / 4 PM ET) directly from the TradeStation market-data API. The sector-health recompute and JSON output regenerate within a few minutes after the fetch completes. All MAs and regime classifications reflect the most recent close.
Why use ETFs instead of indices?
Sector ETFs are tradeable, have continuous price data, and reflect real flows. Sector indices (the underlying baskets) are non-tradeable and identical in shape but slightly different in execution. For breadth purposes the difference is negligible, and ETFs let you take direct action on the signal.
Can sector breadth predict bear markets?
Sector breadth has been one of several leading indicators for bear-market starts. Most major US bull-market tops in recent decades were preceded by breadth contraction (% above 200d falling from 70%+ to under 50%) before the index made its final high. The signal has produced false positives, however — sustained contraction that did not result in a bear market. Treat sustained breadth deterioration as a flag for closer attention, not a standalone forecast.
What does it mean if defensive sectors are Strong while growth sectors are Weak?
When XLP (staples), XLU (utilities), and XLV (health care) are in Strong regime while XLK (tech) and XLY (discretionary) are Weakening or Weak, the market is rotating defensive. This pattern usually precedes broader risk-off and is one of the cleanest defensive-rotation signals available without proprietary data.
Why are MAs simple (SMA) instead of exponential (EMA)?
SMAs are the broadly cited convention in breadth analysis (e.g., "% of stocks above the 50-day MA"). Using SMAs keeps this dashboard directly comparable to academic and practitioner literature. EMAs would react slightly faster to recent moves but at the cost of comparability.
How do I read the breadth history chart?
The chart stacks five sub-panels sharing one X axis. The top panel is SPY price. Below it sit four small panels — one per regime — showing the count of sectors in Strong, Pullback, Recovery, and Weak over time, each in its regime colour. A single crosshair tooltip walks all five rows together, so you can read SPY plus the regime mix on the same date in one glance. The default range is 3 years (toggle 1M / 3M / 6M / 1Y / 3Y). Watch for SPY rising while Strong contracts and Pullback expands — that's the late-bull divergence pattern.

Related Tools

Last updated: 2026-05-12