SPY Γ— QQQ All-Time Highs

Who prints ATHs alone, how close together they land, and how they cluster
What counts as an ATH day here

An ATH day is a session whose daily close is strictly above every prior daily close for that fund (split-adjusted price, dividends excluded β€” the ATH you see on a chart). SPY's running max is seeded from its 1993 inception; the joint analysis runs on the 6,878 shared trading days from QQQ's inception 1999-03-10 through 2026-07-14.

One structural fact drives everything: QQQ's dot-com closing peak ($117.75 on 2000-03-27) was not exceeded until 2016-09-06 β€” 16.5 years. Most views below are therefore shown two ways: the full era (1999β†’) and the modern era (2016-09β†’), after QQQ finally cleared its 2000 high.

Robustness: rerunning on intraday highs instead of closes, or on dividend-adjusted closes, moves the headline percentages a few points but changes no conclusion. QQQ's first months inflate its early "ATH" count slightly (a young fund clears its own history easily); 34 of its 189 all-time solo days are from 1999.

Headline

Same-day joint ATHs are the norm today (~2 in 3). But the two kinds of solo ATH are not the same animal.

In the modern era, when either fund closes at an all-time high the other closes at its own high the same day about two-thirds of the time, and the median gap to the other's nearest ATH day is zero trading days.

The asymmetry is in the tails. A QQQ-only ATH has never happened with SPY more than 9% off its high, and the nearest SPY ATH day has never been more than 58 trading days (~3 months) away β€” though the nearest can sit behind you: from the QQQ-only days at the 2000 top, SPY's next ATH was 7.2 years out. A SPY-only ATH has twice been the signature of a multi-year regime β€” 2007 and 2013–2016, when SPY printed 124 ATH days while QQQ sat as much as 60% below its dot-com peak.

The 27-year map

Months containing at least one ATH day

Each cell is one calendar month, 1999-03 β†’ 2026-07. Lit = that fund closed at an ATH at least once that month. The dark void in the middle of the QQQ row is the dot-com hangover.
SPY went dark twice (2000β†’2007, 2007β†’2013) and QQQ went dark once, for 16.5 years (2000-03 β†’ 2016-09). Since late 2016 the two rows light up almost in lockstep β€” the modern regime is the synchronized one, and the full-era averages below are split accordingly.
Base rates β€” pick the era

Composition of each fund's ATH days

joint β€” other fund also closed at ATH that day SPY solo QQQ solo
How close together are their ATH days?

Distance from each SPY ATH day to QQQ's nearest ATH day

Distance from each QQQ ATH day to SPY's nearest ATH day

Clustering β€” ATHs come in bursts

Gap to the same fund's next ATH day

Trading days between consecutive ATH days of the same fund, full era. Half the time the next ATH is literally the next session; the far tail is the multi-year droughts.
SPY (495 gaps)QQQ (431 gaps)

Hazard: odds of another own ATH within…

Given a fund closed at an ATH today, the share of those days with another own ATH inside the window (full era).
An ATH is rarely a one-off: both funds print another high within a month on ~93–94% of ATH days. The practical unit is the cluster, not the day β€” and the rare failures of this table are exactly the major tops (2000, 2007, 2021/22 for QQQ).

Clusters (ATH days ≀ 21 trading days apart)

Chaining ATH days that occur within a month of each other, full era. No singleton clusters exist for either fund β€” every ATH day ever printed had another own ATH within a month on at least one side.
When they diverge, how far behind is the laggard?

Laggard's distance below its own high on solo-ATH days

Catch-up time: solo ATH β†’ other fund's next ATH

Calendar days from each solo ATH day until the lagging fund printed its own next ATH.
Who reclaims highs first after drawdowns

Recovery races

Every episode where both funds sat β‰₯5% below their ATHs at the same time, and which fund printed the next ATH. Bold rows = deep drawdowns (either trough ≀ βˆ’15%).
Year by year

ATH days per calendar year

Stacked count of ATH days: joint, SPY-only, QQQ-only. Years with no bar had zero ATH days for either fund (2001–2006, 2008–2012 are omitted rows of zero).

Zoom out: does the divergence wash out weekly / monthly?

Conditional co-occurrence at coarser granularity, full era.
Mostly, yes β€” at monthly granularity a QQQ-ATH month contains a SPY ATH 81% of the time (58 of 72 QQQ-ATH months). The reverse stays lower (59%, 58 of 99 SPY-ATH months) because no granularity can bridge a 16-year drought.
Method & caveats

Data: Yahoo Finance daily bars (v8 chart API), SPY 1993-01-29 β†’ 2026-07-14, QQQ 1999-03-10 β†’ 2026-07-14. Split-adjusted close; dividends excluded. Final row is the last completed session (no live bar).

ATH: close strictly greater than all prior closes. SPY's prior-max includes 1993–1999. Trading-day distances use the shared calendar (6,878 days).

Clusters: consecutive own-ATH days ≀21 trading days apart are chained. Cluster overlap = calendar spans intersect. 21 td chosen from the gap distribution's natural break (~94% of gaps are ≀21 td β€” 93.3% for SPY, 94.7% for QQQ β€” with only ~4% in the 22–63 td bin).

Recovery races: episode opens when both funds close β‰₯5% below their running ATH on the same day; resolves at the next ATH close by either fund.

Caveats: price ATHs, not total-return β€” on dividend-adjusted closes SPY's ATH count rises (dividends pull highs forward) and full-era P(QQQ joins | SPY ATH) drops to 43% (modern 63%); shape unchanged. Intraday-high basis: full-era P(QQQ joins) 49.5% β€” same story. QQQ's 1999 inception year slightly inflates its early solo count. Two funds, one overlapping mega-cap basket: none of this is independent evidence of anything tradeable, and no tradeable claim is made.