Tổng kết thị trường ngày 8 tháng 7 năm 2026
Nhóm chip hồi phục nhẹ giúp NVDA tăng điểm nhưng các index ETF vẫn đứng yên. Thị trường chung ghi nhận sắc đỏ áp đảo với tỷ lệ hai-đối-một giữa mã tăng và giảm.
Thứ Tư, ngày 8 tháng 7 năm 2026 chứng kiến sự hồi phục ngắn hạn của nhóm cổ phiếu chip, nhưng các chỉ số gần như không biến động. SNDK đóng cửa ở mức +6.8%, AVGO +4.82%, NVDA +3.66% — một sự đảo chiều mạnh mẽ so với đợt bán tháo chip hôm thứ Ba — nhưng các index ETF vẫn đứng yên: SPY -0.31% và QQQ +0.25%. Thị trường chung có sắc đỏ áp đảo hơn ngày hôm trước với tỷ lệ hai-đối-một: 1821 mã tăng so với 4260 mã giảm, chiếm tỷ lệ tăng trưởng là 29.6% sau khi 33.8% phiên trước đó. Mọi con số dưới đây đều được trích xuất từ truy vấn lưu trữ — hãy mở rộng bất kỳ bảng nào để xem mã SQL chính xác.
Bảng điểm
Mọi sự thay đổi đều so sánh phút cuối cùng của phiên giao dịch bình thường ngày 8 tháng 7 với ngày thứ Ba 7 tháng 7 — các phiên giao dịch liên tiếp. Các hàng được sắp xếp theo thứ tự bảng chữ cái, nên mỗi ETF sẽ giữ một vị trí cố định.
Câu lệnh SQL chính xác đằng sau mỗi con số
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 tickerBốn quỹ ETF đều mở cửa với khoảng trống giảm (gap down) và sau đó diễn biến theo các hướng khác nhau. DIA mở phiên ở mức -0.97% so với mức đóng cửa trước đó và giảm thêm, chốt phiên ở mức -1.09%. IWM mở cửa ở mức -0.73% và tiếp tục giảm, đóng cửa ở mức -0.92%. SPY mở cửa ở mức -0.6%, nỗ lực hồi phục trong ngày nhưng vẫn đóng cửa ở mức -0.31% — mức hồi phục từ điểm mở cửa nhỏ hơn khoảng trống giảm. QQQ mở cửa ở mức -0.64% và tăng lên mức +0.25%** vào cuối phiên, là quỹ duy nhất trong bốn quỹ có kết quả dương.
Ngày hôm nay có bất thường không?
Biến động từ lúc mở cửa đến khi đóng cửa của SPY là 0.29%, xếp thứ 16 trong số 22 phiên gần nhất — một ngày có mức biến động trung bình của chỉ số, không phải mức cực đoan. Biến động đóng cửa so với đóng cửa của QQQ là +0.25%, xếp thứ 21 trong số 22 — một trong những mức biến động nhỏ nhất trong tháng qua của QQQ, phù hợp với kết quả giao dịch trầm lắng của chỉ số này.
Câu lệnh SQL chính xác đằng sau mỗi con số
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
)
)Độ rộng thị trường: tỷ lệ giảm mạnh hơn hai-to-one so với ngày hôm trước
Câu lệnh SQL chính xác đằng sau mỗi con số
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
)Khoảng cách giữa số mã tăng (1821) và số mã giảm (4260) khiến tỷ lệ mã tăng đạt 29.6%, giảm so với mức 33.8% của phiên trước — cùng một cách tính và cùng một bộ lọc thanh khoản cho cả hai ngày. Trong số 11439 mã có giá đóng cửa trong cả hai ngày, 5284 mã có khối lượng giao dịch dưới mức lọc 1 triệu USD và bị loại khỏi danh sách tính toán. Sự hồi phục do nhóm cổ phiếu blue-chip dẫn dắt và kết thúc hỗn hợp của chỉ số đã che lấp một xu hướng tiêu cực đồng loạt hơn trên toàn thị trường.
Nhóm cổ phiếu chip phục hồi mạnh mẽ với khối lượng giao dịch lớn
Các hàng được sắp xếp theo thứ tự bảng chữ cái, do đó mỗi tên cổ phiếu giữ nguyên vị trí cố định; so sánh ngày thứ Ba được tính toán mới dựa trên giá đóng cửa ngày 7 tháng 7 và 6 tháng 7 trong khối dữ liệu dưới bảng.
Câu lệnh SQL chính xác đằng sau mỗi con số
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 trong số mười bốn cổ phiếu chip đóng cửa ở sắc xanh — ngược lại với phiên thứ Ba, khi 12 trong số mười bốn cổ phiếu đóng cửa ở sắc đỏ. SNDK dẫn đầu nhóm với mức tăng +6.8% trên khối lượng giao dịch 16.82B USD, theo sát là AVGO với mức tăng +4.82%; các cổ phiếu lưu trữ khác cũng tăng theo — STX +3.9%, WDC +3.45%. Chứng chỉ quỹ 3x SOXL tăng +5.79% và chứng chỉ quỹ nghịch đảo SOXS giảm -6.22% — phù hợp với đà phục hồi một ngày của nhóm cổ phiếu cơ sở. MU tăng khiêm tốn hơn ở mức +1.11% nhưng đạt khối lượng giao dịch 32.02B USD — là cổ phiếu có khối lượng giao dịch tính theo USD lớn nhất trong danh mục. NVDA đóng cửa ở mức +3.66% trong ngày tăng thứ hai liên tiếp: đây là một trong số ít 2 cổ phiếu trong danh mục này đóng cửa ở sắc xanh xuyên qua đợt sụt giảm hôm thứ Ba (+0.67% vào ngày đó).
Câu lệnh SQL chính xác đằng sau mỗi con số
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
)Mặt đối lập: các cổ phiếu phòng thủ và mega-cap tăng trưởng không đi cùng xu hướng
Câu lệnh SQL chính xác đằng sau mỗi con số
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 tickerCác cổ phiếu mega-cap tăng trưởng biến động ngược chiều với nhóm chip: TSLA -2.22%, META -2.04%, LLY -1.6%. CVX là mã duy nhất đóng cửa ở sắc xanh với mức tăng +1.12% nhờ khoảng trống giá mở cửa, trong khi XOM mở cửa tăng +1.26% nhưng giảm về mức -0.49% vào cuối phiên. Do đó, diễn biến giao dịch ngày thứ Tư bị chia làm hai hướng — nhóm chip tăng, nhóm tăng trưởng và phòng thủ giảm — trong khi các chỉ số chính dao động đi ngang ở giữa. (Danh sách sắp xếp theo bảng chữ cái: CRNX, CVX, JNJ, LLY, META, TSLA, UNH, XOM.)
Dòng tiền giao dịch
Câu lệnh SQL chính xác đằng sau mỗi con số
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 có khối lượng giao dịch đạt 32.02B USD — là mã có giá trị lớn nhất và là mã duy nhất vượt mốc 30 tỷ USD. SPY (26.49B), NVDA (24.17B) và QQQ (20.9B) theo sau, cùng với SNDK ở mức 16.82B và TSLA ở mức 11.71B để hoàn tất bảng xếp hạng theo giá trị giao dịch. Bảng xếp hạng theo số lượng cổ phiếu cho thấy một diễn biến khác: ETF nghịch đảo gấp 3 lần nhóm bán dẫn SOXS đã giao dịch 636.5M cổ phiếu với mức giá trung bình ước tính là $4.67 — hệ quả từ cơ chế của một chứng chỉ quỹ 3x giá thấp trong một ngày nhóm chip biến động mạnh.
Diễn biến phiên giao dịch
Câu lệnh SQL chính xác đằng sau mỗi con số
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_timeKhối lượng giao dịch tạo thành hình chữ U điển hình: khối lượng lúc mở cửa chỉ bằng 89.9% so với khối lượng lớn nhất trong ngày và giảm dần vào buổi sáng, chạm đáy ở mức 34.1% trong khoảng từ 1:00–1:30 pm ET. Nửa giờ cuối phiên (15:30 ET) là khoảng thời gian có khối lượng giao dịch lớn nhất ngày với 2.2B cổ phiếu — cao hơn mức 1.98B lúc mở cửa, đây là mô hình tiêu chuẩn của một phiên giao dịch bình thường.
Bảng giao dịch options
Câu lệnh SQL chính xác đằng sau mỗi con số
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'Bảng giao dịch options hợp nhất ghi nhận 10.44M lệnh khớp và 63.26M hợp đồng — cao hơn mức 61.13M của thứ Ba, được tính toán từ cùng một bảng giao dịch trong khung giờ tương ứng của thứ Ba. Các lệnh Call chiếm 55.4% tổng khối lượng, cho thấy xu hướng mua Call ở mức trung bình. Hợp đồng 0DTE (đáo hạn trong ngày, 260708) chiếm 38.7% khối lượng hợp đồng, tăng từ mức 31.2% của thứ Ba. Hợp đồng đơn lẻ giao dịch nhiều nhất là SPY 745C — với 677981 hợp đồng ở mức giá trung bình là $0.875, một hợp đồng đáo hạn trong ngày gần mức at the money so với mức đóng cửa thông thường là $745.31 của SPY.
Bảng giá giao dịch
Câu lệnh SQL chính xác đằng sau mỗi con số
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'Bảng giá cổ phiếu ghi nhận 530.55M cập nhật NBBO vào ngày 8 tháng 7 — tăng 7.7% so với phiên trước đó. QQQ dẫn đầu các mã được nêu tên với 6.53M cập nhật, vượt qua mức 4.93M của SPY. NVDA (1.8M), TSLA (0.72M) và MU (0.6M) là các mã tiếp theo trong danh sách.
Câu lệnh SQL chính xác đằng sau mỗi con số
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 ASCTrong số bảy mã được nêu tên, mức spread trung vị (median) được báo giá trong giờ giao dịch chính thức (RTH) của SPY là 0.27 bps — mức thấp nhất trong phạm vi bình thường đối với một ETF thanh khoản nhất tại Mỹ. QQQ có mức báo giá là 0.71 bps, NVDA là 1.52 bps. Các mã có thanh khoản thấp hơn nằm ở cuối bảng gồm: MU với 5.66 bps và SNDK với 12.21 bps.
Câu lệnh SQL chính xác đằng sau mỗi con số
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
)Mức spread trung bình được báo giá trong giờ RTH của SPY là 2.202 cents, xếp thứ 11 trên tổng số 22 phiên trước đó — một ngày có độ chặt chẽ của spread ở mức trung bình. Phạm vi trong một tháng qua dao động từ 1.809 cents (thấp nhất) đến 2.865 cents (cao nhất). Không có khoảng trống thanh khoản hay sự kiện thanh khoản bất thường — đây là một phiên giao dịch bình thường đối với spread báo giá của SPY.
Câu lệnh SQL chính xác đằng sau mỗi con số
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_mBảng giá quyền chọn ghi nhận 9.62 tỷ cập nhật NBBO — gấp 18.1 lần so với số lượng của bảng giá cổ phiếu. Riêng mảng quyền chọn của SPY đã có 422 triệu cập nhật trong giờ giao dịch chính thức.
Lãi suất: đường cong lãi suất biến động không đáng kể
Câu lệnh SQL chính xác đằng sau mỗi con số
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
)Kỳ hạn 5 năm dẫn đầu các biến động trong phiên với mức tăng +4 bp; kỳ hạn 2 năm kết thúc phiên ở mức cao hơn +2 bp, và không có kỳ hạn nào khác biến động quá 2 bp theo bất kỳ hướng nào. Điều này khiến 2s10s spread ở mức 0.35% (tăng -1 bp trong phiên), nằm trong phạm vi biến động gần đây. Sự biến động yếu của lãi suất diễn ra song song với sự biến động yếu của chỉ số.
Lịch trình trong ngày
Câu lệnh SQL chính xác đằng sau mỗi con số
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_nextLịch trình trong ngày khá thưa thớt: 81 hồ sơ chốt quyền nhận cổ tức, 1 lệnh chia tách cổ phiếu thưởng đã thực hiện, và tổng cộng có 3722 hồ sơ SEC (bao gồm 775 giao dịch nội bộ theo Form 4, 527 bản cáo bạch 424B2, và 163 báo cáo sự kiện 8-K). Tin tức ghi nhận 192 bài viết từ 3 nhà xuất bản, trong đó MU là một trong những ticker được nhắc đến nhiều nhất với 17 bài viết. Không có sự kiện doanh nghiệp nổi bật nào diễn ra — trọng tâm của thị trường chính là nhóm cổ phiếu chip.
Phiên giao dịch, xác nhận
Câu lệnh SQL chính xác đằng sau mỗi con số
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'Phiên giao dịch diễn ra trọn vẹn trong khung giờ mở rộng — thanh SPY đầu tiên lúc 04:00 ET, thanh cuối cùng lúc 19:59 ET — với 390 thanh phút trong giờ giao dịch chính thức và 1 thanh giao dịch trong khung giờ mở rộng (không phải phiên nửa ngày; bảng ngày lễ không có dòng cho ngày này). Thời điểm đóng cửa tiếp theo được lên lịch là Labor Day vào ngày 2026-09-07.
Ghi chú dữ liệu
Tất cả mốc thời gian được lưu trữ theo giờ UTC; các khung giờ giao dịch bình thường vào ngày 8 tháng 7 năm 2026 được lọc theo sip_timestamp / window_start trong khoảng từ 2026-07-08 13:30:00 đến 2026-07-08 20:00:00, tương ứng với 9:30 sáng–4:00 chiều giờ New York. Các mức giá thập phân được chuyển đổi sang Float64 trước khi thực hiện bất kỳ phép chia nào. Các bảng dữ liệu theo từng ticker (scoreboard, chip complex, rotation) được sắp xếp theo thứ tự bảng chữ cái của ticker để mỗi tham chiếu trong văn bản khớp với một hàng cố định; các bảng xếp hạng (volume, quote snapshot) được sắp xếp theo giá trị, và mọi khẳng định về vị trí đều được mã hóa dưới dạng giới hạn kiểm chứng cho vị trí đó. Mọi so sánh vào thứ Ba trên trang này — bao gồm tỷ lệ breadth, số lượng chip xanh/đỏ, hợp đồng options và cổ phiếu 0DTE, số lượng cập nhật báo giá — đều được tính toán mới từ ngày 7 tháng 7 (và ngày 6 tháng 7 nếu cần giá đóng cửa trước đó) trong cùng một khối truy vấn, không bao giờ trích dẫn từ các bài viết trước đó.
Ghi chú dữ liệu đầy đủ
Bảng breadth đếm các mã có giá đóng cửa trong giờ giao dịch bình thường ở cả hai phiên và có khối lượng giao dịch ít nhất 1 triệu USD trong ngày được đo lường; số lượng bị loại bỏ (5284 của 11439) giúp hiển thị phần đuôi bị loại trừ. Các cột thời gian day_low/day_high của chip complex sử dụng mẫu argMin/argMaxIf(..., (value, timestamp)) để giải quyết các trường hợp bằng nhau một cách nhất quán. Các nhãn nhóm volume-smile sử dụng múi giờ ET (%H:%i), được tính toán với toTimeZone trong danh sách SELECT. Bảng options-tape phát hiện các hợp đồng đáo hạn trong ngày bằng cách khớp chuỗi con ticker-OCC (substring(ticker, length(ticker) - 14, 6)) thay vì options_trades.expiration_date (cột đó bị lỗi, theo ghi chú kiểm tra trước đó). Các ký hiệu trong KNOWN_AMBIGUOUS_TICKERS bị loại trừ trong các truy vấn SQL về volume-leaders và news-attention để các danh sách "nhiều X nhất" chỉ bao gồm các mã có thể kiểm chứng. Ticker tin tức hàng đầu sử dụng phương pháp phân loại ngẫu nhiên nhất quán (argMax(t, (n, t))); top_news_lead_over_next = 0 biểu thị trường hợp bằng nhau, đó là lý do tại sao văn bản ghi là "nằm trong số những mã được đề cập nhiều nhất". Bảng treasury kết hợp hai hàng snapshot hàng ngày; nếu thiếu snapshot cho bất kỳ ngày nào sẽ trả về không hàng và giới hạn row_count sẽ được áp dụng. Số lượng stocks-quote và options-quote là kết quả quét toàn bộ tape qua các phân đoạn ngày; số lượng ticker cụ thể được báo cáo theo đơn vị triệu để khớp với đơn vị cột của chúng. Median spread sử dụng quantileExact (nhất quán); bảng trailing spread là một giá trị trung bình (avgIf), được dán nhãn tương ứng.
Phương pháp luận
- Nguồn dữ liệu thị trường: consolidated tape —
delayed_stocks_minute_aggscho giá và khối lượng của chỉ số và từng mã,cache_stocks_quotescho số lượng NBBO và quoted spread,cache_options_quotesvàoptions_tradescho dữ liệu options. - Xử lý múi giờ: tất cả các timestamp được lưu trữ theo UTC; các nhãn thời gian ET chỉ được tính toán bằng
toTimeZone(..., 'America/New_York')trong các danh sách SELECT; các mệnh đề WHERE sử dụng giá trị UTC gốc. - Khung giờ giao dịch chính thức: 13:30–20:00 UTC, được xác minh dựa trên các thanh nến phút của SPY (bảng xác minh phiên), không dựa trên tính toán lịch.
- Định nghĩa spread:
(ask - bid) / midpoint × 10,000tính theo basis points dựa trên các báo giá hai chiều hợp lệ cho ảnh chụp nhanh; bảng dữ liệu tháng trước là độ rộng trung bình tính bằng cents, được dán nhãn là giá trị trung bình. - So sánh với phiên trước: được tính toán trực tiếp trong truy vấn từ ngày 7 tháng 7 (và ngày 6 tháng 7 để so sánh ngày-trên-ngày cho riêng thứ Ba) — không bao giờ lấy từ các bài viết trước đó.
- Tổng hợp dữ liệu xác định:
quantileExact,argMin/argMaxtheo khóa tuple, và một quy tắc phân loại tin tức xác định để đảm bảo dữ liệu tái tạo ổn định. - Ngày cập nhật kho dữ liệu: ngày 10 tháng 7 năm 2026 (T+2 cho giai đoạn này); dữ liệu tape của cả hai phiên đã được nạp đầy đủ tại mức độ này.
Liên kết chéo: tóm tắt ngày 7 tháng 7 năm 2026, chi phí giao dịch options, kiến thức cơ bản về bid-ask spread, options 0DTE, và relative volume.