raw scansnapshot — prices as of scan date, not live51 rows · screens, not recommendationsprior scanresearch/scans/2026-07-17-macro-commodities.md
Data as-of the 2026-07-24 settled close (Friday's close; this is a Saturday EOW read). Numbers read directly from macro-commodities — no prose math. Prior scan: 2026-07-17-macro-commodities (2026-07-17).
Oil keeps accelerating and the grain complex has joined it, but precious metals and the dollar are telling a different, and internally contradictory, story.USO's 30-day change went from a +7.9% breakout in the prior scan to +28.6% this week — the single sharpest move in the book, two scans running. Wheat, soy, and corn are all now RSI 63-73, pushing into or toward overbought. But the dollar (UUP) reversed its own cooling from last scan and re-firmed hard (RSI 54.4 → 64.3), and rather than metals catching the textbook inverse bid, GLD/SLV/GDX/SIL only staged a shallow, uneven bounce — none of them cleared their death-cross or collapse/strong-down tags. This remains a narrow, commodity-specific tape, not a single clean macro regime.
Quick Snapshot
Signal
Reading
Overall
🟡 Oil and grains extend an inflation-flavored move while metals stage only a shallow bounce and the dollar re-firms — a mixed tape, not one regime
Key insight
USO 30D +7.9% (prior scan) → +28.6% now, RSI 58.9 → 67.2 — the clearest, most persistent single move in the book
Dollar/metals
UUP re-firmed (RSI 54.4 → 64.3) rather than continuing to cool; GLD/SLV/GDX/SIL RSI all rose too, but stayed death-crossed / `collapse` — the "broken relationship" flagged last scan hasn't cleanly resolved
Also extended
SOYB (RSI 72.9), DBA (66.9), CORN (66.1), WEAT (63.4, cooling off last scan's 72.8 peak) — the grain complex is broadly overbought or close to it
USO's 30-day change nearly quadrupled from the prior scan's +7.9% to +28.6%, with RSI up to 67.2 from 58.9 — the crude side of the energy book keeps accelerating, not just holding a bounce.
UNG stayed on the opposite side of the split, still strong-down and -37.7% from its 52-week high — natural gas continues not to confirm the crude move.
All four names' RSI climbed off the prior scan's 34-40 band into the 43-47 range, and 30-day changes flipped from deeply negative (-4.8% to -14.7%) to roughly flat — a real bounce, but every name still carries a confirmed death cross and a strong-down trend tag.
SLV remains the deepest drawdown in the group at -52.6% from its 52-week high, even after the bounce.
This is the group most directly implicated by regime-signals.json's gld_uup_inverse gauge (see Cross-Asset Signals below) — the dollar firmed this week, which is the more textbook-consistent explanation for soft metals than last scan's "broken relationship" framing.
Soybeans are now the hottest name in the book at RSI 72.9, edging into overbought and just -0.8% from its 52-week high, up from RSI 63.1 in the prior scan.
Wheat cooled slightly off last scan's overbought edge (RSI 72.8 → 63.4) even as its 30-day gain grew to +12.8% — a pause inside the trend, not a reversal.
Copper (COPX) remains the laggard of the group, RSI still under 50 and tagged weak-down despite a positive 7-day print.
URA bounced off the prior scan's edge-of-oversold reading (RSI 30.9 → 38.7) and its 30-day drawdown narrowed from -18.9% to -10.8% — still strong-down and no confirmed floor, but the deepening has paused.
The dollar's RSI jumped from 54.4 to 64.3 this week — a clean re-firming, reversing the cooling flagged in the prior scan.
Both euro (FXE) and yen (FXY) weakened as the dollar firmed — the more textbook-consistent currency read this week, in contrast to the metals side of the same dollar move.
Both names' 30-day drawdowns deepened again this week (XHB -2.4% → -5.1%, ITB -1.9% → -6.0%) — continued digestion, not capitulation, with neither name close to oversold.
Japan (EWJ) and broad EM (EEM) both recovered some ground off last scan's sharp weakening (RSI 41.7 → 45.6 and 39.4 → 41.0), though EEM's 30-day print is still negative.
China (FXI) kept climbing for a third straight scan (RSI 55.7 → 57.9), still the strongest name in the international book.
India (INDA) is the new laggard this week, rolling into strong-down after being roughly flat two scans ago.
Value (VTV) is the clear leader now, RSI up sharply to 63.5 from 54.5 — the best-positioned factor name, just -1.0% from its 52-week high.
Momentum (MTUM) stayed the group's laggard, though its 30-day drawdown narrowed from -10.8% to -6.7% — still weak, but stabilizing.
Growth (VUG) is now the weakest name in the group (RSI 40.1), continuing to lag value and quality.
What the Commodities Are Telling Us
This week's book still resists one clean label. Oil's acceleration (USO 30D +28.6%) and a broadly overbought-or-close grain complex (SOYB RSI 72.9, DBA 66.9, CORN 66.1, WEAT 63.4) both read inflation-flavored. But precious metals — the assets that would typically be first to price a durable inflation or crisis premium — only staged a shallow, uneven bounce: GLD and SLV remain death-crossed and strong-down, and GDX/SIL sit in outright collapse regimes, all still well off their 52-week highs. The dollar (UUP RSI 64.3) re-firmed hard rather than continuing to cool, which is a more conventional explanation for soft metals than the "broken relationship" flagged in the prior scan — but it also means this isn't a broad-based inflation trade, since a firming dollar alongside surging oil and grains is itself an unusual combination. Momentum stayed weak and housing's pullback deepened, arguing against calling this stagflationary either. Read together: a narrow, energy-and-grain-specific supply/demand impulse sitting alongside a re-firming dollar and continued softness in rate-sensitive housing and momentum — closer to a commodity-specific story than a clean macro regime call.
Cross-Asset Signals
USO's acceleration (RSI 58.9→67.2, 30D +7.9%→+28.6% since the prior scan) remains the single clearest, most persistent move in the book.UNG still hasn't confirmed (still strong-down, -37.7% from its 52-week high), so this stays an oil-specific story.
The dollar's re-firming (UUP RSI 54.4→64.3) is the more textbook-consistent explanation for this week's shallow metals bounce than the "broken relationship" framing from the prior scan — but GLD/SLV/GDX/SIL all remain death-crossed or in collapse, so the bounce isn't yet a confirmed reversal.
regime-signals's gld_uup_inverse gauge reads gold_breakdown_dollar_firm (risk-on band, warning severity) — GLD ($371.90) sits under its flagged hard-breakdown level ($410) while UUP ($28.58) sits above its firmness invalidator ($27.10). The gauge's own fired flag is still false, so treat this as a state read, not a confirmed trigger.
The same file's sector_rs_rotation gauge is actively firing (defensives_bidding, risk-off band, -2.5 cyclical-minus-defensive 30-day spread) — yet energy (XLE, +11.3% 30D) sits at the very top of that same sector basket, a reminder that a "defensive" rotation label and single-sector strength can point in different directions inside one gauge.
Grains are now broadly overbought or close to it alongside oil — the clearest inflation-adjacent cluster in this scan.
30D accelerated to +28.6% from +7.9% last scan — the sharpest, most persistent move in the book
🟠 Getting extended
SOYB (RSI 72.9), DBA, CORN, WEAT
Grain complex broadly overbought or close to it
🔍 Watch, no floor confirmed
URA, GDX, SIL, SLV
`strong-down`/`collapse` regimes, still well off 52-week highs despite a bounce
⚠️ Diverging pair
UNG vs. USO
Gas still `strong-down` (-37.7% from high) while crude keeps accelerating
🔒 Holding up relatively
VTV, QUAL, RSP, FXI
`strong-up`/`uptrend`, closest to 52-week highs in their peer groups
What To Watch Next
Whether GLD/SLV/GDX/SIL's shallow bounce turns into a confirmed reversal (death cross still active on all four) or fades again as the dollar's re-firming continues.
SOYB and DBA pressing further into overbought territory (RSI 70+) — a stall or reversal there would be the first crack in the grain-and-oil inflation cluster.
Whether the gld_uup_inverse regime gauge actually trips fired: true on a future run, given GLD is already under its flagged hard-breakdown level.
URA's pause in deepening (30D -18.9% → -10.8%) — worth checking whether uranium is basing or just breathing before another leg down.