← Sector Rotation Screen home
⚠ Strategy did NOT beat SPY net of 1 bps trading cost in the backtest since May 2011. Cumulative: strategy +646.90% vs SPY +654.00%.
Mid-cycle
INDPRO YoY +1.4% between 0.0% and 4.0% with curve +0.31: steady expansion.
Sector Scores & Signals
| ETF |
Name |
Last |
% From 52W High |
Seasonality |
n yrs |
Cycle Fit |
Rel Strength |
RS 3m |
Composite |
Signal |
| XLK |
Technology |
$196.27 |
-0.75% |
50.6 |
20 |
100.0 |
78.5 |
2.42% |
80.1 |
Buy |
| XLC |
Communications |
$112.96 |
-5.07% |
33.0 ⚠ |
9 |
100.0 |
42.6 |
0.66% |
63.2 |
Watch |
| XLE |
Energy |
$62.04 |
-5.34% |
45.0 |
20 |
50.0 |
31.7 |
9.84% |
42.4 |
Hold |
| XLI |
Industrials |
$170.43 |
-8.38% |
48.8 |
20 |
50.0 |
20.5 |
-11.76% |
39.4 |
Avoid |
| XLV |
Healthcare |
$170.70 |
-2.46% |
46.6 |
20 |
35.0 |
37.8 |
0.80% |
38.9 |
Avoid |
| XLF |
Financials |
$54.84 |
-6.02% |
36.0 |
20 |
50.0 |
21.4 |
-3.34% |
36.5 |
Avoid |
| XLY |
Consumer Discretionary |
$110.56 |
-10.66% |
46.0 |
20 |
50.0 |
9.3 |
-9.19% |
34.8 |
Avoid |
| XLP |
Consumer Staples |
$82.06 |
-7.08% |
45.7 |
20 |
35.0 |
24.7 |
-8.56% |
34.1 |
Avoid |
| XLB |
Materials |
$49.80 |
-6.78% |
32.9 |
20 |
50.0 |
9.0 |
-9.12% |
31.4 |
Avoid |
| XLU |
Utilities |
$39.51 |
-15.49% |
46.6 |
20 |
35.0 |
16.1 |
-19.93% |
31.3 |
Avoid |
| XLRE |
Real Estate |
$41.56 |
-8.91% |
17.5 |
11 |
50.0 |
15.5 |
-13.43% |
29.8 |
Avoid |
Click any column header to sort. ⚠ flags sectors with under 10 years of history. Composite weights and signal thresholds tunable in config.py.
Backtest since May 2011
Strategy cum return
+646.90%
SPY: +654.00%
Strategy CAGR
+14.09%
SPY: +14.16%
Strategy Sharpe
0.88
SPY: 0.99
Max drawdown
-18.78%
SPY: -22.93%
Equity curves start at 1.00. Trading cost 1 bps applied to turnover at each rebalance. Cash held when no sectors clear MIN_SCORE_TO_HOLD=50.
Seasonality Heatmap (avg monthly return by sector)
| Sector |
Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec |
| XLK |
+0.1% |
+0.7% |
+1.5% |
+2.8% |
+3.3% |
+0.9% |
+2.9% |
+1.0% |
-0.1% |
+1.8% |
+2.0% |
+0.8% |
| XLF |
-0.2% |
-0.5% |
+0.2% |
+2.6% |
+0.1% |
-1.0% |
+2.9% |
+0.3% |
-1.0% |
+1.1% |
+2.3% |
+1.0% |
| XLE |
+1.3% |
+1.6% |
+1.3% |
+3.4% |
-0.2% |
-0.1% |
+1.1% |
-0.9% |
-0.7% |
+1.6% |
+2.3% |
-0.1% |
| XLV |
+0.9% |
-0.2% |
+0.8% |
+1.0% |
+0.7% |
+1.2% |
+2.1% |
+0.7% |
-0.3% |
+0.6% |
+2.7% |
+0.9% |
| XLI |
+0.5% |
+1.0% |
+0.8% |
+2.2% |
+0.5% |
-0.1% |
+2.6% |
-0.2% |
-0.3% |
+0.9% |
+3.5% |
+0.6% |
| XLY |
+0.8% |
-0.0% |
+0.8% |
+3.1% |
+0.3% |
+0.1% |
+3.0% |
+0.6% |
-0.2% |
+0.5% |
+2.7% |
+0.5% |
| XLP |
-0.2% |
+0.6% |
+1.6% |
+1.5% |
+0.0% |
+0.0% |
+2.2% |
+0.3% |
-0.4% |
+0.8% |
+2.2% |
+0.7% |
| XLU |
+0.2% |
-0.7% |
+2.6% |
+2.0% |
+0.3% |
+0.0% |
+1.9% |
-0.2% |
-0.8% |
+1.7% |
+0.9% |
+0.7% |
| XLB |
-0.0% |
+1.5% |
+1.3% |
+2.6% |
+0.4% |
-0.7% |
+2.3% |
-0.1% |
-1.7% |
+0.8% |
+2.9% |
+0.6% |
| XLRE |
+0.5% |
-0.3% |
+0.9% |
+1.0% |
+0.4% |
+1.8% |
+3.2% |
+0.4% |
-3.1% |
-0.9% |
+3.1% |
+0.5% |
| XLC |
+4.2% |
-0.9% |
-0.8% |
+2.0% |
+2.6% |
+0.8% |
+2.2% |
+1.7% |
-1.6% |
-0.7% |
+3.5% |
-0.0% |
Green > 0%, red < 0%. Cells require ≥5 years of history for that month.
3-Month Relative Strength vs SPY