sma200.trade
For informational and educational use only. Not investment advice. Past performance does not predict future returns. Read full disclaimer →

Sector ETFs and the SMA200: which sectors give the cleanest signal

· 7 min read · by Christian

If you trade sectors instead of individual stocks, the 200-day SMA filter behaves differently across them. Some sectors trend cleanly enough that the SMA200 framework gives reliable in-and-out signals; others whip around so much that applying the filter generates more trades than information.

Pulled the full daily-close history for the eleven SPDR sector ETFs (XLE, XLK, XLF, XLU, XLV, XLY, XLP, XLB, XLI, XLRE, XLC) and counted every time price crossed its own 200-day SMA. The results are wider-spread than I expected, and they have useful implications for anyone doing sector rotation.

The sector rankings, cleanest to whippiest

Per the 1998-2026 data (where each ETF has continuous history; XLRE starts 2015 and XLC starts 2018):

Ticker Sector Cross events Per year
XLK Technology 179 6.6
XLY Consumer Discretionary 218 8.0
XLF Financials 221 8.1
XLI Industrials 233 8.5
XLE Energy 243 8.9
XLU Utilities 257 9.4
XLB Materials 285 10.4
XLP Consumer Staples 309 11.3
XLV Healthcare 313 11.5
XLC Communication Services 26 n/a (since 2018)
XLRE Real Estate 127 11.7

For comparison: SPY runs 6.7 crosses per year. Only XLK matches the broad market for cleanliness; everything else generates more cross events, with healthcare and staples nearly DOUBLE the broad-market rate.

XLK has produced 179 crosses since December 1998 — about 6.6 per year, lower than SPY's broad-market rate.

That seems counterintuitive given tech's reputation for volatility. The reason: secular trends. From 2009 onward XLK was in a near-continuous uptrend (with brief 2018 and 2022 interruptions). Multi-year periods of being above the 200-day SMA without crossing it depress the cross count.

When tech does break, it breaks meaningfully — the 2000-2002 dotcom, the 2008 GFC drawdown, the 2018 Q4 correction, the 2022 bear, the COVID crash. Those breaks are the regime changes the framework is designed to catch. In between, XLK trends cleanly enough that the SMA200 filter doesn't generate noise.

Practical implication: for someone using the SMA200 framework as an exit filter on a tech-concentrated position (QQQ, TQQQ, XLK directly), the filter has historically been usable.

Why staples and healthcare are whippy

XLP (staples) and XLV (healthcare) at ~11/year cross rate are the whippiest of the major sectors. Both are roughly 70% whippier than tech.

These sectors share a structural property: they're defensive but range-bound. During risk-on regimes, capital rotates out of them, prices drift sideways or down. During risk-off regimes, capital rotates into them, prices drift sideways or up. The result is a lot of crossing back and forth around the 200-day SMA without sustained trends in either direction.

XLP and XLV don't have the secular tailwinds tech has had. They don't crash like cyclicals do during recessions (because demand is inelastic). They just oscillate. The SMA200 filter, applied to oscillating data, generates a lot of false signals.

Practical implication: using SMA200 as an exit filter on XLP or XLV is mostly going to cost you transaction costs and tax events without protecting you from drawdowns that the sectors don't really have.

Why energy is mid-pack despite the reputation

XLE (energy) at 243 crosses, 8.9/year, is closer to the broad-market rate than to the whippy end. This surprises some readers because energy is famous for boom-bust cycles.

Energy IS boom-bust, but the booms and busts are long. The 2002-2008 oil bull was a multi-year secular trend. The 2009-2014 post-crash recovery was a multi-year trend. The 2014-2020 bear was a multi-year trend. The 2020-2022 bull was a clear trend. Within each phase XLE held its 200-day SMA fairly cleanly.

The reputation for whipsaw comes from the inter-phase transitions, which are violent but rare. Day to day XLE actually behaves close to broad equities.

Practical implication: SMA200 on XLE works reasonably well as a regime filter. The framework catches the cycle transitions; the trade-off is you're going to be flat for years at a time during energy bear cycles.

What this means for sector rotation

A simple SMA200-gated sector rotation: hold the sector(s) above their 200-day SMA, hold cash for sectors below.

Applied to the 11 sectors, this strategy has variable mechanical character:

  • High-trend sectors (XLK, XLY, XLF, XLI): the SMA200 filter triggers infrequently enough to be tradable. Hold the sector when above, rotate out when below, accept that you'll have ~8 round trips per year per sector.

  • Whippy sectors (XLP, XLV, XLRE, XLB): the filter triggers too often to be useful. Better to either hold these positions unconditionally as portfolio ballast, or skip them entirely in a rotation strategy.

  • Cyclical sectors (XLE, XLU): the filter works but you're going to spend large blocks of time on the sidelines. Decide whether sector-specific exposure is worth that opportunity cost.

The simplest version of this is just running the SMA200 filter on SPY and accepting broad-market exposure. The complexity of running it on 11 individual sectors only pays off if you have a sector view you want to express, AND that view is in one of the trending sectors.

How to apply this practically

The sector ETFs ARE supported on sma200.trade — type any of XLE, XLK, XLF, XLU, XLV, XLY, XLP, XLB, XLI, XLRE, XLC into the ticker search box on any page and you'll get the live SMA200 status for that sector.

For someone running an actual sector rotation: setting free crossing alerts on the trending sectors (XLK, XLY, XLF, XLI) and ignoring SMA200 entirely on the whippy ones (XLP, XLV, XLRE) is probably the right operational setup. The whippy sectors hold you in transactions without producing edge.

For someone who just wants one sector signal: XLK is the closest proxy for "is the broad equity market in a confirmed uptrend" because it has the cleanest signal-to-noise ratio of any individual sector. Cross-checking XLK against SPY catches almost the same regime changes with a bit of independent confirmation.

The bigger meta-lesson here: the SMA200 framework is a tool, and tools work best on data with appropriate characteristics. Broad indices and trending sectors are good substrates; oscillating defensives are not. Knowing which is which before applying the filter saves a lot of unnecessary churn.