Three of five forecasts played out, one stalled at flat and one pointed the wrong way — a session that resolved broadly as the morning read framed it, in miniature and with one instructive miss.
All five forecasts survived their own invalidation conditions — nothing that would have retired them happened. Three played out; two resolved only partially, both because the instrument named moved less than the idea behind it. Sizes ran between zero and a quarter of a daily range, which is what a low-conviction tape ahead of a jobs report produces.
| Forecast | Outcome | Δ-ATR | Evidence |
|---|---|---|---|
| Failed breakout with narrow participation S SPY | FIRE | +0.13 | The index probed above the 771.33 record shelf intraday but closed at 768.56, below it, and reached the first downside objective. Participation stayed narrow at 42.8%, so neither of the conditions that would have invalidated the call came close. |
| Sector rotation top — technology S XLK | FIRE | +0.11 | Technology closed red and behind the index. The mechanism only half-delivered, though: the sector finished mid-pack rather than as the standout laggard, and the real damage was in the memory names it flagged, which were sold hard on good results. |
| Safe-haven continuation — gold L GLD | MIXED | 0.00 | The 384 shelf held comfortably and the mining complex closed green, but the gold fund itself finished within a hundredth of a percent of where it started. A continuation forecast that produces no continuation has not been confirmed, whatever the sign says. |
| Defensive leadership — healthcare L XLV | FIRE | +0.10 | Healthcare closed green and third-best of the eleven sectors on a day when eight of them fell, beating the index by 34 basis points and the average stock by 70. The risk-on breadth swing that would have invalidated the call never appeared. |
| Consumer earnings winners — discretionary L XLY | MIXED | −0.26 | The reasoning held and the vehicle did not. All three earnings winners the call rested on closed higher, yet the cap-weighted consumer fund fell 0.455% because its largest constituents are not those companies. Right idea, wrong expression. |
Still open: two forecasts from the weekly read remain live into Friday's close and are scored only when that window shuts. Both hinge on conditions already visible in the tape — a strait-reopening agreement that is claimed but unsigned, and a memory complex being sold on good numbers.
The read vs the tape. The morning read described a rotation under a record rather than a risk-off turn, and that is how the session traded: the index eased, participation stayed thin, and money leaving technology went into energy and healthcare rather than out of the market. Where the tape diverged was the breadth of the damage. Technology was framed as the weak link, but industrials, real estate and basic materials all closed worse, and technology beat the average stock. The give-back was broader and shallower than the read implied — a market waiting on payrolls, not rejecting a sector.
The record is now meaningfully better than a coin flip and honest about how confident it is — but today's two partial results are a reminder that most of the remaining error is about picking the wrong vehicle, not reading the wrong direction.
Rolling accuracy slipped from 74% to 70% and the Brier score ticked up from 0.221 to 0.225, which is what a 3-of-5 session does to a fifty-forecast window. The longer arc still runs the right way: the same measure was 0.49 in late May. Across the full 219-forecast record the hit rate is 57.1% at a Brier of 0.240.
Brier rewards well-calibrated confidence, not accuracy alone — a low score on a losing pattern means its low confidence was honest.
| Pattern | Dir | n | Hit rate | Mean prob | Mean Brier | Evidence class |
|---|---|---|---|---|---|---|
| Asset forecast | L | 54 | 74% | 0.55 | 0.227 | developing sample |
| Asset forecast | S | 49 | 67% | 0.55 | 0.228 | developing sample |
| Level Rejection at top | S | 35 | 43% | 0.40 | 0.271 | developing sample |
| Momentum Scalp | L | 33 | 46% | 0.52 | 0.248 | developing sample |
| Sentiment Extreme + Breadth Divergence | L | 6 | 0% | 0.37 | 0.138 | primary source |
| Sector Rotation Bottom | L | 8 | 62% | 0.43 | 0.299 | developing sample |
| Sector Rotation Top | S | 7 | 71% | 0.48 | 0.299 | developing sample |
| Level Rejection at bottom | L | 5 | 60% | 0.47 | 0.214 | developing sample |
Two things stand out. Asset forecasts — the per-sector and per-commodity leans that make up most of the record — carry a real edge in both directions on a sample large enough to believe. Level rejections at the top do not: 43% across 35 attempts is worse than chance, and the sentiment-and-breadth-divergence family is 0 for 9. Its low Brier score is the measure working correctly — that family has been called with low confidence, so being wrong has cost the record little.
| Instrument | Symbol | Direction | Target | Reference | Close | Realized | Result |
|---|---|---|---|---|---|---|---|
| S&P 500 index | SPX | up | +0.5% | 7,369.00 | 7,537.43 | +2.29% | HIT |
| Bitcoin | BTC | up | +4.0% | 60,365.00 | 63,086.45 | +4.51% | HIT |
| S&P 500 futures | SPX | down | −1.5% | 7,385.25 | 7,537.43 | +2.06% | MISS |
| Nasdaq 100 futures | NDX | down | −2.5% | 29,346.75 | 29,697.87 | +1.20% | MISS |
| Nasdaq 100 futures | NDX | short | −3.0% | 29,200.00 | 29,697.87 | +1.71% | MISS |
| Gold, spot | GOLD | up | +2.0% | 4,046.00 | 4,104.10 | +1.44% | MISS |
The misses are consistent: four of the six resolved rows were bearish index or metal calls made into a market that kept rising. The gold row is instructive — right about direction, short of its 2% bar. Five further predictions remain on the watch list without a usable price series and score neither way.
Money did not leave the market today — it moved from the crowded corner to the quiet ones, and the further down the size scale you looked, the worse the day got.
The headline indexes barely moved — the S&P tracker gave back 0.16%, the Nasdaq tracker 0.37%. Underneath, the ordering was revealing: small caps fell 0.51%, the equal-weight S&P fell 0.52%, the Dow tracker 0.85%. When the average stock does worse than the biggest ones, the index is being held up by a handful of names rather than carried by the market. Only 42.8% of liquid names closed above where they opened, a second straight session under half, and advancing volume roughly matched declining volume — a market drifting, not one being sold.
| Instrument | Close | Day | What it said |
|---|---|---|---|
| S&P 500 tracker | 768.56 | −0.16% | Probed the 771.33 record shelf and closed back below it — a second failure at the same level. |
| Nasdaq 100 tracker | 714.65 | −0.37% | Closed below its 50-day average of 715.01, giving back the reclaim it made on Tuesday. |
| Small-cap tracker | 298.25 | −0.51% | The size premium ran the wrong way — smaller companies were sold harder. |
| Equal-weight S&P | 218.58 | −0.52% | The average stock lagged the index by 36 basis points — the narrowing continued. |
Cross-asset markets sent a mixed but not alarming message. Oil jumped 3.5% — the day's biggest move anywhere — on a claimed but unsigned agreement to reopen the Strait of Hormuz, which is the market saying it does not yet believe the de-escalation. The dollar firmed slightly, long-dated Treasuries eased 0.58% as yields rose, and gold went nowhere. Most importantly, credit did not flinch: high-yield bond funds closed within a tenth of a percent of unchanged. Credit calm alongside a soft equity tape is the signature of rotation, not the start of a risk event.
| Market | Close | Day | Confirmed or diverged |
|---|---|---|---|
| Oil (USO) | 118.87 | +3.47% | Diverged — rose on a de-escalation headline, so the deal is being discounted. |
| Dollar (UUP) | 28.19 | +0.36% | Confirmed the mild risk-off tilt. |
| Gold (GLD) | 389.67 | +0.01% | Neither — stalled ahead of tomorrow's jobs print. |
| Long Treasuries (TLT) | 82.52 | −0.58% | Diverged — no safety bid in bonds despite softer equities. |
| High-yield credit (HYG) | 79.46 | −0.08% | Confirmed calm — credit shows no stress. |
Three of eleven sectors closed green. Energy led on the oil move, communication services and healthcare held on, and the losses spread evenly across industrials, real estate and basic materials rather than concentrating anywhere. Technology's 0.31% decline was unremarkable in context — it beat the average stock. The realized character of the session was a broad, shallow give-back with a defensive tilt, not the sector unwind the morning framing leaned toward.
The single most informative event of the session was a company that beat expectations, raised its outlook, and fell 13% anyway.
Western Digital reported earnings of $3.56 per share against $3.29 expected, on sales up 44% from a year earlier, and guided next-quarter revenue growth to a 42–49% range above what analysts had modelled. The stock closed down 13.0%, and its memory peer fell 6.8% in sympathy. When a beat-and-raise of that size is sold that hard, the market is no longer arguing about whether artificial-intelligence demand is real — it is arguing about what that demand is worth. That is a slower kind of pressure than a demand scare, and it is why three sessions of technology weakness have not spilled into credit.
The consumer contrast was sharp. Disney closed up 2.9% after reaffirming double-digit earnings growth and a $9 billion buyback plan on a fiscal third quarter that beat, with theme-park attendance up 4%. Shopify added 2.2%, following through on the previous session's 17% jump. The market is still willing to pay for earnings it can price with confidence — and unwilling where the multiple is the whole argument.
| Company | Day | Why it mattered |
|---|---|---|
| Western Digital (WDC) | −13.00% | Beat and raised guidance above consensus, and was sold anyway — the clearest evidence yet that artificial-intelligence hardware is being re-rated on valuation, not results. |
| SanDisk (SNDK) | −6.80% | Fell in sympathy — the de-rating is being applied to the group, not to one company's numbers. |
| Walt Disney (DIS) | +2.87% | Beat, reaffirmed double-digit growth and a $9 billion buyback plan, attendance up 4% — the market still pays for visible earnings. |
| Shopify (SHOP) | +2.22% | Followed through on the prior session's beat-and-raise — the consumer reaction had staying power. |
| Eli Lilly (LLY) | +1.89% | Carried the defensive bid that put healthcare among the day's three green sectors. |
| Advanced Micro Devices (AMD) | +1.50% | The one large artificial-intelligence name that held — why the weakness read as rotation within the theme, not exit from it. |
Everything defers to 8:30 in the morning — the July employment report is the scheduled event that resolves the rate argument this tape has been unable to settle for a week.
The setup into it is clean. The market has spent three sessions rotating rather than de-risking, credit has stayed calm, and gold has stalled in a pattern that only makes sense as waiting. A soft print pushes the rate-cut argument forward and would most likely reward the defensive and metal complexes that led today; a hot one reverses it. The failed-breakout read on the S&P is live either way, and the level decides it, not the number.
Still-open forecasts. Two calls from the weekly read remain open into Friday's close and are scored only when that window shuts. Both turn on conditions the tape has begun to price: a strait-reopening agreement that is claimed but unsigned — which oil disbelieved today by rising 3.5% — and a memory complex being sold on good numbers rather than bad.
Tomorrow's calendar. The July employment report lands at 8:30 ET, with consensus near 88,000 payrolls added and a 4.2% unemployment rate. It is the session's only scheduled macro release of consequence, and it arrives at a central bank that held in late July with three officials dissenting in favour of a hike — which is why a hot number carries the greater asymmetry.
The levels that matter at the next open.