Market Recap July 8 2026: Wetin Happun for Numbers
One-day chip bounce wey index no really feel: most semis green, NVDA up second day, MU na di heaviest dollar name, and broad tape still red pass two-to-one.
Wednesday, 8 July 2026, na one-day chip bounce wey the indexes no really feel. SNDK close +6.8%, AVGO +4.82%, NVDA +3.66% — e sharp reversal from Tuesday chip rout — but the index ETFs siddon still: SPY -0.31% and QQQ +0.25%. The broad tape run even more red, two-to-one, pass the day before: 1821 advancers against 4260 decliners, advancer share na 29.6% after 33.8% the session before. Every number wey dey below na from stored query dem read am — expand any panel make you see the exact SQL.
Di scoreboard
Every change dey compare July 8 last regular-session minute bar wit Tuesday July 7 own — consecutive trading sessions. Di rows dey alphabetical, so each ETF dey keep im fixed position.
The exact SQL behind every number
WITH prior AS (
SELECT ticker, argMax(close, window_start) AS prior_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00'
GROUP BY ticker
),
sess AS (
SELECT ticker,
argMin(open, window_start) AS day_open,
argMax(close, window_start) AS day_close,
max(high) AS day_high,
min(low) AS day_low,
round(toFloat64(sum(volume)) / 1e6, 1) AS shares_traded_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'
GROUP BY ticker
)
SELECT
s.ticker AS ticker,
round(toFloat64(p.prior_close), 2) AS prior_close,
round(toFloat64(s.day_open), 2) AS day_open,
round(toFloat64(s.day_close), 2) AS day_close,
round((toFloat64(s.day_open) / toFloat64(p.prior_close) - 1) * 100, 2) AS gap_pct,
round((toFloat64(s.day_close) / toFloat64(s.day_open) - 1) * 100, 2) AS intraday_pct,
round((toFloat64(s.day_close) / toFloat64(p.prior_close) - 1) * 100, 2) AS pct_change,
round(toFloat64(s.day_high), 2) AS day_high,
round(toFloat64(s.day_low), 2) AS day_low,
s.shares_traded_m
FROM sess s LEFT JOIN prior p ON s.ticker = p.ticker
ORDER BY tickerDi four ETFs gapped down for open and from dia dem go different ways. DIA open di session for -0.97% against di prior close and e fade further, finish -1.09%. IWM open for -0.73% and stay down, close -0.92%. SPY open for -0.6%, grind back through di day, and still close -0.31% — di recovery from open dey smaller dan di gap. QQQ open for -0.64% and rally go +0.25% by di close, na im be di only one of di four wey dey positive territory.
Di day bin dey unusual?
Di SPY open-to-close move wey be 0.29% rank 16 out of 22 sessions wey don pass — na mid-pack day for di index, no be extreme. Di QQQ close-over-close move wey be +0.25% rank 21 out of 22 — na one of di smallest moves for QQQ for di trailing month, wey dey consistent with di index quiet print.
The exact SQL behind every number
SELECT
round(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-08')), 2) AS qqq_close_over_close_pct,
arrayCount(x -> x > abs(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-08'))), groupArrayIf(abs(cc_pct), ticker = 'QQQ' AND d != toDate('2026-07-08'))) + 1 AS qqq_abs_move_rank,
countIf(ticker = 'QQQ') AS qqq_sessions_compared,
round(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-08')), 2) AS spy_open_to_close_pct,
arrayCount(x -> x > abs(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-08'))), groupArrayIf(abs(oc_pct), ticker = 'SPY' AND d != toDate('2026-07-08'))) + 1 AS spy_abs_move_rank,
countIf(ticker = 'SPY') AS spy_sessions_compared,
toString(min(d)) AS first_session
FROM (
SELECT ticker, d,
(close_px / lagInFrame(close_px) OVER (PARTITION BY ticker ORDER BY d) - 1) * 100 AS cc_pct,
oc_pct
FROM (
SELECT ticker, toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMax(toFloat64(close), window_start) AS close_px,
(argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS oc_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2026-06-05 13:30:00')
AND window_start < toDateTime('2026-07-09 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY ticker, d
)
)Breadth: even more two-to-one red than the day before
The exact SQL behind every number
SELECT
countIf(close_8 > close_7 AND close_7 > 0 AND dv_8 >= 1000000) AS advancers,
countIf(close_8 < close_7 AND close_7 > 0 AND dv_8 >= 1000000) AS decliners,
countIf(close_8 = close_7 AND close_7 > 0 AND dv_8 >= 1000000) AS unchanged,
countIf(close_7 > 0 AND close_8 > 0 AND dv_8 >= 1000000) AS liquid_tickers,
countIf(close_7 > 0 AND close_8 > 0) AS traded_both_sessions,
countIf(close_7 > 0 AND close_8 > 0) - countIf(close_7 > 0 AND close_8 > 0 AND dv_8 >= 1000000) AS dropped_by_liquidity_filter,
round(100.0 * countIf(close_8 > close_7 AND close_7 > 0 AND dv_8 >= 1000000) / countIf(close_7 > 0 AND close_8 > 0 AND dv_8 >= 1000000), 1) AS advancer_pct,
round(100.0 * countIf(close_7 > close_6 AND close_6 > 0 AND dv_7 >= 1000000) / countIf(close_7 > 0 AND close_6 > 0 AND dv_7 >= 1000000), 1) AS jul7_advancer_pct
FROM (
SELECT ticker,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00')) AS close_6,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00')) AS close_7,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00')) AS close_8,
sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00') AS dv_8,
sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00') AS dv_7
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-08 20:00:00'
GROUP BY ticker
)Di gap between advancers (1821) and decliners (4260) put di advancer share at 29.6%, e drop from 33.8% di session before — na di same calculation over di same liquidity filter, wey dem run for both days. Out of di 11439 names wey get close for both days, 5284 fall below di $1M-traded filter and dem no count dem. Di chip-led bounce and di index mixed close sit on top of one broad tape wey even dey more uniformly negative.
Di chip complex bounce back — e strong, and volume heavy
Rows dey alphabetical, so each name get im fixed position; di Tuesday comparison na fresh calculation from di July 7 and July 6 close wey dey di receipts block under di table.
The exact SQL behind every number
WITH per_name AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-07-08 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-08 00:00:00')) AS day_close,
maxIf(toFloat64(high), window_start >= '2026-07-08 00:00:00') AS day_high,
minIf(toFloat64(low), window_start >= '2026-07-08 00:00:00') AS day_low,
argMinIf(window_start, (toFloat64(low), toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-08 00:00:00') AS low_bar,
argMaxIf(window_start, (toFloat64(high), -toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-08 00:00:00') AS high_bar,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-08 00:00:00') / 1e9, 2) AS day_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AMD', 'AVGO', 'INTC', 'KLAC', 'LRCX', 'MRVL', 'MU', 'NVDA', 'SNDK', 'SOXL', 'SOXS', 'STX', 'TER', 'WDC')
AND ((window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00')
OR (window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'))
GROUP BY ticker
)
SELECT
ticker,
round(prior_close, 2) AS prior_close,
round(day_close, 2) AS day_close,
round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
round(((day_high - day_low) / prior_close) * 100, 2) AS range_pct,
round(toFloat64(day_low), 2) AS day_low,
round(toFloat64(day_high), 2) AS day_high,
toUInt32(toHour(toTimeZone(low_bar, 'America/New_York')) * 60 + toMinute(toTimeZone(low_bar, 'America/New_York'))) AS low_minute_et,
toUInt32(toHour(toTimeZone(high_bar, 'America/New_York')) * 60 + toMinute(toTimeZone(high_bar, 'America/New_York'))) AS high_minute_et,
day_dollar_bn
FROM per_name
ORDER BY ticker12 of di fourteen chip names close green — na di opposite of Tuesday session, wen 12 of di fourteen close red. SNDK lead di complex at +6.8% on 16.82B of dollars wey dem trade, with AVGO dey close behind at +4.82%; di other storage names follow — STX +3.9%, WDC +3.45%. Di 3x wrapper SOXL run +5.79% and di inverse SOXS -6.22% — e consistent with one-day recovery for di underlying complex. MU rise more modest +1.11% but e print 32.02B of dollars — na di heaviest dollar-volume name for di panel. NVDA close +3.66% for second straight green day: e be one of only 2 names for dis panel wey close green through Tuesday rout (+0.67% dat day).
The exact SQL behind every number
SELECT
countIf(close_8 > close_7) AS jul8_green,
countIf(close_8 < close_7) AS jul8_red,
countIf(close_7 > close_6) AS jul7_green,
countIf(close_7 < close_6) AS jul7_red,
round(anyIf((close_7 / close_6 - 1) * 100, ticker = 'NVDA'), 2) AS nvda_jul7_pct,
count() AS names_counted
FROM (
SELECT ticker,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00')) AS close_6,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00')) AS close_7,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00')) AS close_8
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AMD', 'AVGO', 'INTC', 'KLAC', 'LRCX', 'MRVL', 'MU', 'NVDA', 'SNDK', 'SOXL', 'SOXS', 'STX', 'TER', 'WDC')
AND window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-08 20:00:00'
GROUP BY ticker
)Di oda side: defensives and growth mega-caps no follow
The exact SQL behind every number
WITH per_name AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-07-08 00:00:00')) AS prior_close_raw,
toFloat64(argMinIf(open, window_start, window_start >= '2026-07-08 00:00:00')) AS day_open_raw,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-08 00:00:00')) AS day_close_raw,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-08 00:00:00') / 1e9, 2) AS day_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('CRNX', 'CVX', 'JNJ', 'LLY', 'META', 'TSLA', 'UNH', 'XOM')
AND ((window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00')
OR (window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'))
GROUP BY ticker
)
SELECT
ticker,
round(prior_close_raw, 2) AS prior_close,
round(day_open_raw, 2) AS day_open,
round(day_close_raw, 2) AS day_close,
round((day_open_raw / prior_close_raw - 1) * 100, 2) AS gap_pct,
round((day_close_raw / day_open_raw - 1) * 100, 2) AS intraday_pct,
round((day_close_raw / prior_close_raw - 1) * 100, 2) AS pct_chg,
day_dollar_bn
FROM per_name
ORDER BY tickerDi growth mega-caps move opposite di chip group: TSLA -2.22%, META -2.04%, LLY -1.6%. CVX na im be di only green close for di panel, e up +1.12% from early gap, while XOM open +1.26% higher den fade go -0.49% by close. So Wednesday tape split into two — chip names up, growth and defensives down — and di indexes just siddon for middle. (Rows dey alphabetical: CRNX, CVX, JNJ, LLY, META, TSLA, UNH, XOM.)
Where the money trade
The exact SQL behind every number
SELECT leaderboard, ticker, dollar_volume_bn, shares_m,
round(1000 * dollar_volume_bn / shares_m, 2) AS implied_avg_price,
round(100 * if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m)
/ max(if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m)) OVER (PARTITION BY leaderboard), 1) AS pct_of_board_leader
FROM (
SELECT
'by dollars traded' AS leaderboard,
ticker,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_volume_bn,
round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY dollar_volume_bn DESC
LIMIT 6
UNION ALL
SELECT
'by shares traded' AS leaderboard,
ticker,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_volume_bn,
round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY shares_m DESC
LIMIT 4
)
ORDER BY leaderboard, pct_of_board_leader DESCMU run 32.02B dollars — na im heavy pass for tape and na only im cross di $30B mark. SPY (26.49B), NVDA (24.17B), and QQQ (20.9B) follow, with SNDK at 16.82B and TSLA at 11.71B complete di dollar board. Di shares board tell anoda story: di 3x inverse semiconductor ETF SOXS trade 636.5M shares at one implied average price of $4.67 — na di mechanics of one low-priced 3x wrapper for heavy chip day.
How di session waka
The exact SQL behind every number
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
round(sum(toFloat64(volume)) / 1e9, 2) AS shares_bn,
round(100 * sum(toFloat64(volume)) / max(sum(toFloat64(volume))) OVER (), 1) AS pct_of_biggest_bucket
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'
GROUP BY et_time
ORDER BY et_timeVolume draw one textbook U-shape: di open bucket run for 89.9% of di day biggest bucket and e fade as morning dey go, e bottom for 34.1% for di 1:00–1:30 pm ET slot. Di closing half-hour (15:30 ET) na im be di day biggest bucket with 2.2B shares — e big pass di open own wey be 1.98B, di standard pattern for one regular session.
Di options tape
The exact SQL behind every number
WITH
(
SELECT (groupArray(und), groupArray(strike), groupArray(typ), groupArray(vol), groupArray(avg_px), groupArray(is_0dte))
FROM (
SELECT any(underlying_symbol) AS und, any(toFloat64(strike_price)) AS strike, any(option_type) AS typ,
sum(size) AS vol, round(avg(toFloat64(price)), 3) AS avg_px,
if(substring(ticker, length(ticker) - 14, 6) = '260708', 1, 0) AS is_0dte
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-08 00:00:00' AND sip_timestamp < '2026-07-09 00:00:00'
GROUP BY ticker
ORDER BY vol DESC
LIMIT 2
)
) AS top2,
(
SELECT round(toFloat64(argMax(close, window_start)), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00'
) AS spy_regular_close,
(
SELECT round(toFloat64(sum(size)) / 1e6, 2)
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-07 00:00:00' AND sip_timestamp < '2026-07-08 00:00:00'
) AS jul7_contracts_m,
(
SELECT round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260707') / sum(size), 1)
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-07 00:00:00' AND sip_timestamp < '2026-07-08 00:00:00'
) AS jul7_pct_0dte
SELECT
round(count() / 1e6, 2) AS option_prints_m,
round(toFloat64(sum(size)) / 1e6, 2) AS contracts_m,
jul7_contracts_m,
round(100.0 * sumIf(size, option_type = 'C') / sum(size), 1) AS call_pct_of_volume,
round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260708') / sum(size), 1) AS pct_0dte,
jul7_pct_0dte,
spy_regular_close,
top2.1[1] AS top1_und, top2.2[1] AS top1_strike, top2.3[1] AS top1_type, top2.4[1] AS top1_contracts, top2.5[1] AS top1_avg_px, top2.6[1] AS top1_is_0dte,
round(toFloat64(top2.2[1]) - spy_regular_close, 2) AS top1_moneyness
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-08 00:00:00' AND sip_timestamp < '2026-07-09 00:00:00'Di consolidated options tape carry 10.44M prints and 63.26M contracts — e pass Tuesday own wey be 61.13M, wey dem compute from di same tape over Tuesday window. Calls na 55.4% of total volume, wey show moderate call lean. 0DTE contracts (same-day expiry, 260708) collect 38.7% of contract volume, e rise from 31.2% for Tuesday. Di single contract wey busy pass na SPY 745C — 677981 contracts for average price of $0.875, na same-day expiry wey dey essentially at the money against SPY regular close of $745.31.
Di quote tape
The exact SQL behind every number
SELECT
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08')) / 1e6, 2) AS jul8_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-07')) / 1e6, 2) AS jul7_updates_m,
round((countIf(toDate(sip_timestamp) = toDate('2026-07-08')) / countIf(toDate(sip_timestamp) = toDate('2026-07-07')) - 1) * 100, 1) AS day_over_day_pct,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08') AND ticker = 'SPY') / 1e6, 2) AS jul8_spy_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08') AND ticker = 'QQQ') / 1e6, 2) AS jul8_qqq_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08') AND ticker = 'NVDA') / 1e6, 2) AS jul8_nvda_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08') AND ticker = 'TSLA') / 1e6, 2) AS jul8_tsla_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-08') AND ticker = 'MU') / 1e6, 2) AS jul8_mu_updates_m
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-07-07 00:00:00' AND sip_timestamp < '2026-07-09 00:00:00'Di stock-quote tape carry 530.55M NBBO updates for July 8 — +7.7% compared to di session wey pass. QQQ im 6.53M updates lead di named tickers, e dey ahead of SPY im 4.93M. NVDA (1.8M), TSLA (0.72M), and MU (0.6M) complete di named counts.
The exact SQL behind every number
SELECT
ticker,
round(quantileExact(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000), 2) AS median_spread_bps
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'QQQ', 'NVDA', 'TSLA', 'MU', 'SNDK', 'AVGO')
AND sip_timestamp >= '2026-07-08 13:30:00' AND sip_timestamp < '2026-07-08 20:00:00'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
GROUP BY ticker
ORDER BY median_spread_bps ASCAcross di seven named tickers, di SPY RTH median quoted spread na 0.27 bps — e dey for di floor of ordinary for di most-liquid US ETF. QQQ quote at 0.71 bps, NVDA at 1.52 bps. Di wider tail of di table belong to di names wey get thinner quoting: MU at 5.66 bps and SNDK at 12.21 bps.
The exact SQL behind every number
SELECT
round(anyIf(avg_spread_cents, d = toDate('2026-07-08')), 3) AS jul8_avg_spread_cents,
arrayCount(x -> x < anyIf(avg_spread_cents, d = toDate('2026-07-08')), groupArrayIf(avg_spread_cents, d != toDate('2026-07-08'))) + 1 AS tightness_rank,
count() AS sessions_compared,
round(min(avg_spread_cents), 3) AS tightest_session_cents,
round(max(avg_spread_cents), 3) AS widest_session_cents,
toString(min(d)) AS first_session,
sum(dropped_invalid) AS dropped_invalid_quotes
FROM (
SELECT toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS d,
avgIf(toFloat64(ask_price - bid_price), bid_price > 0 AND ask_price >= bid_price) * 100 AS avg_spread_cents,
countIf(NOT (bid_price > 0 AND ask_price >= bid_price)) AS dropped_invalid
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY'
AND sip_timestamp >= toDateTime('2026-06-05 00:00:00')
AND sip_timestamp < toDateTime('2026-07-09 00:00:00')
AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY d
)SPY im RTH average quoted spread of 2.202 cents rank 11 out of 22 trailing sessions — na mid-pack day for spread tightness, as di trailing-month range dey run from 1.809 cents (di tightest) to 2.865 cents (di widest). No air pocket, no liquidity event — na ordinary session for SPY im quoted spread.
The exact SQL behind every number
WITH
(SELECT count() FROM global_markets.cache_options_quotes WHERE sip_timestamp >= '2026-07-08 00:00:00' AND sip_timestamp < '2026-07-09 00:00:00') AS jul8_options_rows,
(SELECT count() FROM global_markets.cache_stocks_quotes WHERE sip_timestamp >= '2026-07-08 00:00:00' AND sip_timestamp < '2026-07-09 00:00:00') AS jul8_stock_quote_rows
SELECT
round(jul8_options_rows / 1e9, 2) AS jul8_options_bn,
round(jul8_options_rows / jul8_stock_quote_rows, 1) AS options_to_stock_ratio,
round((SELECT count() FROM global_markets.cache_options_quotes WHERE ticker >= 'O:SPY26' AND ticker < 'O:SPY27' AND sip_timestamp >= '2026-07-08 13:30:00' AND sip_timestamp < '2026-07-08 20:00:00') / 1e6, 0) AS jul8_spy_options_mDi options tape carry 9.62 billion NBBO updates — 18.1× di stock-quote tape im count. Di SPY-options slice alone run 422 million updates during regular hours.
Rates: di curve no really move
The exact SQL behind every number
SELECT
t.1 AS curve_point,
round(t.2, 2) AS jul8_yield_pct,
round((t.2 - t.3) * 100) AS session_change_bp
FROM (
SELECT arrayJoin([
('1 month', toFloat64(d.yield_1_month), toFloat64(p.yield_1_month)),
('3 month', toFloat64(d.yield_3_month), toFloat64(p.yield_3_month)),
('1 year', toFloat64(d.yield_1_year), toFloat64(p.yield_1_year)),
('2 year', toFloat64(d.yield_2_year), toFloat64(p.yield_2_year)),
('5 year', toFloat64(d.yield_5_year), toFloat64(p.yield_5_year)),
('10 year', toFloat64(d.yield_10_year), toFloat64(p.yield_10_year)),
('30 year', toFloat64(d.yield_30_year), toFloat64(p.yield_30_year)),
('2s10s spread', toFloat64(d.yield_10_year - d.yield_2_year), toFloat64(p.yield_10_year - p.yield_2_year))
]) AS t
FROM (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-08') AS d,
(SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-07') AS p
)Di 5-year na im lead di session moves for +4 bp; di 2-year close +2 bp higher, and no oda maturity move pass 2 bp for any direction. Dat one leave di 2s10s spread for 0.35% (-1 bp for di session), inside im recent range. Di small rates move just dey follow di small index move.
Di calendar wey dey behind di day
The exact SQL behind every number
WITH
(
SELECT (count(), uniqExact(publisher))
FROM global_markets.stocks_news
WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-08'
) AS news,
(
SELECT (argMax(t, (n, t)), max(n), max(n) - arraySort(x -> -x, groupArray(n))[2])
FROM (
SELECT t, count() AS n
FROM (
SELECT arrayJoin(tickers) AS t
FROM global_markets.stocks_news
WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-08'
)
WHERE t != 'SPCX'
GROUP BY t
)
) AS top_news
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-08') AS ex_dividend_records,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-08') AS splits_executed,
(SELECT countIf(toFloat64(split_from) > toFloat64(split_to)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-08') AS reverse_splits,
(SELECT countIf(toFloat64(split_to) > toFloat64(split_from)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-08') AS forward_splits,
(SELECT countIf(form_type = '424B2') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-08') AS fil_424b2,
(SELECT countIf(form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-08') AS fil_form4,
(SELECT countIf(form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-08') AS fil_8k,
(SELECT count() FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-08') AS fil_total,
news.1 AS news_articles, news.2 AS news_publishers,
top_news.1 AS top_news_ticker, top_news.2 AS top_news_n, top_news.3 AS top_news_lead_over_nextDi calendar no heavy for di day: 81 ex-dividend records, 1 forward split don execute, and 3722 SEC filings altogether (with 775 Form 4 insider trades, 527 424B2 prospectuses, and 163 8-K current reports). News coverage carry 192 articles across 3 publishers, with MU among di tickers wey dem mention pass at 17 articles. No household-name corporate action stand out for di day flow — di tape story na di chip complex itself.
Di session, wey dem verify
The exact SQL behind every number
SELECT
formatDateTime(min(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS first_spy_bar_et,
formatDateTime(max(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS last_spy_bar_et,
count() AS spy_minute_bars,
countIf(window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00') AS regular_session_bars,
uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-08 13:30:00' AND window_start < '2026-07-08 20:00:00') AS day_sessions,
(SELECT count() FROM global_markets.stocks_market_holidays WHERE date = '2026-07-08') AS jul8_holiday_rows,
(SELECT toString(min(date)) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-08' AND status = 'closed') AS next_closure_date,
(SELECT argMin(name, date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-08' AND status = 'closed') AS next_closure_name
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-08 00:00:00' AND window_start < '2026-07-09 00:00:00'Di session run full extended-hours window — first SPY bar for 04:00 ET, last one for 19:59 ET — with 390 regular-hours minute bars and 1 trading session inside di window (no half-day; di holiday table no get row for di date). Di next closure wey dem schedule na Labor Day on 2026-09-07.
Data notes
All timestamps dey stored for UTC; regular hours for July 8, 2026 na sip_timestamp / window_start between 2026-07-08 13:30:00 and 2026-07-08 20:00:00, wey be 9:30 am–4:00 pm New York time. Decimal prices dem cast to Float64 before any division. Named per-ticker panels (scoreboard, chip complex, rotation) dey ordered alphabetically by ticker so each prose reference dey point at fixed row; leaderboards (volume, quote snapshot) dey value-ordered, and every positional claim wey dem make dey encoded as sanity bound for that position. Every Tuesday comparison for this page — breadth share, chip green/red counts, options contracts and 0DTE share, quote-update counts — dem compute am fresh from July 7 (and July 6 where prior close dey needed) inside the same query block, dem never quote am from earlier post.
Full data notes
The breadth panel dey count names wey get regular-hours close for both sessions and at least $1M traded for the measured day; the dropped count (5284 of 11439) dey make the excluded tail visible. The chip complex day_low/day_high timing columns dey use the argMin/argMaxIf(..., (value, timestamp)) pattern so ties dey resolve deterministically. The volume-smile bucket labels na ET (%H:%i), dem compute am with toTimeZone inside the SELECT list only. The options-tape panel dey detect same-day expiry with the OCC-ticker substring match (substring(ticker, length(ticker) - 14, 6)) instead of options_trades.expiration_date (that column don break, according to the standing preflight note). Symbols wey dey inside KNOWN_AMBIGUOUS_TICKERS dem exclude am for the volume-leaders and news-attention SQL so "most X" callouts go fall through to verifiable names. The top-news ticker dey use deterministic tie-break (argMax(t, (n, t))); top_news_lead_over_next = 0 dey mark tie, na why the prose talk say "among the most-mentioned". The treasury panel dey join two daily snapshot rows; if snapshot miss for either date e go yield zero rows and the row_count bound go hold the post. The stocks-quote and options-quote counts na whole-tape scans over day partitions; named-ticker counts dem report am in millions to match their column units. Spread medians dey use quantileExact (deterministic); the trailing spread panel na average (avgIf), dem label am as such.
How We Do Am
- Where we dey get market data: na consolidated tape —
delayed_stocks_minute_aggsfor index and per-name price plus volume,cache_stocks_quotesfor NBBO counts and quoted spreads,cache_options_quotesandoptions_tradesfor the options tape. - How we handle time zone: all the timestamps wey we store na UTC; we dey use
toTimeZone(..., 'America/New_York')to compute ET clock labels for SELECT lists only; WHERE clauses dey use raw UTC values. - Regular-hours window: na 13:30–20:00 UTC, we confirm am against SPY minute bars wey we observe (the session-verification panel), no be calendar arithmetic.
- Wetin spread mean: na
(ask - bid) / midpoint × 10,000in basis points for valid two-sided quotes for the snapshot; the trailing-month panel na average width in cents, wey we label as average. - How we compare with previous session: we dey compute am inside query from July 7 (and July 6 for Tuesday own day-over-day) — we no dey ever carry am come from previous post.
- Deterministic aggregates: na
quantileExact, tuple-keyedargMin/argMax, plus deterministic news tie-break so the regeneration go dey stable. - Warehouse as-of date: na July 10, 2026 (T+2 for the period); both sessions' tapes don fully enter for this depth.
Cross-links: recap for July 7, 2026, cost of trading options, basics of bid-ask spread, 0DTE options, and relative volume.