The Nightcap White-Cap

Tuesday, 07-21-2026

Evening market read · post-close validation & recap

The Milkman
OuroTaurus
Built Tue 2026-07-21 · ~4:35 PM ET · validates the 07-21 regular-session close (Massive consolidated) · automated Nightcap run (4:31 PM slot, on time) static — regenerate to refresh
The 30-second skim

01Session Scorecard

Seven setups scored against tonight’s regular-session close — all from The Early Bird Curd (07-21): six asset-forecast leans plus one conditional intraday level-rejection short. 5 FIRE / 2 VOID / 0 MIXED / 0 NO_EVIDENCE. Two weekly setups from The Sunday Sundae (07-19) remain open on an unclosed holding window. Backlog after this run: 2 open (both weekly).

SetupOutcomeEvidenceΔ-ATR*Actual
AF LONG CPERmm-260721-AF-CPER-L FIRE Copper closed 39.53 (+2.89%, +1.64 ATR in-direction) — the reflation/AI-demand bid the morning called, and the day’s cleanest cyclical signal. No growth-scare and no dollar spike (UUP only +0.32%). Second straight FIRE (was +0.78 ATR 07-20). +1.64 39.53
AF LONG GLDmm-260721-AF-GLD-L FIRE Gold closed 374.81 (+1.96%, +1.03 ATR), with miners GDX +4.88% confirming. The “odd couple” risk the morning flagged — a haven rallying alongside a semis rip — resolved bullishly: no dollar rebid, no yield spike, haven not sold. Low-conviction call that worked. +1.03 374.81
AF SHORT FXBmm-260721-AF-FXB-S FIRE The GBP proxy closed 128.70 (−0.39%, +0.84 ATR in-direction) on UK political uncertainty. No hawkish-BoE surprise, no risk-on GBP bid — the small-move, low-conviction thesis held. +0.84 128.70
AF LONG USOmm-260721-AF-USO-L FIRE Oil closed 128.85 (+2.66%, +0.80 ATR), XLE +0.97% carrying the equity echo. The Gulf supply premium held with no de-escalation headline. Extended (+14% on the week) but continued. +0.80 128.85
AF SHORT XLPmm-260721-AF-XLP-S FIRE Staples closed 84.06 (−0.94%, +0.56 ATR in-direction) — the weakest defensive on a risk-on growth day, exactly as the two-leg forecast called. No risk-off rotation back into staples. +0.56 84.06
LRT SHORT QQQmm-260721-LRT-QQQ-S VOID A conditional level-rejection short that armed only on a failed hold of 702.30 with SMH new lows and red breadth in the first hour — none of which happened. QQQ reclaimed the pivot and closed 708.97, above the 705.80 decisive-reclaim kill (−0.47 ATR against the level), with SMH ripping and breadth green. Correctly never armed; kill conditions fired. No fill. −0.47 708.97
AF SHORT XLVmm-260721-AF-XLV-S VOID The worst premarket sector (−0.82) reversed to close 160.25 (+0.63%, −0.35 ATR against the short). A UNH-led health-specific bid (+3.51%) returned — the named kill leg — and the strong month/quarter uptrend resumed. The short did not fire. −0.35 160.25
OMR LONG SMHsun-260719-OMR-SMH-L OPEN Weekly oversold-reversal, arms Wed evening only (after Alphabet reports) on an SMH reclaim of 567.41 + QQQ >702.30 — not yet triggerable. Interim: not armed, not killed, and running strongly its way — SMH closed 584.08 (far above the 536.81 kill), QQQ 708.97 (above the 686.76 kill). The Alphabet-capex kill is pending Wed AMC. Stays open. 584.08
EXF SHORT XLEsun-260719-EXF-XLE-S OPEN Weekly exhaustion-fade, zone-only / not armed (needs a genuine de-escalation headline + a failed high; the Sunday note flagged it unlikely to arm while the strait stays shut). Interim: XLE closed 58.50 (+0.97%) — energy kept climbing, no de-escalation, so the short still has no arm trigger. Stays open, leaning toward never expressing. 58.50

*Δ-ATR for asset-forecast rows is the close-vs-previous-close move in daily-ATR(14) units, signed in-direction (positive = favorable to the setup). The QQQ row is the mechanical validator’s close-vs-level figure (708.97 vs the 702.30 short level = 0.47 ATR adverse). — where no numeric level applies.

LensA clean day for the morning’s directional read: every lean that pointed with the risk-on/reflation tape fired, and the only two misses were fades built to bet against it — one of which (the conditional QQQ short) was designed never to arm on exactly this kind of holding rally, and did not. The single call that actually cost anything was the low-conviction health short, undone by a stock-specific UNH bid, not a macro miss.

02Calibration

0.2238 Rolling Brier (last 50) lower = better; 0.25 = random · from 0.2210 (07-20 record-best), +0.0028 as 2 VOIDs entered · still −0.0031 vs 07-15
60.0% Hit rate (last 50) all-time 49.7% over 145 eligible
145 Calibration-eligible 148 validated − 3 NO_EVIDENCE/unevaluable · +7 scored tonight (5 FIRE / 2 VOID)

Pattern performance (Component 13) — edge by pattern × direction (n ≥ 5)

PatternDirnHit%Mean probMean Brier
AF (asset-forecast)Long2277%0.550.223
MS (mean-reversion)Short580%0.460.295
SRT (sector-rotation)Short667%0.470.317
SRB (sector-rotation)Long862%0.430.299
AF (asset-forecast)Short1759%0.550.238
GFD (gap-fill)Long650%0.410.259
MS (mean-reversion)Long3145%0.520.249
LRT (late-reversal fade)Short3342%0.390.275
SBD (small-body doji)Long60%0.370.138

Calibration trend (Component 14) — rolling-Brier (last 50) by validation date

07-09: 0.2352 / 54% 07-10: 0.2323 / 54% 07-15: 0.2269 / 60% 07-16: 0.2228 / 60% 07-20: 0.2210 / 60% 07-21: 0.2238 / 60%

Mechanism-leak (Component 15) deferred this run. The canonical leak count and the dashboard xlsx refresh both crash on a numeric comparison against a setup’s descriptive-string level (lvl) — a standing bug, ISS-20260720-10 (a duplicate filed this run was closed as such). The scored outcomes were written cleanly by score_setup before the augmentation step, so the calibration above — recomputed from the validated jsonl via nightcap_prep --rollups — is unaffected; only the leak tally and the .xlsx are stale (last built 07-18).

LensThe trailing-50 ticked up a hair (0.2238 from Monday’s record 0.2210) as two VOIDs entered the window — still comfortably better than a coin-flip and net-improving on the week. The engine of the record remains the asset-forecast long bucket (77% at n=22, reinforced by tonight’s copper/oil/gold sweep); the standing drag is the LRT short-fade (42% at n=33) — the pattern most worth interrogating, though tonight’s LRT short correctly stood aside as the up-tape ran.

02bMacro-Prediction Calibration

A distinct calibration source — the macro / cross-asset prediction track carried in the thinktank-v2 DB (index, FX, commodity, crypto targets), read-only and never combined with the setup Brier/hit-rate above. Rendered from the reader label verbatim: est. (thinktank-v2 derived, asOf 2026-07-21). No new resolutions since 07-20.

33% Macro hit-rate 2 HIT / 4 MISS over 6 resolved
6 / 11 Resolved / total 5 unresolved — no price series (score N/A, never guessed)
InstrumentDirTargetEntryCloseRealizedResult
SPX (S&P 500)up+0.5%7369.07537.4+2.29%HIT
BTC (Bitcoin)up+4.0%6036563086+4.51%HIT
ES (S&P Sep)down−1.5%7385.37537.4+2.06%MISS
NQ (Nasdaq Sep)down−2.5%2934729698+1.20%MISS
NQ (Nasdaq Sep)short−3.0%2920029698+1.71%MISS
GC (Gold, spot)up+2.0%4046.04104.1+1.44%MISS

Pending / unresolved (no price series — never scored by guess): XLK/XLU pair, IWM/QQQ pair, Brent (BZ), USD/JPY, Wheat (ZW). Read-only — the DB was not written.

LensThe macro book’s tell holds: the outright up calls (SPX, BTC) hit, while every down/short index bet missed as equities kept grinding higher — a directional-bias miss, not a sizing one, and tonight’s broad risk-on close only deepens that lesson. Small sample (6 resolved); flagged distinct from the setup record on purpose.

03Tape & Rate Backdrop

IndexCloseDay %
SPY (S&P 500)748.28+0.83%
QQQ (Nasdaq-100)708.97+1.85%
RSP (S&P equal-wt)212.76+0.16%
IWM (Russell 2000)296.54+1.45%
SMH (semis)584.08+4.52%
Realized regimeBroad risk-on growth, semis-led — the AI-derating repair, attempt #3, held. A megacap/semis-carried index that this time pulled small-caps and most sectors green, with a commodity-reflation overlay (copper, oil, gold up; yields up) and only staples/communications lagging. Broader than Monday’s two-speed tape, but not yet fully broad. (Realized, not a forward call.)

04Cross-Asset

ProxyCloseDay %Read
CPER (copper)39.53+2.89%Reflation/growth bid — the day’s strongest cyclical signal
USO (WTI oil)128.85+2.66%Energy firm — Gulf supply premium persists
GLD (gold)374.81+1.96%Haven bid held despite risk-on — the odd-couple tell
GDX (gold miners)74.19+4.88%Miners ripped — confirming the gold move with leverage
UUP (US dollar)28.48+0.32%Firm — no dollar spike to kill the metals
HYG (HY credit)79.65−0.04%Spreads steady — no credit stress
TLT (20y+ USTs)83.66−0.27%Duration soft — yields up on the reflation lean
LensAn unusually everything-bid board: semis, copper, oil and gold all higher with a firm dollar and steady credit. The tell worth marking is gold rallying next to a semis rip — a war/debasement haven bid coexisting with full risk-on rather than being sold into it, which is exactly what carried the gold long. All proxies confirmed (Massive).

05Sector & Breadth (realized)

XLKTech+2.88
XLEEngy+0.97
XLVHlth+0.63
XLIIndu+0.30
XLYDisc+0.23
XLBMatl+0.14
XLFFins+0.13
XLUUtil−0.04
XLRERE−0.07
XLCComm−0.69
XLPStpl−0.94
LensThis is the mirror image of Monday: where the 07-20 tape bought cyclical sectors that then rolled with red breadth, tonight’s risk-on-growth call landed with the sectors actually green — and the two defensive shorts split correctly, staples falling while health reversed up on a stock-specific UNH bid rather than a sector-wide defensive rotation.

06Single-Name Movers

This automated Nightcap run did not fetch the closing-bell newsletters (Stocktwits Daily Rip close / Axios Closer) — single-name narrative color is refresh-required. The confirmed close tape stands in as the illustrative read.

Illustrative only — never trade recommendations. Individual-name detail is refresh-required (no newsletter pull this run).

07Morning Lens vs Reality

Closing the loop on The Early Bird Curd (07-21). The morning read a risk-on-growth, semis-led repair attempt #3 and leaned with the everything-bid tape — and reality delivered, broadly. Right: all four asset-forecast leans that pointed with the rally fired — copper (+1.64 ATR), oil (+0.80) and gold (+1.03) longs, plus the GBP-proxy short — and the staples short landed clean as defensives lagged (XLP the worst sector). The macro call was the sharpest it’s been in the record. The two misses were both fades against the up-tape, and neither cost anything: the conditional QQQ level-rejection short was deliberately built to arm only on a failed 702.30 hold with semis rolling to new lows — the exact opposite of what happened, so it VOIDed without ever arming, precisely as designed; and the low-conviction health short reversed when a UNH-led bid pulled XLV green, a stock-specific tell rather than a macro miss. Net: a strong directional night — the only setup that would have risked capital was the health short, and the QQQ VOID was a non-event. Both Sunday weekly setups sit open, neither armed nor killed — the semis-reversal long (SMH) can’t arm until Wednesday after Alphabet, and the energy-exhaustion fade still has no de-escalation to work with.