Market Pulse — Macro Dashboard
Market Pulse — Macro Dashboard
This is a reversal-of-a-reversal week: the bond complex, which had climbed out of oversold last cycle, round-tripped straight back down — TLT alone fell from RSI 47.5 to 31.6 — while the growth names that cracked hardest two cycles ago (XLY, along with broad tech) mostly recovered, and the defensive/value sectors that had pushed into overbought cooled across the board. Every ticker on this board carries a fresh 2026-07-31 close (market-pulse) — no staleness caveat this cycle.
FROTH READ: vs VWAP = how far current price sits above/below the volume-weighted average buyer across the full history. Names far above VWAP are extended relative to their own average buyer's cost basis; names below VWAP have traded back through it.
Quick Snapshot
| Signal | Reading |
|---|---|
| Overall | 🟡 Regime flip, not a clean risk-on turn — bonds cracked back into oversold while the previously-damaged growth complex and international names broadly recovered |
| Key insight | The oversold (RSI < 40) cohort narrowed from 7 names to 5 — but the composition flipped entirely, from a growth/tech-heavy group (QQQ, XLK, SMH, MTUM, VUG) into a bond-heavy one (TLT, LQD, BND, UNG, XHB) |
| Standout | TLT — RSI round-tripped from 47.5 [prior scan's recovery] straight back to 31.6, erasing the entire prior-cycle bounce, the sharpest single-instrument reversal on the board |
| Caveat | None — every ticker in this dashboard carries a fresh 2026-07-31 close |
What's Going On
Broad indices firmed almost across the board. SPY's RSI climbed to 53.2 and VTI's to 52.2, both clean improvements off last cycle's weak-down flip; DIA (54.6) and RSP (56.1) cooled somewhat from their prior highs but stayed in clean uptrends with no death cross anywhere in the group. QQQ remains the one laggard — RSI 45.2, still the weakest of the six even after improving from 36.7, and its 30-day change is still the deepest drawdown at -5.13%.
Sector rotation flipped shape entirely. The defensive/value bid that dominated last cycle — XLF pushed into outright overbought, XLV into a breakout regime — cooled across the board: XLF's RSI fell back to 62.2, XLV's to 55.2, and XLB/XLP/XLI/XLRE all pulled back with them. XLE reheated off its own cool-down, RSI climbing from 54.1 back to 63.5. The two previously death-crossed laggards moved the other way: XLY's RSI jumped from 43.0 to 54.3 (7-day change flipping from -2.08% to +6.11%), the sharpest sector-level RSI recovery on the board, while XLC held roughly flat at 46.2. XLK's RSI climbed off its fresh cycle low (38.5→46.5), though the sector's own trend stays weak-down — the recovery is a bounce, not yet a repair.
The real reversal-of-a-reversal sits in the bond complex. Last cycle's broad RSI recovery across TLT, IEF, BND, LQD, and HYG gave back hard this cycle: TLT fell straight from 47.5 to 31.6 — a full round-trip back into oversold — and LQD (40.3→36.3) and BND (47.1→38.6) both slid back under 40. IEF held closer to flat (48.8→40.7). HYG was the lone name to hang onto its prior gain, ticking up slightly to 49.3 and still carrying no death cross — the cleanest chart in the complex, same as last cycle.
International and commodities both firmed. FXI pushed into outright overbought (RSI 66.9→72.0) while still death-crossed, and EFA, VWO, EWJ, and EEM all recovered off weaker prior reads. USO's rally, which had reversed hard last cycle, re-accelerated on a 30-day basis (+12.52%→+25.08%) even as the week itself stayed negative (-6.49%→-5.5%). UNG ticked up off its oversold floor (31.2→37.5) but its structure — strong-down trend, death-crossed — is still damaged. GLD and SLV both sat roughly flat, still death-crossed.
What Changed Since the 2026-07-28 Pulse
- TLT round-tripped straight back into oversold: RSI 47.5→31.6, 30D -3.32%→-3.82% — the entire prior-cycle recovery erased, the sharpest reversal on the board.
- BND and LQD gave back most of their prior recovery: BND RSI 47.1→38.6; LQD RSI 40.3→36.3 — both back under the RSI-40 line.
- HYG was the lone bond name to hold its gain: RSI 46.2→49.3, still no death cross.
- XLF and XLV both cooled from their prior extremes: XLF RSI 72.0→62.2 (off outright overbought); XLV RSI 68.3→55.2 (off its breakout regime).
- XLE reheated: RSI 54.1→63.5, 7D -1.59%→-0.12%, 30D +7.45%→+12.76%.
- XLY posted the sharpest sector-level RSI recovery: 43.0→54.3, 7D -2.08%→+6.11%.
- XLK's RSI climbed off its fresh cycle low: 38.5→46.5, though trend stays weak-down (no repair yet).
- FXI extended further into overbought: RSI 66.9→72.0, 30D +12.43%→+14.17%, still the group's only death-crossed international name.
- EFA, VWO, EWJ, and EEM all recovered: EFA 52.1→57.8; VWO 42.3→50.7; EWJ 41.6→51.2; EEM 38.6→47.3.
- USO's 30-day change re-accelerated despite a negative week: 30D +12.52%→+25.08%, 7D -6.49%→-5.5%.
- UNG ticked up off oversold's floor: RSI 31.2→37.5, 30D -14.26%→-12.67%.
- MTUM and VUG both recovered off their cracks: MTUM RSI 37.6→44.4 (30D -13.0%→-8.69%); VUG RSI 39.8→50.6.
- XHB gave back its golden-cross RSI gain: RSI 53.2→39.5, back under the oversold line even though the golden cross itself is intact.
- VTV cooled from its steadiest-leader status: RSI 68.4→54.8.
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 | $747.03 | 53.2 | 0.2% | +1.1% | +0.17% | +3.93% | +9.79% | -1.76% | strong-up | 🟢 Recovered off last cycle's weak-down flip |
| QQQ | $687.99 | 45.2 | -1.9% | +0.55% | -5.13% | +2.17% | +10.12% | -8.1% | weak-down | 🟡 Improved but still the weakest of the six |
| DIA | $524.32 | 54.6 | 0.3% | +1.07% | +0.4% | +6.3% | +9.68% | -1.54% | strong-up | 🟢 Cooled from last cycle's high, clean uptrend intact |
| IWM | $291.2 | 46.8 | -0.9% | +0.01% | -2.71% | +4.52% | +14.36% | -3.81% | weak-down | 🟡 Roughly flat |
| VTI | $368.21 | 52.2 | 0% | +0.93% | -0.29% | +3.93% | +9.37% | -1.73% | strong-up | 🟢 Recovered further |
| RSP | $215.01 | 56.1 | 0.4% | +0.67% | +0.75% | +6.42% | +10.7% | -1.42% | strong-up | 🟢 Cooled from last cycle's peak, still strongest broad read |
Read: No death crosses anywhere in this group. SPY, VTI, and QQQ all improved off last cycle's weaker reads while DIA and RSP cooled from their prior highs — QQQ remains the one name still trailing the pack.
Sector Rotation (11 SPDR XL ETFs)
| Sector | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| XLE (Energy) | $59.55 | 63.5 | -0.12% | +12.76% | +16.15% | -6.16% | strong-up | 🟡 Reheated off last cycle's cool-down |
| XLF (Financials) | $56.94 | 62.2 | +1.12% | +3.94% | +8.99% | -1.15% | strong-up | 🟡 Cooled from outright overbought |
| XLV (Health) | $162.55 | 55.2 | -0.01% | +1.89% | +9.92% | -3.55% | strong-up | 🟡 Cooled from its breakout regime |
| XLY (Cons Discret) | $116.09 | 54.3 | +6.11% | -1.69% | -0.09% | -7.14% | weak-up | 🟢 Sharpest RSI recovery on the board, still death-crossed |
| XLP (Staples) | $85.05 | 51.6 | +1.09% | +2.1% | +4.93% | -5.65% | strong-up | 🟡 Cooled from last cycle's extension |
| XLRE (Real Estate) | $45.07 | 50.6 | -1.92% | +2.01% | +8.6% | -2.98% | strong-up | 🟡 Cooled from breakout regime |
| XLI (Industrial) | $179.84 | 49.8 | -1.54% | -1.92% | +10.78% | -3.55% | strong-up | 🟡 Cooled, roughly flat on 30D |
| XLK (Tech) | $175.35 | 46.5 | -0.3% | -5.53% | +18.46% | -11.76% | weak-down | 🟡 RSI recovered off fresh cycle low, structure still weak |
| XLC (Comm Svcs) | $108.24 | 46.2 | +1.83% | -1.37% | -4.48% | -10.1% | strong-down | 🟡 Roughly flat, still death-crossed |
| XLB (Materials) | $50.43 | 45.6 | -1.62% | -1.16% | +5.59% | -6.85% | weak-down | 🟡 Cooled from last cycle's extension |
| XLU (Utilities) | $44.35 | 40.4 | -4.19% | -0.94% | +0.93% | -7.22% | down | 🔍 Weakened, trend flipped to down |
Read: The defensive/value bid that dominated last cycle cooled across the board — XLF and XLV both stepped back from overbought/breakout territory. XLE reheated off its own cool-down, and XLY posted the sharpest RSI recovery in the group even though it remains death-crossed. XLK's climb off a fresh cycle low is a bounce, not yet a repair.
International
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| FXI (China) | $36.50 | 72.0 | +5.55% | +14.17% | -2.42% | -13.1% | weak-up | 🟠 Pushed into outright overbought, still death-crossed |
| EFA (Dev Int'l) | $105.58 | 57.8 | +2.1% | +2.48% | +9.57% | -0.7% | strong-up | 🟢 Steady improvement, near its 52-week high |
| VWO (Emg Mkts) | $58.75 | 50.7 | +1.64% | -0.79% | +6.23% | -4.5% | weak-down | 🟡 Recovered out of last cycle's weaker read |
| EWJ (Japan) | $92.39 | 51.2 | +1.29% | -0.71% | +9.23% | -5.26% | weak-down | 🟢 Recovered this cycle |
| EEM (Emg Mkts) | $64.09 | 47.3 | +1.2% | -3.6% | +10.06% | -10.45% | weak-down | 🟡 Recovered from the weakest read in the group last cycle |
Read: FXI is the standout — pushing into outright overbought while remaining the group's only death-crossed name. The rest of the international group broadly recovered off last cycle's weaker reads.
Bonds
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | Trend | Signal |
|---|---|---|---|---|---|---|---|
| HYG (High Yield) | $79.48 | 49.3 | +0.32% | -0.14% | +1.69% | weak-down | 🟢 Held its recovery, never carried a death cross |
| IEF (7-10yr Tsy) | $92.95 | 40.7 | -0.09% | -1.15% | -1.21% | strong-down | 🟡 Cooled back toward oversold, still death-crossed |
| BND (Total Bond) | $72.23 | 38.6 | -0.11% | -1.14% | -0.51% | strong-down | 🔴 Gave back most of the prior recovery |
| LQD (Inv Grade Corp) | $106.25 | 36.3 | +0.02% | -2.04% | -1.38% | strong-down | 🔴 Gave back most of the prior recovery |
| TLT (20yr Tsy) | $82.25 | 31.6 | -1.2% | -3.82% | -4.07% | strong-down | 🔴 Round-tripped straight back into oversold, sharpest reversal on the board |
Read: The bond complex's whole prior-cycle recovery unwound this cycle, TLT the sharpest single move — a full round-trip from RSI 47.5 back to 31.6. HYG is the exception: it never carried a death cross and is the only name in the complex still holding its RSI gain.
Commodities
| ETF | Price | RSI | 7D% | 30D% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|
| USO (Oil) | $129.17 | 55.5 | -5.5% | +25.08% | +20.56% | -16.17% | strong-up | 🟢 Stabilized, 30D re-accelerated despite a negative week |
| COPX (Copper) | $78.86 | 52.1 | +1.47% | +4.74% | +2.74% | -21.13% | weak-down | 🟡 Roughly flat |
| GLD (Gold) | $371.54 | 45.9 | -0.1% | +0.25% | -7.52% | -27.11% | strong-down | 🟡 Roughly flat, still death-crossed |
| SLV (Silver) | $52.36 | 44.2 | -0.44% | -2.28% | -22.19% | -52.33% | strong-down | 🟡 Roughly flat, still worst chart on the board |
| UNG (Nat Gas) | $10.06 | 37.5 | -4.64% | -12.67% | -19.48% | -40.93% | strong-down | 🔍 Ticked up off oversold's floor, structure still weak |
Read: USO's rally, which reversed hard last cycle, re-accelerated on a 30-day basis even with another negative week — worth flagging that the weekly and monthly reads are now pulling in opposite directions. UNG ticked up off its low but remains structurally damaged.
Volatility
| ETF | Price | RSI | 7D% | 30D% | 3M% | vs VWAP | Regime | Signal |
|---|---|---|---|---|---|---|---|---|
| VIXY | $20.51 | 43.1 | -4.34% | -4.69% | -25.23% | -31.14% | collapse | 🟡 Ticked down, still structurally dead |
| VXX | $21.25 | 43.0 | -4.96% | -4.79% | -25.18% | -30.92% | collapse | 🟡 Ticked down, still structurally dead |
Read: Both products ticked down slightly from last cycle, still deep in "collapse" regime and roughly a third below their own VWAP — no vol bid showed up in these two names this cycle.
Factor Rotation
| Factor | Price | RSI | 30D% | 3M% | vs VWAP | 52wkHi% | Signal |
|---|---|---|---|---|---|---|---|
| QUAL (Quality) | $219.32 | 56.2 | +0.21% | +6.06% | +9.66% | -0.83% | 🟢 Roughly flat, steady |
| VTV (Value) | $219.95 | 54.8 | +1.18% | +7.32% | +12.61% | -1.62% | 🟡 Cooled from steadiest-leader status |
| VUG (Growth) | $85.20 | 50.6 | -1.13% | +1.71% | +6.08% | -5.96% | 🟢 Recovered out of last cycle's oversold-adjacent read |
| MTUM (Momentum) | $299.59 | 44.4 | -8.69% | +5.2% | +8.67% | -13.31% | 🟡 Crack narrowing, still the group's laggard |
Read: Value's run cooled from last cycle's steadiest-leader status while Growth and Momentum both recovered off their cracks — Momentum's 30-day drawdown improved from -13.0% to -8.69% but remains the group's weakest read.
Industry Dashboards
| ETF | Price | RSI | 7D% | 30D% | 3M% | vs VWAP | 52wkHi% | Trend | Signal |
|---|---|---|---|---|---|---|---|---|---|
| XBI (Biotech) | $147.01 | 43.9 | -2.31% | -6.09% | +12.83% | +21.33% | -11.28% | strong-up | 🟡 Cooled further, clean uptrend intact |
| ITB (Home Const.) | $94.34 | 43.1 | -2.83% | -7.64% | -0.36% | -6.59% | -20.05% | strong-down | 🔴 Weakened further, still death-crossed |
| SMH (Semis) | $540.53 | 42.7 | -3.68% | -12.88% | +6.02% | +23.6% | -19.54% | weak-down | 🟡 Ticked up off the cycle low |
| XHB (Homebuilders) | $103.69 | 39.5 | -4.38% | -7.94% | -1.19% | -4.1% | -15.79% | down | 🔍 Gave back the golden-cross RSI gain |
Read: XHB gave back the golden-cross RSI improvement flagged last cycle — the cross itself is intact, but the RSI dropped back under 40. ITB weakened further and stays death-crossed. SMH ticked up modestly off its own cycle low.
Tier Analysis
Capitulation (RSI < 25)
None on this board.
Oversold (RSI < 40)
TLT (31.6), LQD (36.3), UNG (37.5), BND (38.6), XHB (39.5) — five names, all bond-complex or bond-adjacent. This is a full composition flip from last cycle's oversold group (UNG, SMH, MTUM, QQQ, XLK, EEM, VUG — all growth/tech or commodity/EM), which has now entirely recovered above RSI 40.
Neutral-Strong (RSI 40+)
The remaining 37 names, led by FXI (72.0, overbought), XLE (63.5), XLF (62.2), XLV (55.2), and XLY (54.3).
Entry Zones
| Stock | Zone | Thesis | Status |
|---|---|---|---|
| TLT / LQD / BND | Watch, at-risk | Round-tripped back under RSI 40 — last cycle's recovery unwound | 🔍 Watch |
| HYG | Hold | Only bond name still holding its RSI gain, never death-crossed | 🔒 Hold |
| XLE / XLF | Hold, reassess | Both cooled from overbought/near-overbought highs, trends intact | 🔒 Hold |
| XLY | Watch | Sharp RSI recovery off a death-crossed low, structure not yet repaired | 🔍 Watch |
| XLK / SMH | Watch | RSI recovered off the fresh cycle low, but trend stays weak-down | 🔍 Watch |
| FXI | Watch for exhaustion | Pushed into outright overbought, still death-crossed | 🔍 Watch |
| XHB / ITB | Avoid for now | Both weakened this cycle; XHB gave back its golden-cross RSI gain | ⚠️ Avoid |
| USO | Hold | Rally stabilized, 30-day trend re-accelerated | 🔒 Hold |
| International (FXI, EFA, EWJ) | Hold | Broad recovery across the group this cycle | 🔒 Hold |
Action Matrix
| Stock | Signal | Action | Notes |
|---|---|---|---|
| TLT, LQD, BND | 🔴 | 🔍 Watch | Round-tripped back into the sub-40 RSI band |
| HYG | 🟢 | 🔒 Hold | Held its recovery, never death-crossed |
| IEF | 🟡 | 🔍 Watch | Cooled back toward oversold, still death-crossed |
| XLE, XLF | 🟡 | 🔒 Hold | Cooled from overbought/near-overbought, trends intact |
| XLV, XLP, XLRE, XLI | 🟡 | 🔒 Hold | Cooled from prior extension, still in uptrends |
| XLY | 🟢 | 🔍 Watch | Sharpest sector RSI recovery, still death-crossed |
| XLC | 🟡 | 🔍 Watch | Roughly flat, still death-crossed |
| XLK, SMH | 🟡 | 🔍 Watch | RSI recovered off cycle low, structure still weak |
| XLU | 🔍 | 🔍 Watch | Weakened, trend flipped to down |
| FXI | 🟠 | 🔍 Watch | Into outright overbought, still death-crossed |
| EFA, VWO, EWJ, EEM | 🟢 | 🔒 Hold | Broad recovery this cycle |
| USO | 🟢 | 🔒 Hold | Stabilized, 30D re-accelerated |
| UNG | 🔍 | 🔍 Watch | Ticked up off oversold's floor, still weak |
| GLD, SLV | 🟡 | 🔒 Hold | Roughly flat, still death-crossed |
| VIXY, VXX | 🟡 | 🔒 Hold | Roughly flat, still in collapse regime |
| VTV, QUAL | 🟢 | 🔒 Hold | Steady leaders, cooled slightly |
| VUG, MTUM | 🟢 | 🔍 Watch | Both recovered off their cracks |
| XHB, ITB | 🔴 | ⚠️ Avoid | Both weakened, XHB gave back golden-cross RSI gain |
| XBI | 🟡 | 🔒 Hold | Cooled further, clean uptrend intact |
| SPY, QQQ, IWM, VTI | 🟡 | 🔍 Watch | Broadly improved; QQQ still the laggard |
| DIA, RSP | 🟢 | 🔒 Hold | Cooled from prior highs, still strongest broad reads |
What To Watch Next
- Whether TLT's round-trip back into oversold (RSI 31.6) is a one-cycle whipsaw or a real re-test of the bond complex's lows.
- Whether XLE and XLF's cooldown from overbought/near-overbought territory settles into a base or extends into a deeper pullback.
- Whether XLY's sharp RSI recovery (43.0→54.3) turns into an actual death-cross repair or fades the way prior bounces have on this board.
- Whether FXI's push into outright overbought (RSI 72.0) exhausts soon, given it remains death-crossed.
- Whether XLK and SMH's RSI recovery off their cycle lows holds, or gives back the way XHB's golden-cross RSI gain did this cycle.
Sources
- Tape data (price/RSI/SMA/returns): full-scan pre-computed summaries as of the 2026-07-31 close — market-pulse.
Related
9 eventsNo direct external sources are attached to this read.