Market Pulse — Macro Dashboard
Market Pulse — Macro Dashboard
The week closed with a genuine risk-off rotation: the entire bond complex (TLT, IEF, HYG, LQD, BND) now sits in the oversold tier alongside a newly death-crossed XLY (RSI 46.0→32.9), while XLE keeps extending toward overbought (RSI 62.3→69.8) and defensives (XLU, XLV, XLI, XLB) firmed up. This matches the engine's own sector-rotation gauge, which flipped to a "defensives bidding" risk-off read this week (regime-signals). Every ticker on this board carries a fresh Friday 2026-07-24 close — no staleness caveat this cycle, unlike two weeks ago when DIA's bar lagged a day.
FROTH READ: vs VWAP = how far current price sits above/below the volume-weighted average buyer across the full history. Names >50% above VWAP are parabolic; names below VWAP have traded back through their entire average-buyer cost basis.
Quick Snapshot
| Signal | Reading |
|---|---|
| Overall | 🟡 Risk-off rotation — bond complex and consumer-facing sectors crack while energy and defensives extend |
| Key insight | The sector-rotation gauge flipped to "defensives bidding" (risk_off) this week: XLE, XLV, XLF, and XLU lead 30-day sector returns while XLB, XLP, XLK, and XLY lag (`regime-signals.json`) |
| Standout | XLY newly death-crossed and flipped to strong-down (RSI 46.0→32.9) — the sharpest single-sector breakdown on the board |
| Caveat | None — every ticker in this dashboard carries a fresh Friday 2026-07-24 close read |
What's Going On
The core index story cooled further and, in two cases, flipped trend. SPY's trend flag flipped from strong-up to weak-down (RSI 48.7→45.5), VTI did the same (RSI 48.4→45.1), and QQQ stayed weak-down while its RSI kept sliding (39.3, down from 42.1). RSP remains the steadiest of the six broad-index ETFs (RSI 55.0→55.5, the only one of the group whose RSI actually improved), and no death cross has appeared in any of the six — the broad uptrend is technically intact, just visibly weaker than two weeks ago.
Sector rotation is the clearest split on the board. XLE kept extending — RSI climbed from 62.3 to 69.8, one tick from outright overbought, with the 30-day change accelerating from +8.04% to +11.29% and the gap to its 52-week high narrowing to -6.43%. XLU, XLV, XLI, XLB, and XLF all strengthened alongside it (XLB's trend flipped from weak-down to strong-up), consistent with the regime gauge's defensive-bidding read. XLY is the mirror image and the sharpest deterioration on the whole board: it flipped to a strong-down trend and a fresh death cross, RSI collapsing from 46.0 to 32.9 and its 7-day change falling from -1.54% to -5.22%. XLC remains the group's other death-crossed laggard, RSI down again (48.8→37.2). XLK stabilized somewhat off its prior crack (RSI 42.4→43.4, 30-day change improving from -8.17% to -3.92%) but stays weak-down, not healed.
The bond complex is the biggest story on this dashboard. Every one of the five bond ETFs tracked here — TLT, IEF, HYG, LQD, BND — now sits in the RSI 25-40 oversold band. HYG is the notable new crack: its trend flipped from strong-up to weak-down as RSI fell from 51.7 to 38.9, complicating the "rates story, not credit stress" read that HYG's steadiness had supported for weeks. BND newly death-crossed (RSI 48.5→37.0), LQD fell to 29.8 (capitulation-adjacent), TLT extended its slide to RSI 33.0, and IEF's brief bounce to weak-up two weeks ago reverted back to strong-down (RSI 49.7→39.6).
Commodities, vol, and international mostly stabilized or bounced. USO's rally kept extending hard — RSI 58.9→67.2, 30-day change accelerating from +7.91% to +28.6%, the gap to its 52-week high narrowing to -9.47%. SLV, GLD, and COPX all bounced off their lows (RSI up across the board) even though SLV and GLD remain death-crossed/in "collapse" regime. VIXY and VXX's one-day pop from two weeks ago fully faded — RSI flat near 48, both back to a quiet "collapse" regime. International broadly stabilized: EWJ, VWO, EEM, and FXI all posted improved RSI and 7-day changes versus two weeks ago, reversing the sharp two-week decline flagged then.
What Changed Since the 2026-07-17 Pulse
- XLY broke down hard: newly death-crossed and flipped strong-down, RSI 46.0→32.9, 7D -1.54%→-5.22%, 30D -1.27%→-4.92%, gap to high widened -7.66%→-13.0% — the sharpest single-sector deterioration on the board.
- The bond complex cracked broadly: HYG flipped from strong-up to weak-down (RSI 51.7→38.9); BND newly death-crossed (RSI 48.5→37.0); LQD fell into oversold (RSI 42.9→29.8); TLT extended its slide (RSI 43.5→33.0); IEF's weak-up bounce reverted to strong-down (RSI 49.7→39.6). All five bond ETFs now sit in the oversold tier.
- XLE kept extending toward overbought: RSI 62.3→69.8, 30D +8.04%→+11.29%, gap to high -9.11%→-6.43%.
- USO's rally accelerated further: RSI 58.9→67.2, 30D +7.91%→+28.6%, gap to high -19.55%→-9.47%.
- XLU, XLI, and XLB all strengthened: XLU RSI 50.2→60.4 (7D -0.53%→+2.48%); XLI RSI 49.0→57.8 (30D -0.59%→+1.36%); XLB RSI 46.0→53.3, trend flipped weak-down→strong-up.
- SPY and VTI both flipped trend: SPY strong-up→weak-down (RSI 48.7→45.5); VTI strong-up→weak-down (RSI 48.4→45.1). QQQ stayed weak-down but RSI kept falling (42.1→39.3).
- XLK stabilized off its crack but stayed weak-down: RSI 42.4→43.4, 30D -8.17%→-3.92%, gap to high -11.64%→-10.2%.
- International broadly recovered: EWJ (RSI 41.7→45.6), VWO (41.6→42.3), EEM (39.4→41.0), FXI (55.7→57.9) — all reversing the sharp two-week decline flagged last cycle.
- SLV, GLD, and COPX bounced off their lows: SLV RSI 34.4→43.0 (still "collapse" regime, still the worst chart at -52.6% off its 52-week high); GLD RSI 40.0→44.7 (still death-crossed/no-view); COPX RSI 41.0→49.4, trend improved.
- VIXY/VXX's one-day pop fully faded: both back near RSI 48, 7D reversed from the prior +5-6% intraday jump to roughly flat/negative — back to a quiet "collapse" regime.
- XLP cooled from its prior improvement: RSI 55.3→50.3, 7D +1.27%→-1.24%, 30D +2.97%→-0.37%.
- DIA's data lag has resolved: no staleness caveat anywhere on this board this cycle.
How To Read The Board
RSI < 30 = capitulation/oversold zone (context-dependent — check trend and death-cross flags before treating as a buy signal). RSI 30-50 = neutral-to-recovering. RSI 50-70 = healthy uptrend. RSI > 70 = overbought/extended. "vs VWAP" shows distance from the average buyer's cost basis across the instrument's full history — a rough measure of how "paid up" the current price is. A death cross (50-day average below the 200-day) flags a structurally damaged trend even when short-term RSI looks fine.
Broad Indices
| Stock | Price | RSI | vs SMA20 | 7D% | 30D% | 3M% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|---|---|
| SPY | $738.93 | 45.5 | -1.0% | -0.59% | +0.78% | +3.77% | +8.94% | -2.92% | weak-down | 🟡 Trend flipped from strong-up |
| QQQ | $684.23 | 39.3 | -3.9% | -1.6% | -3.71% | +3.18% | +9.91% | -7.57% | weak-down | 🟡 Weakest of the six, still no death cross |
| DIA | $518.76 | 49.2 | -0.8% | -0.39% | +0.08% | +5.77% | +8.82% | -3.06% | strong-up | 🟢 Steadiest large-cap read |
| IWM | $291.17 | 45.6 | -1.6% | -0.98% | -1.86% | +5.5% | +14.9% | -3.51% | strong-up | 🟡 Cooling |
| VTI | $364.80 | 45.1 | -1.1% | -0.6% | +0.6% | +3.92% | +8.69% | -2.67% | weak-down | 🟡 Trend flipped from strong-up |
| RSP | $213.57 | 55.5 | +0.1% | +0.09% | +1.52% | +6.12% | +10.28% | -2.06% | strong-up | 🟢 Steadiest of the six — only one that improved |
Read: No death crosses anywhere in this group — the broad uptrend is technically intact — but SPY and VTI both flipped trend flags from strong-up to weak-down this cycle, the clearest crack in the leadership picture. RSP staying the steadiest (and the only one of the six whose RSI improved) still argues for broad participation rather than a narrow-leadership breakdown.
Sector Rotation (11 SPDR XL ETFs)
| Sector | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| XLE (Energy) | $59.62 | 69.8 | +3.36% | +11.29% | +16.81% | -6.43% | strong-up | 🟢 Extending hard, one tick from overbought |
| XLRE (Real Estate) | $45.95 | 63.2 | +1.17% | +3.24% | +10.95% | -2.19% | strong-up | 🟢 Breakout regime, near highs |
| XLF (Financials) | $56.31 | 63.7 | +0.09% | +4.82% | +7.96% | -1.95% | strong-up | 🟢 Steady near highs |
| XLV (Health) | $162.57 | 60.3 | +0.92% | +6.01% | +10.48% | -2.52% | strong-up | 🟢 Steady near highs |
| XLU (Utilities) | $46.29 | 60.4 | +2.48% | +1.65% | +5.55% | -3.37% | strong-up | 🟢 Defensive bid, RSI up double digits |
| XLI (Industrial) | $182.66 | 57.8 | +1.81% | +1.36% | +12.89% | -2.42% | strong-up | 🟢 Flipped positive |
| XLB (Materials) | $51.26 | 53.3 | +1.44% | +0.2% | +7.73% | -7.11% | strong-up | 🟢 Recovered, trend flipped to strong-up |
| XLP (Staples) | $84.13 | 50.3 | -1.24% | -0.37% | +4.0% | -7.69% | strong-up | 🟡 Cooled from prior improvement |
| XLK (Tech) | $175.88 | 43.4 | +0.17% | -3.92% | +19.36% | -10.2% | weak-down | 🟡 Stabilized off the crack, still weak-down |
| XLC (Comm Svcs) | $106.30 | 37.2 | -3.93% | -0.23% | -6.12% | -12.48% | strong-down | 🔴 Still death-crossed, deteriorated further |
| XLY (Cons Discret) | $109.41 | 32.9 | -5.22% | -4.92% | -5.76% | -13.0% | strong-down | 🔴 Newly death-crossed — sharpest breakdown on the board |
Read: XLE is one tick from outright overbought (RSI 69.8) after accelerating its 30-day gain to +11.29%, and it's joined by a broad defensive/cyclical bid (XLRE, XLF, XLV, XLU, XLI, XLB all strong-up and near highs). XLY is the mirror image — a fresh death cross and the board's sharpest single-sector deterioration — while XLC remains the other death-crossed laggard.
International
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| FXI (China) | $34.58 | 57.9 | +1.32% | +6.86% | -7.61% | -17.95% | weak-up | 🟡 Continued bounce, still death-crossed |
| EFA (Dev Int'l) | $103.41 | 49.9 | +0.08% | +1.12% | +7.68% | -2.87% | strong-up | 🟢 Stabilized, steadiest int'l name |
| EWJ (Japan) | $91.21 | 45.6 | +0.8% | -1.51% | +8.38% | -6.58% | weak-down | 🟡 Recovering off a sharp decline |
| VWO (Emg Mkts) | $57.80 | 42.3 | -0.07% | -1.98% | +4.79% | -5.56% | weak-down | 🟡 Stabilizing |
| EEM (Emg Mkts) | $63.33 | 41.0 | +0.06% | -5.83% | +9.3% | -9.74% | weak-down | 🟡 Stabilizing, still weakest 30D in group |
Read: The whole group is stabilizing after the sharp two-week decline flagged last cycle — every name's RSI and 7-day change improved. FXI remains the only death-crossed name in the group despite its continued bounce.
Bonds
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | Trend | Signal |
|---|---|---|---|---|---|---|---|
| HYG (High Yield) | $79.23 | 38.9 | -0.53% | -0.31% | +1.45% | weak-down | 🔴 Flipped from strong-up — new crack in the credit-is-fine read |
| IEF (7-10yr Tsy) | $93.03 | 39.6 | -0.86% | -1.47% | -1.08% | strong-down | 🔴 Weak-up bounce reversed |
| BND (Total Bond) | $72.31 | 37.0 | -0.75% | -1.36% | -0.35% | strong-down | 🔴 Newly death-crossed |
| TLT (20yr Tsy) | $83.25 | 33.0 | -1.5% | -4.38% | -2.89% | strong-down | 🔴 Continued deteriorating |
| LQD (Inv Grade Corp) | $106.23 | 29.8 | -1.24% | -2.57% | -1.36% | strong-down | 🔴 Fell into oversold |
Read: All five bond ETFs on this board are now in the RSI 25-40 oversold band, and all five are death-crossed or freshly so. HYG's flip from strong-up to weak-down is the notable new crack — it had been the steady tell that this was a rates move, not credit stress, for weeks; that read is now being tested.
Commodities
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| USO (Oil) | $136.69 | 67.2 | +10.27% | +28.6% | +28.12% | -9.47% | strong-up | 🟢 Rally kept accelerating |
| GLD (Gold) | $371.90 | 44.7 | +0.95% | +1.63% | -7.13% | -27.11% | strong-down | 🟡 Stabilizing off lows (death cross, no-view) |
| COPX (Copper) | $77.72 | 49.4 | +5.96% | +3.02% | +1.73% | -21.62% | weak-down | 🟢 Recovering |
| SLV (Silver) | $52.59 | 43.0 | +3.56% | +1.56% | -21.59% | -52.6% | strong-down | 🟡 Bounced off capitulation-adjacent low, still worst chart |
| UNG (Nat Gas) | $10.55 | 41.6 | +0.38% | -10.06% | -16.0% | -37.7% | strong-down | 🔍 Still weak |
Read: USO's rally kept accelerating — 30-day change now +28.6%, up from +7.91% two weeks ago. SLV, GLD, and COPX all bounced off their lows, though SLV and GLD remain death-crossed and SLV stays the single worst chart on the dashboard at -52.6% off its 52-week high.
Volatility
| ETF | Price | RSI | 7D% | 30D% | 3M% | vs VWAP | Regime | Signal |
|---|---|---|---|---|---|---|---|---|
| VXX | $22.36 | 48.6 | -0.53% | -5.61% | -24.94% | -28.08% | collapse | 🟡 Prior one-day pop fully faded |
| VIXY | $21.44 | 48.0 | -0.97% | -6.42% | -25.48% | -28.67% | collapse | 🟡 Prior one-day pop fully faded |
Read: The intraday pop flagged two weeks ago is entirely gone — both products sit back near RSI 48 with flat-to-negative 7-day changes, roughly a quarter below their own VWAP, and both remain structurally dead in "collapse" regime.
Factor Rotation
| Factor | Price | RSI | 30D% | 3M% | vs VWAP | 52wkHi% | Signal |
|---|---|---|---|---|---|---|---|
| VTV (Value) | $221.02 | 63.5 | +2.08% | +9.13% | +13.68% | -1.04% | 🟢 Steadiest leader, strengthened further |
| QUAL (Quality) | $216.81 | 49.4 | +1.7% | +4.72% | +8.68% | -2.33% | 🟡 Modest cooling |
| VUG (Growth) | $83.48 | 40.1 | -0.31% | +0.38% | +4.1% | -7.53% | 🟡 RSI down despite a roughly flat 30-day change |
| MTUM (Momentum) | $306.39 | 44.2 | -6.71% | +9.19% | +11.87% | -9.15% | 🟡 Stabilizing off its prior crack, still weak-down |
Read: Value remains the steadiest leader on this board and strengthened further this cycle (RSI 54.5→63.5, gap to high narrowed to -1.04%). Momentum is stabilizing off the crack flagged two weeks ago (RSI 41.1→44.2, 30D -10.76%→-6.71%) but stays weak-down.
Industry Dashboards
| ETF | Price | RSI | 7D% | 30D% | 3M% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|---|
| XBI (Biotech) | $150.48 | 48.6 | -2.45% | +0.51% | +13.02% | +25.72% | -8.13% | strong-up | 🟡 Cooled sharply from prior acceleration |
| XHB (Homebuilders) | $108.44 | 50.2 | +0.18% | -5.11% | +0.14% | +0.34% | -13.35% | up | 🔍 Watch (death cross, no-view) |
| ITB (Home Const.) | $97.09 | 49.0 | -0.25% | -6.03% | -2.26% | -3.87% | -19.88% | weak-up | 🔍 Watch (death cross, no-view) |
| SMH (Semis) | $561.19 | 42.9 | +0.84% | -9.33% | +10.81% | +30.53% | -13.64% | weak-down | 🟡 Stabilizing off the crack |
Read: XBI cooled sharply — its 30-day change decelerated from +9.73% to +0.51% and RSI fell from 55.1 to 48.6 — while staying in a clean strong-up trend. SMH is stabilizing off the sharp break flagged two weeks ago (30D -15.66%→-9.33%) but remains weak-down.
Tier Analysis
Capitulation (RSI < 25)
None on this board.
Oversold (RSI 25-40)
LQD (29.8), XLY (32.9), TLT (33.0), BND (37.0), XLC (37.2), HYG (38.9), QQQ (39.3), IEF (39.6) — eight names, and notably the entire bond complex (LQD, TLT, BND, HYG, IEF) sits here alongside XLY, XLC, and QQQ. This is a concentrated, rates/consumer/tech-adjacent oversold cohort, not a broad-market one.
Neutral-Strong (RSI 40+)
Everything else, led by XLE (69.8, one tick from overbought), USO (67.2), VTV (63.5), XLF (63.7), and XLRE (63.2).
Entry Zones
| Stock | Zone | Thesis | Status |
|---|---|---|---|
| XLE / USO | Hold, watch for exhaustion near $60 / $135-140 | RSI 69.8/67.2 — extending hard, close to overbought | 🔒 Hold |
| XLU / XLV / XLI / XLF / XLB / XLRE | Hold at/near highs | No death cross, defensive-and-cyclical bid intact | 🔒 Hold |
| Bond complex (TLT, IEF, LQD, BND, HYG) | Avoid | Entire curve now oversold; HYG's crack complicates the no-credit-stress read | ⚠️ Avoid |
| XLY | Avoid | Newly death-crossed, sharpest single-sector breakdown on the board | ❌ Avoid |
| XLC | Avoid | Remains death-crossed, still the weakest sector two cycles running | ❌ Avoid |
| XLK / SMH | Watch | Stabilizing off the crack but still weak-down | 🔍 Watch |
| International (EWJ, VWO, EEM, FXI) | Watch | Broad stabilization after a sharp two-week decline | 🔍 Watch |
| SLV / GLD | Avoid | Bounced off lows but remain death-crossed / structurally weak | ⚠️ Avoid |
Action Matrix
| Stock | Signal | Action | Notes |
|---|---|---|---|
| XLE, USO | 🟢 | 🔒 Hold | Extending hard — RSI 69.8/67.2, one tick from overbought |
| XLU, XLV, XLI, XLF, XLB, XLRE | 🟢 | 🔒 Hold | Defensive-and-cyclical bid, near highs, no death cross |
| RSP, DIA, EFA | 🟢 | 🔒 Hold | Steadiest reads on the board |
| SPY, QQQ, IWM, VTI | 🟡 | 🔍 Watch | RSI down across the board; SPY/VTI trend flags flipped to weak-down |
| TLT, IEF, LQD, BND, HYG | 🔴 | ⚠️ Avoid | Entire bond complex now oversold; HYG newly cracked |
| XLY | 🔴 | ❌ Avoid | Fresh death cross, sharpest sector breakdown |
| XLC | 🔴 | ❌ Avoid | Still death-crossed, weakest sector two cycles running |
| XLK, SMH | 🟡 | 🔍 Watch | Stabilizing off the crack, still weak-down |
| SLV, GLD | 🟡 | ⚠️ Avoid | Bounced off lows, still structurally weak/death-crossed |
| EWJ, VWO, EEM, FXI | 🟡 | 🔍 Watch | Broad international stabilization after a sharp decline |
| VIXY, VXX | 🟡 | 🔍 Watch | Prior one-day pop fully faded, back to structurally dead |
| MTUM | 🟡 | 🔍 Watch | Stabilizing off its crack, still weak-down |
What To Watch Next
- Whether HYG's flip from strong-up to weak-down is a one-week wobble or the start of real credit stress — the "rates story, not credit stress" read is being tested.
- Whether XLE's rally cools before or after it tips into outright overbought (RSI 69.8, one tick from 70).
- Whether XLY's fresh death cross (RSI 32.9) is a durable consumer-discretionary breakdown or a sharp digestion inside a longer uptrend.
- Whether XLK/SMH's stabilization turns into a real recovery or just slows the bleeding.
- Whether the international bounce (EWJ, VWO, EEM, FXI) extends, or fades the way VIXY/VXX's one-day pop did two weeks ago.
Sources
- Tape data (price/RSI/SMA/returns): full-scan pre-computed summaries as of the Friday 2026-07-24 close — market-pulse.
- Regime context (sector-rotation gauge, breadth): regime-signals.
Related
10 eventsNo direct external sources are attached to this read.