Starr Quant Lab Desk Research

US · Recap

U.S. Market Recap | 2026-08-21 (ET), Friday

Fri US Recap · 16 tables America/New_York

Machine-translated from the Chinese original. In case of any discrepancy, the Chinese version prevails.

Single-name entries

This is a reconciliation report — it carries no single-name score table. Recaps are structured around hit-rate reconciliation, theme verification and next-day outlook.

Coverage window: 2026-08-21 09:30–16:00 ET regular session + 16:00–17:07 ET after hours.

Quote conventions (this report does not mix readings taken at different moments):

  • Prior close, open, high, low, close, volume and after-hours price for individual stocks/ETFs are taken from the stockanalysis.com quote and daily-bar APIs; the close is defined at 16:00 ET, and after-hours readings were taken at 16:57–17:07 ET.
  • The three major indices, the Russell 2000, VIX, Treasury yields, the dollar index, commodities and crypto are taken from the CNBC quote API, read at 16:41–17:07 ET (post-close settlement values).
  • Gold/silver/copper are continuous futures contracts (@GC.1 / @SI.1 / @HG.1), which carry a basis versus spot — do not mix them with spot figures.
  • This report adds a new "vs pre-market price" column: that is, "today's close ÷ the quote used in the pre-market list − 1". Scoring only on the day's percentage change systematically overstates the hit rate — the pre-market list was written only after the gap had already happened, so a reader following it would have paid the pre-market price, not the prior close. The two conventions give drastically different conclusions today; see §2.
  • ⚠️ Market breadth (advancers/decliners) was not obtained for this report; the reason is explained in §1. That item is left blank and is not filled in with an estimate.

⚠️ Read this first: today was not "day 4 of the debasement trade" — it was a large sector rotation driven by a growth surprise

The pre-market list framed the whole day along the line "fiscal easing vs. a hawkish Fed → weaker dollar → bidding for hard assets", and stated explicitly that "today's rally in hard assets is dollar-driven, not driven by falling rates". The closing data knocked out both legs of that attribution:

Variable Pre-market reading (08:05–08:16) Closing reading Net change on the day
Dollar index DXY 98.681 (−0.22%) 98.839 (−0.06%) The dollar rebounded during the U.S. session, cutting the decline by roughly 3/4
10-year Treasury 4.69% (prior close 4.698%) 4.736% +3.8bp — yields rose
2-year Treasury 4.183% 4.240% +5.5bp, the front end rose more (bear flattening)
Copper @HG.1 6.611 (+2.20%) 6.5785 (+1.69%) Copper actually fell during the U.S. session (−0.49%)
Gold @GC.1 4,654.00 (+1.81%) 4,662.00 (+1.98%) Only +0.17pp during the U.S. session — essentially unchanged

In other words: the dollar stopped falling, yields actually rose, and the metals themselves barely moved during the U.S. session — yet copper miners rose 5%–9.4% on the day. The "weaker dollar → hard assets" transmission chain simply did not hold today; the things that went up went up for the right reason, but the reason given pre-market was wrong.

The real switch was the 09:45 ET August Flash PMI, and the pre-market call on its direction was exactly backwards. Pre-market it read: "the services prior reading of 54.6 is above the upper bound of the expected range; services is the one more likely to 'miss'". The actual result:

  • Services 56.8 (expected 54.0, prior 54.6) — not a miss, but a 2.8-point beat and a 20-month high
  • Manufacturing 53.2 (expected 53.9, prior 53.9) — a small miss
  • Composite output 56.0 (prior 54.5), a 52-month high since April 2022; S&P Global said the survey data point to Q3 annualized growth of close to 3%, versus only 1.5% in Q2

A surprise of "strong growth, and strong specifically in services" explains everything that looked contradictory today: yields up (better growth → no fall in the odds of a hike), the dollar rebounding, cyclicals and small caps leading (Dow +0.98%, Russell +0.85%, both beating the Nasdaq's +0.44%), materials +2.14% and metals & mining XME +4.05% leading, while rate-sensitive utilities XLU −2.28% were the worst in the market and the crowded AI compute chain faded.

⚠️ And there is a structure here that must be spelled out: the PMI did not lift the index, it re-ordered the inside of the index. SPY opened at 766.05 and closed at 765.72, a net change of −0.04% during the regular session; QQQ was −0.25% in the regular session. Almost all of today's index-level gain came from the overnight gap; the only index still moving higher during the U.S. session was the Dow (open→close +0.41%). Reading today as "the broad market turned strong" is wrong — it was money moving from A to B inside the same index.


0. Today in one sentence

① Character: risk-on, but "cyclical/value risk-on", not "growth risk-on". Dow +0.98% > Russell 2000 +0.85% > Nasdaq +0.44% ≈ S&P +0.43%, while NVDA −0.98%, INTC −2.24%, SMH −0.40%, XLU −2.28%. VIX closed at 15.13 (−5.50%), with fear receding further.

② Today's strongest theme was copper/industrial metals — and that is precisely the one sector the pre-market list downgraded wholesale and placed on the "avoid" list. SCCO +8.69%, ERO +9.44%, FCX +7.64%, HBM +6.79%, TECK +4.59%, BHP +3.63%, COPX +5.18%. The falsifiable test set pre-market was cleanly falsified (see §2 and §3).

③ The most accurate call in the pre-market list was the internal structure of crypto — but it was "right" for a different reason than the one given. The quality end — HOOD +13.70%, COIN +8.20%, IBIT +6.02% — versus the miner end — HUT −8.79%, CIFR −8.40%, RIOT −5.48%, WULF −4.92%, CLSK −4.92% — a spread of more than 22 percentage points, exactly the direction called pre-market. But the pre-market explanation ("crypto flows shifting from short covering to active allocation") cannot support that magnitude — BTC was +6.63% on the day while the miner end fell hard; that is not "lagging", it is the opposite direction. The real reason is that the miner end is no longer crypto beta but AI infrastructure beta, and it was de-risked today alongside XLU/SMH/NVDA (see §3④). This indicator must be retired starting tomorrow.

④ Earnings side: ROST delivered, but it delivered in exactly the way the pre-market warned about. It closed +4.39%, but opened +6.49% → closed +4.39%, open→close −1.97%, with the intraday high of 243.86 essentially equal to the opening price. The pre-market test — "if it breaks the opening price within the first 30 minutes, the market has read that half of the upside is multiple re-rating" — was called correctly. Executed at the pre-market price of $245.70, the close is −2.71%.

⑤ On the avoid side, OSIS had the right direction but a losing execution. It closed −5.21%, but after the intraday low of 186.50 broke the 52-week low (old low 197.27) it reversed violently, open→close +5.47%. The two counter-signals specifically flagged pre-market (the record $1.9 billion backlog is a fundamental floor; the −9.39% was built on extremely thin pre-market volume) both played out. Shorting at the pre-market price of $197.62, the close is a loss of 4.61%.

⑥ The biggest problem this report must self-report is a coverage gap, not a wrong judgment. The two largest single-stock events of the day are nowhere in the pre-market list: MRNA +8.86% (volume 87.02 million shares) and MRK +2.39% (intraday 52-week high of 154.49) — day 3 of pricing the phase-3 mRNA cancer-vaccine readout that landed on 8/19 — plus TSLA +5.14% (Nevada approved a permit for 5,000 Cybercab robotaxis). A full-text search shows the pre-market list contains "MRNA/Moderna/MRK/Merck/疫苗/医药/TSLA/Tesla/特斯拉/robotaxi" zero times each. This is the old problem of a scan window that only looks at "prior close → this morning" and cannot see themes that keep developing across days.

⑦ The one-line verdict: today was a rotation day from "AI infrastructure → cyclicals + pharma + brokers", not a broad rally; the index gain came from overnight, and during the U.S. session money moved out of what was crowded and into what was cheap.


1. Market overview

Index Close Change Change% ETF proxy volume Open→Close%
Dow Jones Industrial 53,277.01 +517.80 +0.98% DIA 2.96 million shares +0.41%
S&P 500 7,674.37 +33.21 +0.43% SPY 38.58 million shares −0.04%
Nasdaq Composite 26,180.46 +113.29 +0.44% QQQ 33.08 million shares −0.25%
Russell 2000 3,017.87 +25.44 +0.85% IWM 22.82 million shares +0.04%

⚠️ The "open→close" column is the one to look at today. All four indices closed higher, but only the Dow was still moving up during the U.S. session; 100% of the gains in the S&P and the Nasdaq came from the overnight gap, and both gave ground back after the open. "The market went up today" is true on a closing basis and false on an intraday basis.

Rates, FX, volatility, commodities

Indicator Close Prior close Change
VIX 15.13 16.01 −5.50%
2-year Treasury 4.240% 4.185% +5.5bp
10-year Treasury 4.736% 4.698% +3.8bp
30-year Treasury 5.277% 5.237% +4.0bp
Dollar index DXY 98.839 98.895 −0.06%
Gold @GC.1 4,662.00 4,571.40 +1.98%
Silver @SI.1 69.05 68.105 +1.39%
Copper @HG.1 6.5785 6.469 +1.69%
WTI @CL.1 86.67 86.83 −0.18%
Brent @LCO.1 93.95 93.78 +0.18%
Bitcoin 77,446.69 72,633.02 +6.63%

The curve bear-flattened: the 2-year rose +5.5bp, more than the 10-year's +3.8bp, and the 2s10s spread narrowed from 51.3bp to 49.6bp. This is the textbook shape of "strong growth data → the front end prices less easing", fully consistent with the large services PMI beat. The pre-market chain — "strong PMI → higher odds of a September hike → dollar rebound → more damage to precious metals/crypto than to copper" — was directionally right, but the damage never happened: gold and silver went sideways during the U.S. session and crypto actually rose 6.63%.

Sentiment call: risk-on, but the vehicle for risk appetite has changed. VIX below 15.5, yields up, cyclicals and small caps leading, defensive utilities and real estate at the bottom — this is a growth-pricing combination, not a liquidity-pricing one.

⚠️ Data-collection failures and implementation notes for this run:

  • Market breadth (advancers/decliners) could not be obtained and is left blank in this report. The only figure retrieved was "573 up / 124 down / 51 unchanged", but: ① the total is only 748 names, far short of the roughly 2,800-name NYSE universe, so it likely covers only an "active stocks" subset; ② the same source simultaneously claimed "all major indices closed lower on the day", which directly contradicts the exchange-based S&P +0.43%. Once falsified it cannot be used; the whole line was discarded rather than used as filler.
  • The S&P Global PMI official press-release page returned 403 on WebFetch, so the PMI figures were cross-confirmed from three secondary sources — investinglive + Kitco + Benzinga (all three agree exactly on 56.8 / 53.2 / 56.0) — but no primary press release was obtained.
  • TheStreet's 8/21 close wrap, the Rio Times copper article and the stockanalysis sector pages all returned 403/404.
  • ⚠️ One case of a secondary source conflicting with exchange data (exchange data was used): one MRNA article claimed a "drop of 19.83% to $140" on 8/20, whereas the exchange daily bar shows 8/20 open 150.14 / close 133.32 / −23.55%. All MRNA figures in this report were switched to the daily-bar API; that article was not relied upon.
  • ⚠️ Two cases of "attribution pieces stitching in old earnings" were intercepted: while searching for the reason behind the 8/21 moves in FCX/SCCO, auto-generated pages such as tradingkey / stockstotrade / blockonomi presented the Q2 earnings released in July (FCX adj EPS $0.74 beat $0.62) as today's catalyst. Those earnings were priced back in July and were not the 8/21 driver; they were excluded, and today's copper-miner attribution instead uses the self-evidencing chain "the metal itself fell during the U.S. session while the stocks rose sharply" (see §3①).
  • Zacks's "Stock Market News for Aug 21, 2026" is actually about the 8/20 close (Dow 52,759.21 = this report's prior close); the headline date is the publication date, not the data date. Identified and not misused.
  • yfinance was not called this time (the after-hours stockanalysis daily-bar API met the OHLC need and avoided rate-limit risk); the screener batch endpoint that pm_mv.py depends on is still 404 and has not been fixed, but this report used per-stock /api/quotes/ and /api/symbol/.../history, both of which worked normally.

2. Scoring the pre-market list

"vs pre-market price" = close ÷ the pre-market list's quote − 1. The pre-market list was written after the gap, so a reader's actual cost basis is the pre-market price. Put the two columns side by side and the conclusions are completely different.

① Recommended side (priority deep-dive / watch closely), 6 names

Ticker Pre-market call Pre-market price Close Today's change% vs pre-market price% Delivered? Comment
ROST priority deep-dive (73 pts) 245.70 239.04 +4.39% −2.71% partly delivered Opened +6.49% → closed +4.39%, open→close −1.97%, high 243.86 ≈ the open. The pre-market gap-fill warning was correct
HOOD watch closely (64 pts) 99.61 108.13 +13.70% +8.55% delivered strongly Best in the market. No repeat of yesterday's open-high-close-low, open→close +6.95%, volume 50.02 million shares
IBIT watch closely (63 pts) 43.52 43.68 +6.02% +0.37% delivered (entirely in the gap) Open 43.67, close 43.68, open→close +0.02% — no movement at all during the U.S. session
COIN watch closely (62 pts) 180.24 186.49 +8.20% +3.47% delivered Open→close +3.57%, intraday high 191.36; third consecutive big up day
CRCL watch closely (59 pts) 88.00 87.98 +5.16% −0.02% delivered (gains fully given back) Ran to 92.97 intraday (+11.1%) then gave it all back; open price = close price = 87.98
GDX watch closely (58 pts) 102.84 102.83 +2.98% −0.01% delivered (entirely in the gap) Open→close +0.18%, same pattern as IBIT

Recommended side, the two conventions compared:

  • On the closing-change convention: 6/6 closed higher, a 100% hit rate, average +6.74%.
  • On the vs-pre-market-price convention: only 3/6 finished above the pre-market price (HOOD/IBIT/COIN), and IBIT by only +0.37%; average +1.61%.
  • ⚠️ And that +1.61% depends heavily on a single name: excluding HOOD, the other 5 average only +0.22%.

② "Watch only" side, 14 names — this is where this report's biggest judgment errors are concentrated

Ticker Pre-market call Pre-market price Close Today's change% vs pre-market price% Comment
ERO watch only 37.70 39.42 +9.44% +4.56% wrong call, second strongest in the market
SCCO watch only 205.02 216.00 +8.69% +5.36% wrong call, open→close +4.43%
FCX watch only (downgraded two notches) 74.10 76.66 +7.64% +3.45% wrong call, made a 52-week high — see the dedicated discussion below
HMY watch only 23.59 23.54 +6.90% −0.21% Gains entirely in the gap
HBM watch only 29.27 30.06 +6.79% +2.70% wrong call
MSTR watch only 120.25 119.25 +6.10% −0.83% Gains entirely in the gap; "watch only" was in fact right on the pre-market-price convention
AU watch only 119.10 121.22 +5.94% +1.78% wrong call (mildly)
TECK watch only 68.50 69.20 +4.59% +1.02% wrong call (mildly)
KGC watch only 32.40 32.76 +4.23% +1.11% wrong call (mildly)
BHP watch only 95.92 97.03 +3.63% +1.16% wrong call, intraday 97.27 = 52-week high
NEM watch only 130.99 131.58 +3.09% +0.45% Essentially flat
MU watch only 985.24 966.78 −0.77% −1.87% right call, open→close −2.31%
AG watch only 21.95 21.09 −0.47% −3.92% right call, open→close −3.70%, worst on the whole list
SMH watch only 569.63 560.42 −0.40% −1.62% right call, open→close −1.58%

Watch-only group: 11 up, 3 down, average +4.67% (vs pre-market price +0.94%). ⚠️ The key comparison: on the vs-pre-market-price convention, the recommended group excluding HOOD averages +0.22%, below the watch-only group's +0.94%. In other words — apart from that one name, HOOD, today's tiering had essentially no discriminating power, and was arguably inverted. All 3 correct calls (MU / AG / SMH) belong to the "no catalyst of its own, pure sentiment tag-along" category, with the stated reason "pure sentiment tag-along today, no catalyst of its own" — that reason was the single most reliable screening logic in the whole report today and should be kept and weighted up.

③ Avoid / short-watch side

Ticker Pre-market call Pre-market price Close Today's change% vs pre-market price% Comment
OSIS avoid / short watch 197.62 206.73 −5.21% +4.61% Right direction, losing execution. After the intraday low of 186.50 broke the 52-week low it reversed violently, open→close +5.47%. Both counter-signals written pre-market played out
MARA avoid (yesterday's short-squeeze star) 11.26 +0.99% Right call. While the crypto quality end was +5% to +14%, it managed only +0.99%, open→close −3.76%
BMNR avoid 22.83 +5.84% Wrong call (but still 7.9pp behind HOOD)
SBET avoid 7.91 +4.22% Wrong call (but still 9.5pp behind HOOD)
RIOT / CLSK / HUT / CIFR / WULF watch only · "clearly lagging in today's pre-market" −5.48 / −4.92 / −8.79 / −8.40 / −4.92% All correct, and the single most accurate call in the report

④ Hit-rate summary and post-mortem

Group Count Hits, closing convention Mean, closing convention Hits, pre-market-price convention Mean, pre-market-price convention
Recommended side (priority deep-dive + watch closely) 6 6/6 (100%) +6.74% 3/6 (50%) +1.61%
└ excluding HOOD 5 5/5 +5.35% 2/5 (40%) +0.22%
Watch only 14 3/14 correct (11 rose) +4.67% +0.94%
Avoid / short 4 2/4 (OSIS direction, MARA) OSIS short −4.61%
Miner end, "clearly lagging" 5 5/5 (100%) −6.50%

⚠️ Three post-mortem points, in descending order of severity:

First, the coverage gap is more serious than the wrong judgments. Three names that were among the market leaders today in both percentage gain and volume — MRNA (+8.86%, 87.02 million shares), MRK (+2.39%, intraday 52-week high), TSLA (+5.14%) — had zero coverage in the pre-market list. MRNA's catalyst (the individualized mRNA cancer vaccine intismeran autogene + Keytruda hitting the primary endpoint in the phase-3 adjuvant melanoma trial) occurred on 8/19, outside the "prior close → this morning" scan window — but it was still one of the most important pricing events in the entire market that day, and 8/21 was day 3 of its pricing. Outside the window ≠ not worth covering; the scan logic needs a second dimension for "carry-over themes still developing".

Second, the copper downgrade was this report's most expensive judgment, and it went wrong by "using the wrong transmission variable". The falsifiable test set pre-market was "can FCX close the regular session above $72.275" — the close was 76.66, 6.07% above that benchmark, the intraday 77.33 was a new 52-week high, and volume of 29.58 million shares was about 2.4× the 20-day average (12.31 million shares). That is a volume-confirmed regular-session breakout, and the test was cleanly falsified. The same goes for BHP: pre-market explicitly refused to give credit to its thin-volume "breakout", and it went on to make an intraday 52-week high of 97.27 and close at 97.03. For exactly where the error lies, see the quantitative breakdown in §3①.

Third, the "vs pre-market price" column proved again today that it cannot be omitted. The 100% hit rate on the closing convention is an illusion: 3 of the 6 recommendations (IBIT / GDX / CRCL) produced all of their gains before the open, with net regular-session moves of +0.02% / +0.18% / 0.00% respectively. Whether the pre-market list makes money depends on the stretch after the open, not the stretch before it was written.


3. Theme verification

Theme Pre-market strength/call Actual today Leaders/laggards Stage Verdict
Copper/industrial metals #4, B+, "avoid" list +5.18% (COPX) ERO +9.44, SCCO +8.69, FCX +7.64, HBM +6.79 Day 1 of breakout confirmation ❌ Wrong pre-market call (the most expensive one)
Crypto · quality end #1, A+ +13.70% (HOOD) HOOD, COIN +8.20, IBIT +6.02, FUTU +9.68 Day 3 of the rebound ✅ Right call
Crypto · miner end "clearly lagging pre-market" −4.92% to −8.79% HUT −8.79, CIFR −8.40 Fading ✅ Direction right, reason wrong (see ④)
Precious-metal miners #3, A− +2.98% (GDX) HMY +6.90, AU +5.94, KGC +4.23 Day 3 of the rebound ⚠️ Gains entirely in the gap, +0.18% during the U.S. session
Silver watch only AG −0.47%, SIL −0.68% (open→close) AG worst on the whole list Divergence ✅ Right call (silver +1.39% while silver equities fell)
Off-price retail #2, A (ROST only) ROST +4.39%, peers did not follow TJX −0.11%, BURL −2.02% Delivered in a single day ✅ Right call ("company alpha, not sector beta" played out exactly)
Semiconductors #5, B+, "pure sentiment tag-along" SMH −0.40%, NVDA −0.98%, INTC −2.24% AVGO +1.21 bucked the trend Fading ✅ Right call
Security screening/defense negative catalyst A+ OSIS −5.21% (reversed after −14.5% intraday) ITA −0.09%, no spillover Digested in a single day ✅ Direction right, and the "no sector spillover" call was right too
🆕 Pharma/mRNA not covered MRNA +8.86%, MRK +2.39%, XLV +1.29%, XBI +1.44% MRNA, MRK Day 3 of pricing ❌ Zero pre-market coverage
🆕 Autonomous driving/robotaxi not covered TSLA +5.14% (open→close +3.71%) TSLA Day 1 of the catalyst ❌ Zero pre-market coverage
🆕 AI infrastructure (power/compute) not covered as a standalone theme XLU −2.28% (worst in the market), HUT/CIFR down hard XLU, HUT, CIFR, INTC Fading ❌ Not identified pre-market as a standalone theme

① ⚠️ Copper: the pre-market facts were right, the conclusion was wrong — the error was in the transmission variable

This is the one thing most worth writing out clearly today. The core evidence in the pre-market list still holds as of the close:

  • "Copper has not made an all-time high" — still true. Copper @HG.1 closed at 6.5785, still below the cited COMEX record of $6.87 (8/6).
  • "FCX's pre-market breakout rests on 220,000 shares (1.7% of average daily volume) and cannot be trusted" — the methodology is still true; a thin-volume pre-market quote should never be used to confirm a breakout.

But the conclusion drawn from those two true premises — "avoid the copper sector" — was thoroughly wrong on the day. The reason: today the copper miners were not being driven by the copper price at all.

An assumption-free falsification — put the same-day elasticity of the metal and the equity side by side:

Commodity Metal, today% Corresponding stock/ETF, today% Stock/metal multiple
Gold +1.98% GDX +2.98% 1.5× (normal miner beta)
Silver +1.39% SIL +2.14% 1.5× (normal miner beta)
Copper +1.69% COPX +5.18% / SCCO +8.69% / ERO +9.44% 3.1× to 5.6×

Gold and silver miners tracked their metals today at strictly the conventional 1.5× elasticity; only the copper miners ran at 3× to 5.6×. Worse, copper actually fell during the U.S. session (6.611 at 08:06 → 6.5785 at the close, −0.49%), while most of the copper miners' gains were produced during the regular session (SCCO open→close +4.43%, ERO +4.73%, HBM +4.19%, FCX +2.95%).

Conclusion: the 2× to 4× that exceeds normal beta cannot have come from the copper price — it came from a wholesale re-rating of cyclicals on the growth surprise. The corroboration is synchronous: XME (metals & mining) +4.05%, XLB (materials) +2.14%, Russell 2000 +0.85%, Dow +0.98% — the entire cyclical/value complex was repriced together.

So the pre-market methodological error can be pinpointed exactly: it anchored the valuation of "copper miners" to the "copper price → miner gross margin per tonne" transmission chain, and vetoed the equity side because the commodity side was unconfirmed. Today that chain was secondary; the dominant one was "macro growth surprise → duration re-rating of cyclicals". When a sector can be driven by two different chains, testing only one of them and issuing a veto on that basis is a systematic missed-call pattern — the same class of error as "equipment revenue is supply-side, not demand-side": the variable was given the right name and the wrong direction.

⚠️ But it must be said at the same time that the pre-market fundamental warning on FCX was not falsified — it simply was not priced today: the Gresik/PT Smelting shutdown severing the Indonesian sales channel (22% of its copper, nearly 100% of its gold), Q3 guidance set two days before the accident and not updated since, H1 copper sales volume −27.6%, true unit cash cost +110% — these are facts recorded in the primary 10-Q, and not one of them was overturned by news today. What happened today is that the market temporarily is not trading them. "The fundamental risk is real" and "should you avoid it today" are two different questions, and pre-market merged them.

② Crypto quality end: right call, and the finest one in the report

The first verification point set pre-market was "can the quality end (HOOD/COIN/CRCL) sustain its lead over the miner end (RIOT/CLSK/WULF)", with the prediction "if sustained → yesterday's open-high-close-low will not simply repeat".

Result: sustained, and sustained to an extreme. HOOD opened 101.10 → closed 108.13, open→close +6.95%, the exact opposite shape of the prior day (open 100.85 → close 95.10, open→close −5.70%); the "same pattern for a second time" specifically flagged pre-market did not happen. Volume was 50.02 million shares, nearly 2× the prior day's 25.14 million.

⚠️ But pre-market characterized HOOD as "no news of its own, crypto sector beta", and that underestimates it. HOOD +13.70% is well above any crypto-beta yardstick: BTC +6.63%, IBIT +6.02%, COIN +8.20%. Recent company-level catalysts include opening crypto trading in 50+ tokens to UK customers via Bitstamp UK on 8/10, and the pricing of the Robinhood Ventures Fund II IPO on 8/13, plus Goldman Sachs raising its price target from $118 to $123. Booking the entire 13.7% as sector beta underestimates the fact that it is simultaneously being re-rated on an independent tokenization/private-markets narrative.

③ ⚠️ One misclassified stock: FUTU +9.68%

Section 7 of the pre-market list grouped FUTU alongside GLXY and BULL, under "crypto · high beta · diverging fundamentals · watch only". Actual today: FUTU +9.68% (open→close +7.35%), while same-tier GLXY was +0.72% and BULL −0.79% — a 10-percentage-point spread inside a single tier.

The reason is that FUTU had a hard catalyst and the other two did not: Futu reported Q2 results on 8/20, with adjusted EPS of $3.33 (expected $2.98) and revenue of $852.66M (expected $786.07M), total trading volume +78.8% year over year and +54.6% quarter over quarter to a record HKD 6.42 trillion, and funded accounts +33.6% year over year to 3.84 million. It rose +3.03% on 8/20, and 8/21 was the day-2 continuation after earnings.

Methodological lesson: "names under the same theme cannot be treated as one tier; anything with a primary-source earnings catalyst must be broken out." That earnings report landed on 8/20, strictly speaking at the edge of the pre-market list's coverage window — but once FUTU was in the list, its characterization should have been based on its own catalyst rather than inheriting the sector label.

④ ⚠️ "The miner end is lagging" was the right call, but the reason given pre-market has already stopped working

This is the most valuable correction in this report for the next session.

The pre-market reading was: "the miner end lagging → shows the character of the flows has shifted from short covering to active allocation → crypto's internal structure is healthy". That reading predicts "miners lag", but what happened today was "miners fell hard": BTC +6.63% while HUT −8.79% and CIFR −8.40% — opposite directions, with a spread of more than 15 percentage points. For miner equities with high beta to BTC, that is a magnitude "lagging" cannot explain.

The real reason is that these companies are no longer crypto names:

  • HUT is now the largest "ex-miner" by contracted AI data-center scale, with 949MW of AI compute under contract and an aggregate base-term contract value of about $26.6 billion; it traded as low as −11% intraday, to $78.54.
  • On the same day, rate sensitivity + a crowded AI compute trade pressed simultaneously: XLU −2.28% (worst in the market), INTC −2.24%, NVDA −0.98%, SMH −0.40%. The market described it as profit-taking and rotation out of high-beta AI infrastructure names, rather than a reassessment of their demand (HUT is still +93% year to date).

So the correct causality is: today the miner end tracked the AI infrastructure complex, not bitcoin. The pre-market "quality end vs miner end" indicator gave the correct trading signal today, but what it is measuring is no longer the character of crypto flows — it inadvertently measured the "AI infrastructure vs cyclical value" rotation.

⚠️ This indicator must therefore be retired or redefined starting next week. Continuing to use "is the miner end lagging" to infer "are crypto flows active allocation or short covering" will produce a completely wrong reading at the next AI-infrastructure rebound. For the replacement indicator, see §6③.

⑤ The surprise theme missed pre-market: pharma/mRNA

This was the largest single-stock event of the day, and pre-market coverage was zero. The full price path (exchange daily bars, not secondary retellings):

Date Open High Low Close Change% Volume
8/18 63.04 64.46 62.13 62.96 −2.33% 4.30 million shares
8/19 116.02 176.66 114.46 174.38 +176.97% 199 million shares
8/20 150.14 155.00 128.61 133.32 −23.55% 99.20 million shares
8/21 133.11 159.47 132.42 145.13 +8.86% 87.02 million shares
  • Catalyst: Moderna and Merck's individualized mRNA cancer vaccine intismeran autogene + Keytruda (pembrolizumab) met the primary endpoint and key secondary endpoints in a phase-3 adjuvant melanoma trial, the first positive phase-3 readout for an mRNA oncology therapy. Bank of America raised its MRNA price target from $40 to $170.
  • MRK benefited in parallel: +12.60% on 8/19, and +2.39% to close at 152.55 on 8/21, with the intraday 154.49 being its 52-week high.
  • ⚠️ But note the volatility structure: on 8/21 the intraday high of 159.47 (+19.6%) → close of 145.13 (+8.86%), meaning 9 percentage points were given back intraday; and 8/20 was −23.55% in a single day. This is a name that has gone +177% / −23.6% / +8.9% within three days, with extreme two-way volatility, and it should not be handled at a conventional position size. Also, the analyst consensus rating on both companies remains at Hold.

4. After-hours earnings moves

⚠️ There were no significant earnings after the close today (Friday); this section has nothing to report and is not being filled in.

The measured after-hours movers list for 16:57–17:07 ET shows that the top gainers and losers are all micro caps (gainers: PMI +41.12%/$4.53, PLAG +31.03%/$0.90, CAN +12.06%/$0.40; losers: ATEN −24.68%/$19.67, AMCI −18.46%/$5.30, GDTC −17.30%/$0.85), none of which carry index or sector influence. Index ETFs were essentially flat after hours (SPY −0.06%, QQQ −0.07%).

Among all the names covered in this report, the largest after-hours moves were HBM +1.13%, ETHA +0.88%, WULF +0.77% and MSTR +0.65%, all within the noise band and not catalysts for the next session.

No earnings after the Friday close is the norm (companies rarely report ahead of a weekend); the real catalysts for the next session (next Monday) come from this week's still-undigested carry-over events and next week's calendar, not from tonight. See §6.

By way of comparison, the two earnings reports from yesterday's (8/20) after-hours session have now been fully priced: ROST +4.39% (pre-market +7.30% → gave back to +4.39% at the close), OSIS −5.21% (pre-market −9.39% → −14.5% intraday → −5.21% at the close). The actual closing change in both was materially smaller than the pre-market gap, while the direction was right in both — further confirmation that "the size of a pre-market gap cannot be taken directly as the expected return for the day".


5. Flows and sentiment

① Sector rotation: one table showing where today's money came from and went

Sector ETF Close% Open→Close% Character
XLB Materials +2.14% +0.89% Leader
XLV Health Care +1.29% +1.58% Leader, and kept strengthening intraday
XLY Consumer Discretionary +1.15% +0.49% Strong
XLF Financials +0.93% +0.28% Strong
XLP Consumer Staples +0.79% +0.46% Neutral to strong
XLC Communication +0.65% +0.34% Neutral
XLI Industrials +0.27% −0.39% Neutral (weakened intraday)
XLK Technology +0.11% −0.60% Weak, net give-back intraday
XLRE Real Estate 0.00% −0.27% Weak
XLE Energy −0.17% −0.42% Weak (Brent +0.18% did not transmit)
XLU Utilities −2.28% −2.57% Worst in the market

Industry/theme ETFs:

ETF Close% Notes
COPX Copper Miners +5.18% Strongest theme in the market
XME Metals & Mining +4.05% Cross-sectional confirmation of the cyclical re-rating
ARKK Innovation Growth +3.53% High-beta growth warming up (open→close +2.34%)
SIL Silver Miners +2.14% But open→close −0.68%, weakened intraday
GLD Gold +1.95% Open→close +0.67%
SLV Silver +1.72% Open→close −0.29%
XBI Biotech +1.44% Consistent with the MRNA theme
IGV Software +1.43% Against SMH −0.40%, software beat hardware by 1.83pp
KRE Regional Banks +0.20% Mild
USO Crude Oil +0.07% Flat
ITA Defense −0.09% No spillover from OSIS
TLT Long Treasuries −0.35% Consistent with rising yields
SMH Semiconductors −0.40% Open→close −1.58%

② ⚠️ One falsification that must be spelled out: software beating hardware cannot be attributed to rates today

IGV +1.43% vs SMH −0.40% — software beat hardware by 1.83 percentage points. The usual explanation is "falling yields → long-duration growth benefits". That explanation fails on the spot today — yields rose (10-year +3.8bp, 2-year +5.5bp).

In a rising-yield environment, longer-duration software actually outperformed shorter-duration semiconductor equipment/chips, which says this was not a rates trade but an independent fade in the AI hardware complex: NVDA −0.98%, INTC −2.24%, SMH −0.40%, compounded by XLU −2.28% and HUT −8.79% on the compute/power side. What money is cutting is one specific thing — "physical AI infrastructure" — not duration.

③ VIX and Treasuries

VIX 15.13 (−5.50%), already below the pre-market 15.50 and the low of the week. The pre-market note that "VIX is already back at the lows, leaving limited room for further risk-appetite repair" holds directionally (VIX indeed did not collapse), but it did not prevent double-digit single-stock moves at the sector levellow index volatility ≠ low single-stock volatility; today's best and worst names in the market were more than 22 percentage points apart.

The entire Treasury curve rose and bear-flattened, consistent with a strong PMI and the September FOMC being priced as "hold vs hike". The pre-market point that "the leg where Treasury buybacks suppress yields has essentially stopped working" was further confirmed today: the 30-year kept climbing from 5.237% to 5.277%, now above the level that prevailed before the 8/19 buyback announcement.

④ Risk-on / risk-off characterization

Character: risk-on, but "cyclical-value risk-on".

  • Supporting risk-on: VIX −5.50%, all four major indices green, Russell 2000 +0.85% beating the S&P, ARKK +3.53%, crypto +6.63%, XLF +0.93%.
  • Not supporting "growth risk-on": XLK only +0.11% with open→close −0.60%, SMH −0.40%, NVDA/AAPL/AMZN all closing lower, and among the Magnificent Seven only GOOGL (+1.22%), TSLA (+5.14%), META (+0.75%) and MSFT (+0.43%) rose.
  • Clear divergence within defensives: XLV +1.29% (with its own MRNA/MRK catalyst) versus XLU −2.28% and XLRE 0.00% — this is not "defensives being abandoned wholesale", it is rate-sensitive defensives being abandoned while event-driven pharma is chased.

⑤ Week in review (8/14 close → 8/21 close): the indices fell, but internally it was a violent rotation

Name Week% Name Week%
COIN +25.61% SPY −1.37%
SCCO +17.00% IWM −1.68%
FCX +15.30% QQQ −2.41%
GDX +14.29% XLU −3.48%
HOOD +13.15% SMH −4.66%
MRK +12.30% MU −0.50%
COPX +10.37% DIA −0.85%

The character of the week: the broad indices fell across the board (Nasdaq −2.41%), yet copper, crypto, precious metals and pharma posted gains of 10%–25%, while semiconductors and utilities recorded declines of −3.5% to −4.7%. This was a sector-rotation week of rare magnitude, not a down week. Describing this week by index change would miss entirely what is actually happening.


6. Outlook for the next session

⚠️ Today is Friday. "Next session" below means Monday 2026-08-24 and after, and every calendar entry carries a date prefix. The carry-over catalysts in this section have already been developing for 3 days, and by Monday's open they will no longer be new news.

① Theme continuation

Theme Current stage Continuation call Falsifiable verification point
Copper/industrial metals Day 1 of breakout confirmation Medium-high — but dependent on the growth narrative, not the copper price 8/24: can copper @HG.1 climb above and hold 6.60; can FCX hold 76.66 (i.e. is the 8/21 breakout not engulfed in a single day)
Pharma/mRNA Day 3 of pricing, extreme volatility Medium — needs a substantive analyst upgrade 8/24: can MRNA hold 145.13; does a substantive Hold→Buy rating change appear (consensus is still Hold)
Crypto · quality end Day 3 of the rebound Medium — the catalysts have all turned into old news 8/24: can BTC hold 77,000; can HOOD sustain volume above 30 million shares
AI infrastructure (semis/power/compute) Day 1 of the fade ⚠️ Next Wednesday's NVDA earnings is the only event that can end the fade 8/24–8/25: can XLU stop falling; can SMH recover the −1.58% intraday loss of 8/21
Precious metals Day 3 of the rebound, already weakening intraday Low-ish — 100% of the 8/21 gain came from the gap 8/24: can GDX's "open→close" turn positive (only +0.18% on 8/21, and SIL was already −0.68%)
Off-price retail Payoff complete in a single day Low — no follow-on catalyst ROST is fully digested; next week watch whether the 8/27 DG earnings validate the "consumer trade-down" chain

② Next week's earnings and macro calendar

⚠️ Next week is the busiest of the quarter, with the two biggest events landing on the same day.

Date (ET) Event Importance Notes
8/26 (Wed) after close NVDA (Nvidia) Q2 FY27 earnings S The master switch for the AI compute narrative. With AI infrastructure having only just begun fading on 8/21, the guidance in this report will decide whether SMH/XLU/compute names keep fading or reverse in a V
8/26 (Wed) July PCE price index (BEA) S The BEA website confirms "Next release: August 26, 2026". After a 56.8 services PMI, PCE is the key test of "does strong growth bring inflation stickiness"
8/27–8/29 Jackson Hole global central bank symposium A+
8/28 (Fri) around 10:00 Chair Warsh's first Jackson Hole speech in office A+ Topic: "the impact of financial innovation on payments and policy"
During next week Durable goods orders, consumer confidence, trade balance, pending home sales B
During next week CRM, CRWD, BBY, DG earnings B+ CRM/CRWD test whether IGV software strength can continue; BBY/DG test the consumer

⚠️ Structural note: on 8/26, NVDA earnings (after the close) and PCE (before the open) stack up, making it the only "macro + micro on the same day" high-risk day next week. Every cyclical/hard-asset position established on 8/21 needs to consider whether it can survive 8/26–8/28. This is consistent with point 13 in §8 of the pre-market list, and is reinforced further by PCE falling on the same day.

③ Focus list (ticker + verification point)

Ticker Direction Reason to watch Verification point (falsifiable)
FCX Long (downgrade watch → needs reassessment) A volume-confirmed breakout completed on 8/21: close 76.66, intraday 52-week high of 77.33, volume 2.4× the 20-day average. The pre-market bearish test has been falsified ⚠️ But the fundamental risk has not been overturned: can it hold 76.66; and does news appear that "PTFI has applied for a concentrate export licence" — that would be confirmation the stockpiles are tight, not good news
SCCO Long Pure copper exposure without Gresik risk; +8.69% on 8/21 with open→close +4.43%, only −1.39% from the 52-week high of 219.04 Can it break 219.04. If SCCO breaks out and FCX does not, the market is buying "copper" rather than "the FCX company option"
HOOD Long (but lower position-size expectations) Strongest in the market, open→close +6.95%, volume doubled Can volume stay above 30 million shares; after +13.7%, does the pullback exceed half of the 8/21 gain
XLU Short / avoid watch Worst in the market at −2.28%, open→close −2.57%, −3.48% on the week Can it stop falling. If it keeps falling into NVDA earnings, the AI power narrative is being systematically repriced rather than seeing short-term profit-taking
MRNA Watch only, participation not advised +177% / −23.6% / +8.9% within three days, gave back 9pp intraday on 8/21 Can the consensus rating be substantively upgraded from Hold; can it hold 145.13
SMH / NVDA Watch Fading on 8/21, but earnings on 8/26 Does the bleeding continue into earnings; does the 1.83pp IGV−SMH spread converge or widen

④ What to avoid

  • ⚠️ Chasing any name whose 8/21 gain came "entirely from the gap": IBIT (open→close +0.02%), GDX (+0.18%), CRCL (0.00%, gave back all of an intraday +11.1%), HMY (+0.26%), MSTR (−0.37%). These five look attractive with closing gains of +2.98% to +6.10%, but they made not one cent during the U.S. session. If they gap again on Monday, the size of the gap cannot be taken as the expected return.
  • Silver and silver miners (AG/SIL): silver +1.39% while AG −0.47% (open→close −3.70%) and SIL open→close −0.68%the divergence of the metal rising while the equities fall has already appeared, and it typically precedes a sector top.
  • High-beta AI infrastructure (HUT/CIFR/WULF/RIOT/CLSK): all −4.92% to −8.79% on 8/21, and that was against a backdrop of BTC +6.63%. Before NVDA gives guidance on 8/26, do not catch this falling knife on the logic that "BTC rose so they should catch up" — that logic already stopped working today.
  • Using "miner end vs quality end" as an indicator of the character of crypto flows: see §3④; the indicator has been contaminated by AI infrastructure beta and should be suspended.
  • Shorting OSIS: the direction was right, but the reversal on 8/21 — open→close +5.47% after breaking the 52-week low intraday — shows the floor from the $1.9 billion backlog is real, and the risk/reward for shorts at this level is poor.

⑤ Input notes for Monday's pre-market list

  1. ⚠️ The scan window must add a dimension for "pricing progress on carry-over themes". The direct cause of missing MRNA/MRK today is that the catalyst occurred on 8/19, outside the "prior close → this morning" window. Suggestion: beyond incremental news, always check the top 20 names by abnormal change or abnormal volume over the past 5 trading days, and any that remain in the abnormal range must go into the list even with no new news, labelled with which day of pricing they are on.
  2. ⚠️ The "vs pre-market price" column must be retained, and the pre-market list side must state in parallel "the cost basis for this call is the pre-market price of $X". Today the hit rate was 100% on the closing convention and 50% on the pre-market-price convention; that gap will systematically mislead readers.
  3. ⚠️ When a sector can be driven by two transmission chains, you cannot veto it after testing only one. The lesson from copper today: the "commodity price" chain was tested (unconfirmed), but the "macro growth → cyclical re-rating" chain was not (strongly confirmed). Suggestion: add a column to the theme scoring table for "which transmission chain is dominant for this theme today".
  4. Keep the veto reason "no catalyst of its own, pure sentiment tag-along". Of the 14 "watch only" names today, all 3 correct calls (MU/AG/SMH) came from this reason, the only consistently effective screening logic in the whole report.
  5. Within one theme, any name with a primary-source earnings catalyst must be broken out into its own tier. FUTU (+9.68%) was treated in the same tier as GLXY (+0.72%) and BULL (−0.79%), which flattened away a 10pp difference.
  6. To re-confirm before Monday's open: whether copper @HG.1 holds above 6.55 overnight; whether BTC holds 77,000; whether the 10-year Treasury keeps rising through 4.75%; and the consensus estimates for NVDA's 8/26 earnings (not obtained in this report; Monday's list must fill this in).

⚠️ Risk disclaimer: this recap is post-close information review and observation only and does not constitute investment advice. Data may differ in timeliness or definition; company disclosures and SEC filings prevail, and this cannot be used directly as a basis for trading.