Who Was That 479-Point Rally Actually For?

10 new highs, 93 new lows, and a 20-year that closed at 5.54% regardless

⚓ Weathervane. The wind is coming from the long end. The policy rate has been frozen for most of the year whilst the term premium does the tightening, and the price of long money is set by deficits, issuance supply and a synchronised global duration bid rather than by the committee. Higher-for-longer stopped being a Fed decision and became a bond-market fact. The cruise ship is holding this heading.

Ahoy there, Trader! ‍‍⚓️

It’s Phil…

If only 10 stocks on the NYSE made a new high whilst the 20-year closed at the month’s highest, who exactly was that rally for?

The tidy version of Friday is that the market went up. The Dow added 478.64 points, the S&P 500 closed 0.51% higher at 7,743.41, the VIX fell 5.11%, and even the advance/decline ratio turned positive at 1.185. Four measures agreed. The session is still best described by a number none of them contains.

Ten issues on the New York Stock Exchange finished at a 52-week high. Another 93 finished at a new low.

What produced the rally is less obvious than it looked on Friday. The durable goods release was mixed: the headline beat, core orders missed at 0.3% against 0.6%, capital goods orders excluding aircraft beat at 1.6%. The front of the curve rallied anyway, the 2-year falling 6 basis points to 4.81%. Crude also fell 2.3253%, and we cannot say which the front end was answering. The long end declined to follow: the 20-year rose to 5.54% and the 30-year to 5.49%, both September’s highest closes, and the curve twisted around a 10-year that barely moved.

The textbook is clean here, worth stating before the tape contradicts it. A front-end rally is a discount-rate improvement, and that is supposed to help the longest-duration, most rate-sensitive end of the equity market most. It is the mechanism by which good bond news broadens a rally. It broadened nothing. The Russell 2000 gained 0.0698%. Microsoft gained 3.663% and added 18.24 dollars of price to an index that weights by price rather than by size.

So consider what each end was paying for. Six basis points at the front is a smaller hiking tail. A basis point at the twenty is a larger term premium on an unchanged policy rate. Only the first is a discount-rate improvement; the second is the cost of long money rising whilst nobody at the committee moved. Equities took the cheap half and spent it on the nearest cashflows.

Nasdaq only half survives the same test: 41 new highs against 88 new lows, four times the count and still negative. Which raises an uncomfortable possibility: that a positive breadth ratio and a shrinking new-high count are not in tension at all. The ratio counts direction, the high-water mark counts conviction, and on Friday 1,458 issues rose whilst 10 of them made a new high.

Phil’s Musing

Four measures of Friday agreed with each other and a fifth made all four look silly. I have been treating breadth as solved here, on the grounds that we compute the advance/decline ratio every morning and mark it honestly. Friday says the ratio is the easy half. A market can have more risers than fallers and still hold ten companies at a new high, and the second number has not been getting its weight.

Happy trading,

Phil
Less Brain, More Gain
…and may your trades be smoother than a cashmere codpiece

P.S. – Phils Footnote The prior on core durable goods turns out to have been 0.7%, not the 0.4% this desk carried into the morning. Two of our own carried priors were wrong this week and no gate caught either, because a gate checks what reached the page and not what was assumed before it. Worse, the first draft of this letter called Friday’s release soft, which it was not: one component missed and two beat. The argument above survives the correction only because it never depended on the release, and I have left the correction visible rather than quietly restating the paragraph.

Navigator's chart desk showing a twisting yield curve beside two pin counters holding ten and ninety-three.

🗂 Desk Notes – Part 216 | 28 Sep 2026

Raw briefing. Observations, not trades.

Session read (§8.4)

SESSION BRIDGE: prior session (Fri) full reaction, S&P 500 cash opened 7,709.86, ranged 7,693.08 to 7,752.07 and closed +0.51% at 7,743.41, with December ES settling +0.4732% at 7,803.75 and extending to 7,807.25 in the post-close tail; live premarket ES -0.42% / NQ -0.92%, VIX -5.11% on Friday’s official close of 14.87; threshold: none.

Threshold reasoning, against the bands as written. Prior-session December ES +0.4732%, well inside the normal envelope and nowhere near the 1.0% investigate band. Premarket ES -0.4229% against Friday’s settlement, inside the 0.3% to 0.6% normal range. Volatility leg not tripped: VIX -5.11% against a ±8% trigger. Commodity leg not tripped: front-month November WTI -2.3253% against a ±4% trigger. No manual flag. The §10.6 carry-over note does not fire.

The §8.4.1 intraday leg proposed at Part 215 remains unruled and is not applied. Friday’s cash high-to-low range was 0.77% of the low, which would have fired the proposed 0.75% soft trigger on a session the existing bands read as silent. Second consecutive edition in which the proposal would have changed the call. The figure needs Phil’s ruling; the gap’s existence does not.

Close-to-open window. Friday cash close 16:00 ET to the 06:30 UTC capture is 58 hours 30 minutes, because the window spans the weekend. No US earnings landed inside it. The whole of the window’s news is the weekend: Iran’s seven-day roadmap at the General Assembly on Friday, Washington’s rejection of it on Saturday, and the President’s Sunday remark that he expects further talks this week regardless. December ES traded its overnight high of 7,807.25 in Friday’s post-cash tail, not in the Sunday session, and the capture bar is itself the session low. The market has ground steadily lower through Asia rather than gapped.

Contract roll (§2.5). No action. The quarterly roll was the third Friday, 18 September, and is complete: ES, NQ, YM and RTY all on December 2026. WTI front month is November, confirmed by volume at 325,231 lots against December’s 170,152. Brent remains the other way round: December out-traded November 514,153 to 272,549 on Friday, a margin of roughly 1.9 times. The WTI finding must not be carried across.

Mechanism read (§8)

What moved. A twist steepener with the pivot at the 10-year.

Tenor 24 Sep 25 Sep Change
2-year 4.87 4.81 -6bp
3-year 4.99 4.94 -5bp
5-year 5.03 4.98 -5bp
7-year 5.10 5.06 -4bp
10-year 5.18 5.17 -1bp
20-year 5.53 5.54 +1bp
30-year 5.47 5.49 +2bp

Spreads: 2s10s 31 to 36, steepening 5bp. 2s30s 60 to 68, steepening 8bp. 5s30s 44 to 51. The 20-year less the 30-year narrowed to +5bp from +6bp, positive for a twelfth consecutive session, back to 10 September.

Cross-asset. Dollar index 101.034, -0.21%, and the move was again yen-led and narrow: EUR/USD +0.09% at 1.13902 against USD/JPY -0.98% at 157.281. On a six-component rebuild using the published ICE weights the index reconstructs to 101.0339, which settles a disagreement with a second route in favour of the exchange figure. VIX 14.87, -5.11%. Gold December futures 4,321.20 +0.5398% against spot 4,284.76 +0.2292%, carry 36.44, inside the held 18.72 to 47.65 band. Silver December 64.801 +1.2484%; copper December -0.35%.

The cause, and it is NOT one number, which an earlier draft of this file got wrong. The durable goods release was mixed rather than soft: headline orders BEAT at 0.0% against -0.3%, core orders missed at 0.3% against 0.6%, and nondefense capital goods orders excluding aircraft BEAT at 1.6%, which is the release’s most market-relevant component. Revised University of Michigan sentiment also beat at 48.1 against 47.4, and one-year inflation expectations held unrevised at 4.6%. The front end’s 6 basis points cannot be attributed cleanly to this release, and a competing driver sits in plain view: front-month crude fell 2.3253% on the session, which eases the near-term inflation path the front end trades. This book holds no intraday yield series and cannot separate the two, so it does not pretend to.

What it implies. The market shaved the tail of the hiking path rather than doubting the path. The 3-month bill still sits at 4.24% against a target range of 3.75% to 4.00%, which prices more tightening, not less. Meanwhile the 20-year closed 5.54% and the 30-year 5.49%, both the highest closes of September, on real rates and term premium rather than on anything the committee said.

The one artery. The long end, and its refusal to accept a growth-flavoured reprieve that the front end took immediately.

Equity transmission, and this is the finding. The Dow rose 478.64 points, the S&P 500 0.51%, the Nasdaq Composite 0.4801% and the Russell 2000 0.0698%. That ordering is the opposite of a risk-on tape. NYSE advancers beat decliners 1,458 to 1,230, a ratio of 1.185 against a 33-session median of 0.811, and up volume beat down volume 1.323 to one on total volume of 1,063,586,420. But NYSE new highs were 10 against 93 new lows, and Nasdaq 41 against 88. On Nasdaq the issue ratio of 2,592 to 2,294 is hollow: the up/down volume ratio is 1.015, dead even. Microsoft at +3.663% on 1.75 times average volume added 18.24 dollars of price to an index that weights by price. An earlier draft of every file in this edition said it carried MOST of the Dow, and that is false: on any plausible divisor the contribution is of the order of a fifth, not a majority. The quantified claim was cut rather than re-estimated, because the divisor is not a figure this book holds.

Integrity check. Up volume plus down volume is 1,032,487,907 against a total of 1,063,586,420, leaving 31,098,513 of unchanged volume, 2.92% of the total. Positive and small, as required, though larger than the roughly 1% residual recorded at Part 214.

Overnight Excitement (§8.5)

Does not fire, and the margin is narrower than it has been. December ES -0.4229%, NQ -0.9235%, YM -0.3853%, RTY -0.5841% overnight to the 06:30 UTC capture. All four sit below the 1.0% trigger, and only one of the four, NQ at -0.9235%, is outside the 0.3% to 0.6% normal band; ES, YM and RTY are all inside it. NQ is the closest any contract has come to firing this week. The dispersion is the interesting feature: Nasdaq futures are falling more than twice as hard as the Dow, which is a tech-led drift rather than a broad move.

The reading taken, stated because this run was unattended. A scheduled European Central Bank speech and a Bank of Japan minutes release fall outside US hours today. Neither was treated as firing the section’s second limb. The precedent is Part 215, where a Swiss National Bank decision did not fire it either, and the alternative reading fires the section on most days and defeats the “silent otherwise” rule. If Phil wants scheduled G10 speeches to count, that is a spec change rather than a judgement call.

The live variable of the morning is crude, not equities. November WTI trades 94.26 on the 07:20 UTC bar, up 2.00% on Friday’s settlement, and Brent November 106.88, up 2.45%, after Washington refused Iran’s roadmap. Gold spot is 4,177.30, down 2.51%. Those are intraday marks on in-progress sessions and are stamped as such.

No non-US central bank rate decision lands today. Japan is open, demonstrated by a constituent pull returning a 28 September bar; China is open, demonstrated the same way, and the same series independently confirms Friday’s Mid-Autumn closure. Golden Week closes China from Thursday. No foreign index level is published: no tier-1 route to any non-US cash index exists on this stack.

Forward catalyst slate

Today, Monday 28 September. 13-week bill 95 billion and 26-week bill 82 billion, both auctioning around 11:30 ET. Strategy’s weekly filing is due; last Monday’s was accepted at 08:00 UTC, which is after this run’s checks. No US data of consequence.

Tuesday 29 September. CB consumer confidence, forecast 90.1 against 89.4 prior. JOLTS job openings, forecast 7.23 million against 7.27 million. 52-week bill 54 billion and 6-week bill 85 billion. Carnival and CarMax report.

Wednesday 30 September. Core PCE 08:30 ET, forecast 0.3% against 0.2% prior, with final GDP, personal income and spending. ADP employment, forecast 70 thousand against 38 thousand. Chicago PMI, forecast 51.3 against 47.1. Micron reports after the close.

Thursday 1 October. ISM manufacturing, forecast 55.0 against 54.6. Jobless claims, forecast 199 thousand against 197 thousand. Accenture and Nike report. Golden Week begins in China.

Friday 2 October. Non-farm payrolls, forecast 98 thousand against 162 thousand prior, with average hourly earnings at 0.3%.

What is NOT this week, and it is commonly misplaced: any coupon auction. The month’s coupon supply finished with the 7-year on 24 September. Only bills remain, and Wednesday’s 17-week and Thursday’s 4-week and 8-week are not yet posted because they are announced on Tuesday. That absence is announcement timing, not a missing event.

Claims about to be tested. The Part 207 window closed on Friday and is marked. The Part 208 window closes today on the CMT print at 15:30 ET. The Part 209 comparison is struck tomorrow. Part 210 and Part 211 both close on 2 October. Part 215 has nine sessions to run.

Divergence flags

  1. Two independent premarket reads disagree, and the difference is the bar window rather than the data. One pull returned December ES at 7,779.00 on a 30-minute bar covering the half hour to the capture; the §8.4 capture is the 06:30 UTC five-minute bar at 7,770.75, read twice sixteen and eighteen minutes after that bar closed, identical both times. The five-minute bar is the specified capture and is used throughout.
  2. 🔴 The ±0.25 index-point noise floor carried in the registry is too tight, measured this morning. An adjacent December ES five-minute bar, read thirteen minutes apart, moved 1.50 index points on the close and gained more than half its volume between reads. The capture bar itself, read at sixteen and eighteen minutes after its close, was identical on both reads, and that stability against a visibly unstable neighbour is what licensed locking it. A five-minute futures bar is not safe until roughly fifteen minutes after it closes. Operational consequence: the 07:30 UK capture cannot be executed at 07:30 UK. It must be taken around 07:50 and stamped with the bar window, which is what was done.
  3. 🟢 Treasury CMT returned the correct session on the first fetch, breaking a five-session stale-response streak. Two further fetches with different cache-busts reproduced it character for character. The triple-fetch protocol is kept; one clean run is not a fix.
  4. 🔴 The CMT CSV schema has changed and nothing was watching it. The header now carries a “1.5 Month” tenor, fourteen columns rather than thirteen. Any positional parser would have silently mislabelled every tenor from the 2-month outward. Registry updated; a standing header assertion is recommended.
  5. 🔴 A new and more dangerous Farside failure mode, and only arithmetic caught it. One read of the bitcoin table silently omitted an entire issuer column. The row that resulted contained no dashes and no blanks and looked complete, and was wrong by the missing issuer’s contribution: it summed to 314.5 against a stated 346.9. A second read, asked to enumerate every column header unprompted, restored the missing issuer at 32.4 and the row then summed exactly. Note the coincidence before it becomes a conflation: 32.4 is both the missing issuer’s contribution AND the figure originally published as the whole 23 September total, because on that first publication the single reporting issuer WAS the total. The two are the same dollars seen twice, and this book has now said so out loud. A dropped column is invisible to the dash-versus-zero test. Row-sum reconciliation against the stated total should become a standing check.
  6. 🟢 On the dash-versus-zero question the answer is clean this edition. Every non-contributing cell in both 25 September rows rendered as a printed zero on both reads, and both rows sum exactly to their stated totals. The 24 September bitcoin row is now complete and unchanged at 190.7, and the 24 September ether row, entirely absent last week, now exists at 66.1.
  7. 🔴 The table truncation has worsened. Both bitcoin reads and both ether reads now begin at 9 September rather than 8. No September-scale superlative is available on either series and none is published. Cumulative totals read 57,616 and 13,969 at whole-million display.
  8. 🔴 A carried ether figure in this book is wrong by two orders of magnitude. The Part 215 ledger recorded the 23 September ether row as revised to +2.5 million. Two independent reads this morning return 104.5 million for that date. The earlier figure came from a partially reported table and is superseded rather than reconciled; the revised figure is used.
  9. A wire relay disagrees with CMT on the same dates and it is not a discrepancy to reconcile. A market wrap carried the 30-year at 5.501% and the 10-year at 5.223% for 24 September against CMT’s 5.47% and 5.18%. These are market yields rather than the constant maturity series and the registry is explicit that they are different measurements. The wrap’s “highest since June 2004” and “highest since June 2007” claims are its own, the comparison windows were not retrieved, and neither superlative is restated anywhere in this edition.
  10. 🟢 The 24 September Brent settlement dispute has resolved in the exchange’s favour, by the disputing wire’s own arithmetic. Friday’s wire copy gives Brent at 104.32, down 2.28. That implies a Thursday reference of 106.60, which is this book’s dated-contract figure and not the 107.18 the same wire printed on Thursday. The identical test on WTI gives 92.41 plus 2.20 equals 94.61, also matching. No divergence is carried this edition.
  11. 🔴 Nothing is attributed to Williams for Friday, and the reason is a dateline trap that nearly caught this run. The widely circulating line that a further hike this year would be reasonable is Thursday 24 September, at the London Macro Policy Forum. The calendar listed a Williams slot at 05:15 ET Friday with no venue and no topic, the New York Fed’s own speech path for that date returns not found, and no coverage of a Friday appearance exists. Schmid and Hammack both spoke and neither bank published a text, so both are carried as reported rather than quoted and neither is quoted anywhere in this edition.
  12. 🔴 The fed funds probability relay was handed over with inverted bucket labels and the inversion was caught before it reached copy. With the target range at 3.75% to 4.00%, the 4.00% to 4.25% bucket is the hike, not the hold. The relay puts roughly seven in ten odds on a quarter-point rise at the October meeting. It is tier 3, it is labelled, and no point figure is published from it.
  13. Two priors carried into this run do not match the tape. Core durable goods prior shows 0.7% rather than the 0.4% carried, and headline 0.9% rather than 1.1%. The 0.7% prior is corroborated externally. Macro Edge’s footnote publishes the correction and states the discrepancy rather than smoothing it, which is the right home for it.
  14. A wire narrative on semiconductors does not survive the exchange prints. A Friday wrap had the semiconductor funds up about 1.4% tracking gains in three named chipmakers. Those three printed +0.218%, +0.162% and +0.699%. The framing describes the week rather than the day and the exchange prints are used.
  15. Two unresolved calendar items. One route places Jefferies on 30 September and another on 28 September; unresolved and nothing is published. Accenture’s 08:00 ET call time is confirmed by neither route and is not printed.
  16. 🔴 Stocktwits sentiment: the canonical score and the legacy tagged-message split disagreed on eleven of fourteen names sampled, and a new degenerate shape appeared. One name returned a legacy split of zero against zero with a delta of minus fifty, which is a null the field renders as a number. Four names reversed direction outright. Canonical scores only are published, with the basis named.
  17. 🔴 Five new ticker collisions for the standing list. BULL is Webull Corp and not a leveraged long fund. SOXS is the triple-leveraged semiconductor bear fund, so its gain is a fall in semiconductors and is a sign trap in any market wrap. ECO is Okeanis Eco Tankers and not an environmental fund. DOG.X is a separate token from DOGE.X and both were on the crypto board. SKHY is an SK Hynix depositary receipt, so its move is a Korean-session move re-expressed.
  18. An Oracle disclosure is reported and not published. A further block of shares is reported pledged as loan collateral by the founder, in the same week as the force majeure notice and the credit commentary. No primary filing was opened, so no figure and no claim appears in any output. Worth a check on the next run.
  19. Twelve Data is absent from this stack for a second consecutive run despite a tier-1 registry entry for crypto, spot metals and foreign exchange. Every crypto and spot figure this edition runs on substitute routes with the route named. Note also that prior-edition crypto marks were taken on a different feed and sit roughly 0.03% from this edition’s basis; that is feed construction, not a conflict, but Thursday and Friday crypto marks are not strictly comparable.
  20. Two retrieval walls, one old and one new. The New York Fed’s speeches index returned a site-wide maintenance page on both attempts, a second consecutive part. Seeking Alpha returned ROBOTS_DISALLOWED and is a new wall, not previously on the blocklist.
  21. 🔧 The independent verification pass made a factual error of its own and it is recorded, because a gate nobody audits is a gate nobody checks. It reported that the data lock “contains no window arrays of any kind” and that every superlative in the edition was therefore unsupported. The lock carries 8 window arrays over 107 dated observations, including the September CMT series behind both long-end superlatives and the 34-session advance/decline series behind the breadth claim. The pass was right about the 20s30s session count and wrong about the mechanism; both halves are logged.
  22. 🟢 Zero scanner rate limits this run. No agent called the throttled TradingView endpoints. Roughly 150 OHLCV calls across four agents returned without a single rate-limit rejection, which is the second consecutive run in which honouring the standing-condition note removed the problem entirely.

Carry-over note (§10.6)

Does not fire. No threshold tripped and no catalyst was flagged. The session’s interesting feature is a participation count rather than a price move, which is an observation for the mechanism read and not a carry-over.

Regime and sensitivity read (§17.3)

Running LOOSE, twenty-seventh consecutive edition, and the bias is stated openly rather than presented as neutral. The diagnosis is unchanged and hardens again: the candidate set is mis-specified rather than mis-tuned.

Friday produced four regime-grade observations and the tripwire saw none. A price-weighted index gaining 478.64 points with 10 constituents of its exchange at a 52-week high. A twist steepener in which the front end fell 6bp on one soft release whilst both long tenors closed at the highest levels of the month. A Nasdaq issue ratio of 1.130 sitting on a dead-even volume ratio of 1.015. And a dollar index that fell 0.21% on a move that was two-thirds a single cross.

The turn condition had its closest miss yet, and it failed on a sixth distinct leg. The condition requires two sessions in which a dated Federal Reserve communication moves the 2-year by 10bp or more whilst the 30-year moves by less than half. Friday carried two dated communications, and the ratio the condition asks for was present in the tape: the 30-year moved 2bp against the 2-year’s 6bp, comfortably inside the half. The magnitude limb failed, 6bp against a 10bp floor. Progress 0 of 2. ⚠️ Stated precisely, because the distinction matters: the condition requires the COMMUNICATION to move the front end, and this edition cannot attribute Friday’s 6 basis points to the communications rather than to the data or to crude. So the ratio limb was not strictly tested either. What Friday shows is that the magnitude floor is unreachable in the current regime whatever the cause.

Six consecutive near-misses on six distinct failure modes, and the sixth is the one that matters most: the condition has now been shown to fail when it is nearly satisfied, in the direction the thesis predicts, because the threshold was set for a market in which the committee moves the front end. That is the fourth consecutive edition arguing from fresh evidence that the condition is mis-specified, and the first on which it was the threshold rather than the shape that blocked it.

Recommendation order, with one change.

  1. Two-sided volatility leg. Eleven editions overdue. Vindicated a sixth time: VIX fell 5.11% on a session whose internals were the edition’s whole story, and registered nothing, because the leg is one-sided and the threshold is 8%.
  2. Lower the turn condition’s magnitude limb, or express it as a ratio. Promoted from fourth. The ratio limb worked on its first clean test; the magnitude limb is what six sessions have failed on.
  3. Un-retire the front-end selective-deafness leg. Fifth consecutive vindication, though Friday is the weakest of the five: the front end did respond, just to data rather than to speech.
  4. Breadth-versus-index leg. Unchanged, and Friday is the strongest single piece of evidence it has ever had. A positive advance/decline ratio, a positive up/down volume ratio and 10 new highs is precisely the configuration a breadth-versus-index tripwire exists to catch, and the ratio-based leg as currently drafted would have missed it. If this leg is built, it should be built on the new-high count rather than on the advance/decline ratio.
  5. Re-specify the policy-transmission thread, now challenged in six distinct directions across six consecutive editions.

You may also like

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}