Tổng hợp thị trường ngày 7 tháng 7 năm 2026
Thị trường chứng khoán giảm điểm khi nhóm cổ phiếu bán dẫn lao dốc mạnh. Số mã giảm gấp hai lần số mã tăng trong khi SPY ghi nhận biên độ chênh lệch giá hẹp nhất trong tháng.
Thứ Ba, ngày 7 tháng 7 năm 2026, thị trường đã xóa sạch đà tăng trưởng của phiên mở cửa ngày thứ Hai, thậm chí còn giảm sâu hơn: QQQ đóng cửa ở mức -1.82%, xóa bỏ hoàn toàn mức tăng của ngày thứ Hai, so với mức -0.29% của DIA. Bên dưới bề mặt thị trường, số mã giảm gấp hai lần số mã tăng: 4034 mã thanh khoản giảm so với 2091 mã tăng. Câu chuyện thực sự của ngày hôm nay là đợt sụt giảm của nhóm cổ phiếu bán dẫn với biên độ lớn gấp nhiều lần chỉ số chung, trong đó một trong những gã khổng lồ của ngành lại đứng ngoài đà giảm này. 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 tỷ số
Mọi thay đổi đều được so sánh giữa thanh giá phút cuối cùng của phiên giao dịch thường ngày 7 tháng 7 với ngày 6 tháng 7, hai phiên giao dịch liên tiếp.
| Ticker | Đóng cửa trước | Mở cửa | Đóng cửa | Gap (%) | Trong phiên (%) | Thay đổi (%) | Cao nhất | Thấp nhất | KLGD (triệu) |
|---|---|---|---|---|---|---|---|---|---|
| DIA | 530.03 | 532.5 | 528.48 | 0.47 | -0.76 | -0.29 | 532.54 | 527.11 | 4.1 |
| IWM | 298.88 | 299.17 | 296.2 | 0.1 | -0.99 | -0.9 | 299.97 | 295.18 | 16.4 |
| QQQ | 722.63 | 714.17 | 709.5 | -1.17 | -0.65 | -1.82 | 716.35 | 704.9 | 37.4 |
| SPY | 751.3 | 750.22 | 747.66 | -0.14 | -0.34 | -0.48 | 750.96 | 745.21 | 38.4 |
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-06 13:30:00' AND window_start < '2026-07-06 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-07 13:30:00' AND window_start < '2026-07-07 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 AS shares_traded_m
FROM sess s
JOIN prior p ON s.ticker = p.ticker
ORDER BY s.ticker-1.82% của QQQ dẫn đầu đà giảm của bốn ETF chỉ số; SPY đóng cửa ở mức -0.48%, IWM ở mức -0.9%, và mức -0.29% của DIA là biến động nhẹ nhất. Sự phân hóa giữa khoảng trống giá (gap) và đà trượt giá (grind) cho thấy hai thái cực của thị trường không đồng thuận ngay từ lúc mở cửa: khoảng trống giá qua đêm của QQQ ở mức -1.17% và đà trượt giá từ mở cửa đến đóng cửa là -0.65%, khoảng trống giá đã gây ra phần lớn thiệt hại, trong khi DIA mở cửa với khoảng trống tăng 0.47% nhưng vẫn kết phiên trong sắc đỏ, với biến động từ mở cửa đến đóng cửa là -0.76%. Vai trò dẫn dắt đã thay đổi trong mỗi phiên kể từ thứ Năm: DIA dẫn đầu vào thứ Năm, QQQ dẫn đầu vào thứ Hai, và DIA lại dẫn đầu vào thứ Ba.
Ngày giao dịch có gì bất thường không?
| QQQ đóng/đóng (%) | Hạng biến động QQQ | Phiên QQQ so sánh | SPY mở/đóng (%) | Hạng biến động SPY | Phiên SPY so sánh | Phiên đầu |
|---|---|---|---|---|---|---|
| -1.82 | 9 | 21 | -0.34 | 15 | 21 | 2026-06-05 |
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-07')), 2) AS qqq_close_over_close_pct,
arrayCount(x -> x > abs(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-07'))), groupArrayIf(abs(cc_pct), ticker = 'QQQ' AND d != toDate('2026-07-07'))) + 1 AS qqq_abs_move_rank,
countIf(ticker = 'QQQ') AS qqq_sessions_compared,
round(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-07')), 2) AS spy_open_to_close_pct,
arrayCount(x -> x > abs(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-07'))), groupArrayIf(abs(oc_pct), ticker = 'SPY' AND d != toDate('2026-07-07'))) + 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-04 00:00:00')
AND window_start < toDateTime('2026-07-08 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY ticker, d
)
)
WHERE isFinite(cc_pct)Ở cấp độ chỉ số, câu trả lời là không hẳn. Mức biến động giá đóng cửa phiên trước so với phiên sau của QQQ ở mức -1.82% xếp hạng 9 trong tổng số 21 phiên giao dịch gần nhất xét theo quy mô tuyệt đối. Tương tự, mức biến động từ giá mở cửa đến giá đóng cửa của SPY là -0.34%, xếp hạng 15 trong tổng số 21 phiên; đây là giai đoạn một tháng gần nhất bao gồm cả những đợt biến động mạnh của nhóm cổ phiếu công nghệ vào cuối tháng Sáu, vốn đã thiết lập một ngưỡng so sánh khá cao. Tuy nhiên, sự phân hóa bên dưới bề mặt thị trường mới là điểm khiến ngày 7 tháng Bảy trở nên đáng chú ý.
Độ rộng thị trường: hai mã giảm trên mỗi một mã tăng
| Mã tăng | Mã giảm | Không đổi | Ticker thanh khoản | Ticker giao dịch cả 2 phiên | Loại do thanh khoản | Tỷ lệ mã tăng (%) |
|---|---|---|---|---|---|---|
| 2091 | 4034 | 59 | 6184 | 11460 | 5276 | 33.8 |
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH per_ticker AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-07-07 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-07 00:00:00')) AS day_close,
sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-07 00:00:00') AS day_dollar_volume
FROM global_markets.delayed_stocks_minute_aggs
WHERE (window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00')
OR (window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00')
GROUP BY ticker
)
SELECT
countIf(day_close > prior_close AND day_dollar_volume >= 1000000) AS advancers,
countIf(day_close < prior_close AND day_dollar_volume >= 1000000) AS decliners,
countIf(day_close = prior_close AND day_dollar_volume >= 1000000) AS unchanged,
countIf(day_dollar_volume >= 1000000) AS liquid_tickers,
count() AS tickers_traded_both_sessions,
count() - countIf(day_dollar_volume >= 1000000) AS dropped_by_liquidity_filter,
round(100.0 * countIf(day_close > prior_close AND day_dollar_volume >= 1000000)
/ countIf(day_dollar_volume >= 1000000), 1) AS advancer_pct
FROM per_ticker
WHERE prior_close > 0 AND day_close > 02091 mã tăng, 4034 mã giảm, 59 mã không đổi, 33.8% các mã có thanh khoản tốt đã tăng giá, đảo ngược phiên tăng điểm hôm thứ Hai. Bộ lọc loại bỏ 5276 trong số 11460 mã có giao dịch trong hai phiên với giá trị dưới một triệu đô la, được tính ở đây.
Nhóm cổ phiếu chip suy yếu, ngoại trừ các tên tuổi lớn nhất
Lực bán tập trung vào nhóm bán dẫn: các nhà sản xuất chip, các đơn vị cung cấp thiết bị, nhóm lưu trữ liên quan và các ETF đòn bẩy dựa trên nhóm này. Mức độ và sự đồng biến động được ghi nhận dưới đây; dữ liệu không giải thích nguyên nhân.
| Ticker | Đóng cửa trước | Đóng cửa | Thay đổi (%) | Cao nhất (ET) | Thấp nhất (ET) | Phút cao nhất (ET) | Phút thấp nhất (ET) | Biên độ (%) | GTGD (tỷ $) |
|---|---|---|---|---|---|---|---|---|---|
| AMD | 551.95 | 516.57 | -6.41 | 12:29 | 10:46 | 749 | 646 | 4.34 | 12.48 |
| AVGO | 373.9 | 370.79 | -0.83 | 13:42 | 10:44 | 822 | 644 | 3.02 | 6.09 |
| INTC | 122.22 | 110.5 | -9.59 | 09:30 | 15:18 | 570 | 918 | 7.54 | 13.82 |
| KLAC | 233.39 | 216.52 | -7.23 | 09:30 | 10:43 | 570 | 643 | 6.13 | 2.91 |
| LRCX | 349.92 | 326.12 | -6.8 | 09:30 | 10:41 | 570 | 641 | 5.64 | 3.97 |
| MRVL | 249.29 | 230.81 | -7.41 | 09:30 | 10:42 | 570 | 642 | 6.5 | 6.42 |
| MU | 984.31 | 938.95 | -4.61 | 15:59 | 10:41 | 959 | 641 | 5.65 | 41.6 |
| NVDA | 195.62 | 196.93 | 0.67 | 13:07 | 10:35 | 787 | 635 | 3.8 | 19.95 |
| SNDK | 1743.08 | 1619.26 | -7.1 | 09:30 | 10:42 | 570 | 642 | 10.36 | 19.73 |
| SOXL | 194.77 | 165.27 | -15.15 | 09:30 | 10:44 | 570 | 644 | 14.53 | 10.8 |
| SOXS | 4.16 | 4.82 | 15.87 | 10:42 | 09:30 | 642 | 570 | 10.3 | 2.78 |
| STX | 869.5 | 827.4 | -4.84 | 09:45 | 10:44 | 585 | 644 | 6.58 | 3.1 |
| TER | 379.66 | 343.1 | -9.63 | 09:30 | 10:41 | 570 | 641 | 9.98 | 1.59 |
| WDC | 577.46 | 532.34 | -7.81 | 09:30 | 11:00 | 570 | 660 | 7.76 | 3.73 |
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-07 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-07 00:00:00')) AS day_close,
maxIf(toFloat64(high), window_start >= '2026-07-07 00:00:00') AS day_high,
minIf(toFloat64(low), window_start >= '2026-07-07 00:00:00') AS day_low,
argMinIf(window_start, (toFloat64(low), toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-07 00:00:00') AS low_bar,
argMaxIf(window_start, (toFloat64(high), -toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-07 00:00:00') AS high_bar,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-07 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-06 13:30:00' AND window_start < '2026-07-06 20:00:00')
OR (window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 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,
formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
toHour(toTimeZone(high_bar, 'America/New_York')) * 60 + toMinute(toTimeZone(high_bar, 'America/New_York')) AS high_minute_et,
toHour(toTimeZone(low_bar, 'America/New_York')) * 60 + toMinute(toTimeZone(low_bar, 'America/New_York')) AS low_minute_et,
round((day_high / day_low - 1) * 100, 2) AS range_pct,
day_dollar_bn
FROM per_name
ORDER BY tickerTeradyne (-9.63%) và Intel (-9.59%) mất gần một phần mười giá trị, theo sát là Marvell (-7.41%), KLA (-7.23%), Lam Research (-6.8%) và AMD (-6.41%). Các mã lưu trữ và bộ nhớ vốn đã hồi phục một phần vào thứ Hai nay lại quay đầu giảm: SanDisk -7.1% trong biên độ dao động từ đỉnh xuống đáy là 10.36%, Western Digital -7.81%, Seagate -4.84%, và MU -4.61%. MU ghi nhận khối lượng giao dịch đạt $41.6 tỷ, cao hơn tổng ba mã lưu trữ còn lại cộng lại (bài phân tích chuyên sâu về MU có đề cập đến bối cảnh này).
Hai gã khổng lồ của ngành đứng ngoài đợt bán tháo: NVDA đóng cửa trong sắc xanh tại 0.67% và Broadcom kết phiên gần như đi ngang tại -0.83%, một ngày đỏ lửa trên toàn ngành, ngoại trừ các thành viên lớn nhất (bài phân tích chuyên sâu về NVDA tháng Sáu).
Thời điểm diễn ra đồng bộ, trong một khoảng trống giá vào buổi sáng: TER, LRCX và MU ghi nhận mức đáy phiên tại 10:41, 10:41 và 10:41 giờ ET, cùng với SanDisk, Marvell, KLA, AVGO và SOXL trong cùng vài phút (bảng dữ liệu hiển thị dấu thời gian cụ thể), và SOXS, ETF bán dẫn nghịch đảo ba lần, ghi nhận mức đỉnh phiên tại 10:42, một sự đảo ngược hoàn toàn. Intel tiếp tục giảm sâu sau khi các mã khác đã ổn định, với mức đáy xuất hiện tại 15:18. Các quỹ đòn bẩy phản ánh rõ quy mô biến động: SOXL -15.15% so với SOXS +15.87%.
Phía bên kia của bảng điện
Tỷ lệ mã giảm trên mã tăng là hai-trên-một, dù vẫn có một nhóm mã xanh. Những cổ phiếu tăng giá trong khi nhóm chip sụt giảm:
| Ticker | Đóng cửa trước | Mở cửa | Đóng cửa | Gap (%) | Trong phiên (%) | Thay đổi (%) | GTGD (tỷ $) |
|---|---|---|---|---|---|---|---|
| CRNX | 42.02 | 83.58 | 83.53 | 98.91 | -0.06 | 98.79 | 4.19 |
| CVX | 168.13 | 170.14 | 173.97 | 1.2 | 2.25 | 3.47 | 1.21 |
| JNJ | 259.33 | 264.89 | 267.29 | 2.14 | 0.91 | 3.07 | 1.92 |
| LLY | 1202.56 | 1232.88 | 1235.64 | 2.52 | 0.22 | 2.75 | 2.87 |
| META | 600.43 | 607.59 | 615.57 | 1.19 | 1.31 | 2.52 | 9.73 |
| TSLA | 419.77 | 416.96 | 402.88 | -0.67 | -3.38 | -4.02 | 13.36 |
| UNH | 418.1 | 423.95 | 428.18 | 1.4 | 1 | 2.41 | 1.61 |
| XOM | 136.49 | 138.56 | 141.65 | 1.52 | 2.23 | 3.78 | 1.63 |
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-07 00:00:00')) AS prior_close_raw,
toFloat64(argMinIf(open, window_start, window_start >= '2026-07-07 00:00:00')) AS day_open_raw,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-07 00:00:00')) AS day_close_raw,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-07 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-06 13:30:00' AND window_start < '2026-07-06 20:00:00')
OR (window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 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 tickerNăng lượng và y tế là hai nhóm dẫn dắt sắc xanh: Exxon +3.78%, Chevron +3.47%, Johnson & Johnson +3.07%, Eli Lilly +2.75%, UnitedHealth +2.41%. Hai cổ phiếu vốn hóa siêu lớn trong nhóm này có diễn biến trái chiều: META tăng +2.52% trong khi TSLA trả lại phần lớn đà tăng một chiều của thứ Hai tại mức -4.02%. Và giao dịch đáng chú ý nhất trên bảng điện: Crinetics Pharmaceuticals (CRNX) đóng cửa +98.79% với giá trị giao dịch đạt 4.19 tỷ đô la, tăng gần gấp đôi. Toàn bộ đà tăng này xuất hiện dưới dạng khoảng trống giá qua đêm (98.91% tại thời điểm mở cửa; phiên giao dịch chính chỉ đẩy giá thêm -0.06%), kiểu định giá lại giữa các phiên thường xảy ra tại nơi giao dịch trước giờ mở cửa. Dữ liệu không cho biết lý do cụ thể.
Nơi dòng tiền giao dịch
| Bảng xếp hạng | Ticker | KLGD ($ tỷ) | KL (triệu) | % dẫn đầu bảng |
|---|---|---|---|---|
| by dollars traded | MU | 41.6 | 45.3 | 100 |
| by dollars traded | SPY | 28.68 | 38.4 | 68.9 |
| by dollars traded | QQQ | 26.54 | 37.4 | 63.8 |
| by dollars traded | NVDA | 19.95 | 102.4 | 48 |
| by dollars traded | SNDK | 19.73 | 12.5 | 47.4 |
| by dollars traded | INTC | 13.82 | 124.8 | 33.2 |
| by shares traded | SOXS | 2.78 | 566.3 | 100 |
| by shares traded | BITO | 3.47 | 402.2 | 71 |
| by shares traded | TZA | 1.1 | 278.8 | 49.2 |
| by shares traded | CPOP | 0.02 | 161.3 | 28.5 |
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT leaderboard, ticker, dollar_volume_bn, shares_m,
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-07 13:30:00' AND window_start < '2026-07-07 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-07 13:30:00' AND window_start < '2026-07-07 20:00:00'
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY shares_m DESC
LIMIT 4
)
ORDER BY leaderboard ASC, if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m) DESCMU dẫn đầu bảng xếp hạng giá trị giao dịch với 41.6 tỷ đô la, chỉ một phiên sau khi nhường lại vị trí dẫn đầu, mã này đã lấy lại ngôi vị, theo sau là SPY (28.68 tỷ đô la) và QQQ (26.54 tỷ đô la), cùng ba cái tên khác trong ngành chip là NVDA (19.95 tỷ đô la), SNDK (19.73 tỷ đô la) và INTC (13.82 tỷ đô la) lấp đầy sáu vị trí dẫn đầu. Sự tập trung thanh khoản vào các mã đơn lẻ là điều mà khối lượng tương đối cảnh báo.
Trên bảng xếp hạng khối lượng cổ phiếu, SOXS đã giao dịch 566.3 triệu cổ phiếu, quỹ ETF bán khống nhân ba ngành bán dẫn này đứng đầu danh sách phiên thứ ba liên tiếp (thứ Hai và thứ Năm là các phiên ghi nhận trước đó), lần này là vào ngày mà lĩnh vực này thực sự sụt giảm. CPOP là bài học đối nghịch: 161.3 triệu cổ phiếu được giao dịch chỉ đạt giá trị 0.02 tỷ đô la, số lượng cổ phiếu thường làm các cổ phiếu giá rẻ trông có vẻ hấp dẫn hơn thực tế. Cơ sở dữ liệu: Giờ giao dịch thông thường ngày bảy tháng Bảy; một mã niêm yết bị trùng lặp đã được loại trừ trong khi chờ xác minh thực thể, các biên lai của nó.
Diễn biến phiên giao dịch
| Giờ ET | KL (tỷ) | % nhóm lớn nhất |
|---|---|---|
| 09:30 | 2 | 61.6 |
| 10:00 | 1.58 | 48.8 |
| 10:30 | 1.34 | 41.3 |
| 11:00 | 1.09 | 33.6 |
| 11:30 | 0.99 | 30.4 |
| 12:00 | 0.91 | 28.1 |
| 12:30 | 0.76 | 23.3 |
| 13:00 | 0.72 | 22.1 |
| 13:30 | 0.64 | 19.6 |
| 14:00 | 0.71 | 21.8 |
| 14:30 | 0.91 | 28.1 |
| 15:00 | 1.14 | 35.1 |
| 15:30 | 3.25 | 100 |
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
et_time,
round(sum(shares) / 1e9, 2) AS shares_bn,
round(100 * sum(shares) / max(sum(shares)) OVER (), 1) AS pct_of_biggest_bucket
FROM
(
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
toFloat64(volume) AS shares
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00'
UNION ALL
SELECT
'15:30' AS et_time,
toFloat64(size) AS shares
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-07-07 20:00:00' AND sip_timestamp < '2026-07-07 20:15:00'
AND has(conditions, 8)
)
GROUP BY et_time
ORDER BY et_time2 tỷ cổ phiếu trong nửa giờ đầu phiên, chạm đáy 0.64 tỷ vào lúc 13:30, và 3.25 tỷ cổ phiếu vào thời điểm đóng cửa 15:30, một mô hình đường cong thông thường với khối lượng giao dịch lớn nhất vào cuối phiên.
Bảng giao dịch quyền chọn
| Lệnh quyền chọn (triệu) | Hợp đồng (triệu) | % Call | % đáo hạn trong ngày | Hợp đồng trong ngày (triệu) | Hợp đồng SPY (triệu) | Hợp đồng QQQ (triệu) | Hợp đồng INTC (triệu) | Tài sản cơ sở (Top 1) | Giá thực hiện (Top 1) | Loại (Top 1) | Là Call (Top 1) | Khối lượng (Top 1) | Giá TB (Top 1) | Strike - Giá đóng cửa SPY | Tài sản cơ sở (Top 2) | Giá thực hiện (Top 2) | Loại (Top 2) | Là Put (Top 2) | Khối lượng (Top 2) | Giá TB (Top 2) | Giá đóng cửa SPY - Strike | Cả 2 đáo hạn trong ngày | Giá đóng cửa SPY |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10.6 | 61.13 | 55.6 | 31.2 | 19.08 | 12.48 | 8.36 | 0.69 | SPY | 749 | C | 1 | 873438 | 0.647 | 1.34 | SPY | 747 | P | 1 | 785834 | 0.88 | 0.66 | 2 | 747.66 |
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) = '260707', 1, 0) AS is_0dte
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-07 00:00:00' AND sip_timestamp < '2026-07-08 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-07 13:30:00' AND window_start < '2026-07-07 20:00:00'
) AS spy_regular_close
SELECT
round(count() / 1e6, 2) AS option_prints_m,
round(toFloat64(sum(size)) / 1e6, 2) AS 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) = '260707') / sum(size), 1) AS same_day_expiry_pct,
round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260707')) / 1e6, 2) AS same_day_contracts_m,
round(toFloat64(sumIf(size, underlying_symbol = 'SPY')) / 1e6, 2) AS spy_contracts_m,
round(toFloat64(sumIf(size, underlying_symbol = 'QQQ')) / 1e6, 2) AS qqq_contracts_m,
round(toFloat64(sumIf(size, underlying_symbol = 'INTC')) / 1e6, 2) AS intc_contracts_m,
top2.1[1] AS top_contract_underlying,
top2.2[1] AS top_contract_strike,
top2.3[1] AS top_contract_type,
if(top2.3[1] = 'C', 1, 0) AS top_contract_is_call,
top2.4[1] AS top_contract_volume,
top2.5[1] AS top_contract_avg_price,
round(top2.2[1] - spy_regular_close, 2) AS top_strike_minus_spy_close,
top2.1[2] AS second_contract_underlying,
top2.2[2] AS second_contract_strike,
top2.3[2] AS second_contract_type,
if(top2.3[2] = 'P', 1, 0) AS second_contract_is_put,
top2.4[2] AS second_contract_volume,
top2.5[2] AS second_contract_avg_price,
round(spy_regular_close - top2.2[2], 2) AS spy_close_minus_second_strike,
top2.6[1] + top2.6[2] AS both_top_contracts_same_day,
spy_regular_close AS spy_close
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-07 00:00:00' AND sip_timestamp < '2026-07-08 00:00:00'Khối lượng giao dịch quyền chọn đạt 61.13 triệu hợp đồng thông qua 10.6 triệu lệnh khớp, quy mô tương đương với thứ Hai, và các lệnh call vẫn chiếm 55.6% khối lượng trong một ngày thị trường giảm điểm. Các hợp đồng đáo hạn trong ngày chiếm 31.2% tổng khối lượng (19.08 triệu hợp đồng), đúng bằng tỷ trọng 0DTE của một ngày thứ Ba thông thường. Hai hợp đồng được giao dịch nhiều nhất trong ngày nằm ở hai phía của thời điểm đóng cửa, cả hai đều là các quyền chọn đáo hạn trong ngày với giá thực hiện SPY: quyền chọn call giá 749 (873438 hợp đồng với giá trung bình 0.647) kết thúc phiên ở trạng thái lỗ 1.34 (out of the money), và quyền chọn put giá 747 (785834 hợp đồng với giá 0.88) kết thúc ở trạng thái lỗ 0.66 ở phía đối diện. Mức đóng cửa 747.66 của SPY nằm giữa hai vị thế đặt cược lớn nhất trong ngày, và cả hai đều đáo hạn mà không còn giá trị.
Băng báo giá
Bên dưới mỗi mức giá trên trang này là luồng báo giá, hay còn gọi là National Best Bid and Offer (NBBO), được cập nhật liên tục cho mọi mã chứng khoán niêm yết. Đây là tập dữ liệu khó thu thập nhất trong kho dữ liệu của chúng tôi. Dữ liệu này được đo lường tại đây trong mọi phiên giao dịch, dù là phiên bình thường hay bất thường.
| Cập nhật 7/7 (triệu) | Cập nhật 6/7 (triệu) | % thay đổi theo ngày | Quote cuối 7/7 (ET) | Cập nhật giờ đóng cửa 7/7 (triệu) |
|---|---|---|---|---|
| 492.76 | 391.96 | 25.7 | 1199 | 77.13 |
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
round(countIf(toDate(sip_timestamp) = toDate('2026-07-07')) / 1e6, 2) AS jul7_updates_m,
round(countIf(toDate(sip_timestamp) = toDate('2026-07-06')) / 1e6, 2) AS jul6_updates_m,
round((countIf(toDate(sip_timestamp) = toDate('2026-07-07')) / countIf(toDate(sip_timestamp) = toDate('2026-07-06')) - 1) * 100, 1) AS day_over_day_pct,
toHour(toTimeZone(maxIf(sip_timestamp, toDate(sip_timestamp) = toDate('2026-07-07')), 'America/New_York')) * 60
+ toMinute(toTimeZone(maxIf(sip_timestamp, toDate(sip_timestamp) = toDate('2026-07-07')), 'America/New_York')) AS jul7_last_quote_et_minute,
round(countIf(sip_timestamp >= '2026-07-07 19:00:00' AND sip_timestamp < '2026-07-07 20:00:00') / 1e6, 2) AS jul7_close_hour_updates_m
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-08 00:00:00'Băng báo giá cổ phiếu ghi nhận 492.76 triệu cập nhật NBBO vào ngày 7 tháng 7, nhiều hơn 25.7% so với mức 391.96 triệu của ngày thứ Hai. Số lần báo giá lại tăng lên, nhưng biên độ báo giá không nới rộng:
| Ticker | Pocket spread (bps) | Midday spread (bps) | Chênh lệch spread (bps) | Cập nhật pocket (nghìn) | Cập nhật midday (nghìn) | Tỷ lệ quote | Cập nhật phiên (triệu) | Quote lỗi bị loại |
|---|---|---|---|---|---|---|---|---|
| AMD | 9.11 | 6.51 | 2.6 | 13.2 | 2.9 | 4.6 | 0.27 | 101 |
| INTC | 2.75 | 1.8 | 0.95 | 90.6 | 38.4 | 2.4 | 2.18 | 3498 |
| MU | 5.02 | 4.81 | 0.21 | 51.8 | 15.2 | 3.4 | 0.96 | 430 |
| NVDA | 1.04 | 1.01 | 0.03 | 122 | 44 | 2.8 | 2.41 | 266 |
| QQQ | 0.42 | 0.28 | 0.14 | 281.3 | 143.3 | 2 | 5.54 | 391 |
| SNDK | 8.65 | 8.89 | -0.24 | 19.1 | 4.6 | 4.1 | 0.3 | 91 |
| SOXL | 9.89 | 12.48 | -2.59 | 41.1 | 16.9 | 2.4 | 1.11 | 339 |
| SOXS | 19.59 | 21.07 | -1.49 | 50.1 | 13.4 | 3.8 | 0.95 | 0 |
| SPY | 0.27 | 0.27 | 0 | 237.9 | 70.6 | 3.4 | 4.23 | 803 |
| WDC | 10.77 | 12.01 | -1.25 | 6.3 | 2.3 | 2.7 | 0.13 | 22 |
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
ticker,
round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00'), 2) AS pocket_spread_bps,
round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00'), 2) AS midday_spread_bps,
round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00')
- quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00'), 2) AS spread_delta_bps,
round(countIf(sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00') / 1e3, 1) AS pocket_updates_k,
round(countIf(sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00') / 1e3, 1) AS midday_updates_k,
round(countIf(sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00') / countIf(sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00'), 1) AS quote_rate_ratio,
round(count() / 1e6, 2) AS session_updates_m,
countIf(bid_price <= 0 OR ask_price <= 0 OR bid_price > ask_price) AS dropped_invalid_quotes
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('AMD', 'INTC', 'MU', 'NVDA', 'QQQ', 'SNDK', 'SOXL', 'SOXS', 'SPY', 'WDC')
AND sip_timestamp >= '2026-07-07 13:30:00' AND sip_timestamp < '2026-07-07 20:00:00'
GROUP BY ticker
ORDER BY tickerTại các mức đáy buổi sáng, các mã được kiểm tra đã báo giá lại với tốc độ gấp nhiều lần so với giữa trưa, MU gấp 3.4 lần, SanDisk gấp 4.1 lần, AMD gấp 4.6 lần, và bid-ask spread hầu như không thay đổi: độ rộng trung vị của MU là 5.02 bps trong giai đoạn biến động so với 4.81 vào giữa trưa, NVDA là 1.04 so với 1.01, và SPY hoàn toàn không thay đổi (thay đổi 0 bps trên mức chạm 0.27 bps). Hai mã chịu thiệt hại thực sự về độ rộng là AMD (+2.6 bps) và Intel (+0.95 bps). Intel là mã duy nhất tiếp tục giảm sau giai đoạn biến động, trong khi cặp quỹ đòn bẩy thực tế lại thu hẹp biên độ tại đáy (SOXL -2.59 bps, SOXS -1.49 bps). Một khoảng trống thanh khoản thường biểu hiện qua các báo giá rộng và sự im ắng; nhưng ở đây lại là điều ngược lại, một cơn bão báo giá với mức giá chạm (touch) được giữ cố định. Chi phí giao dịch vẫn phụ thuộc vào từng mã: SOXS báo giá rộng 19.59 bps tại đáy so với 1.04 bps của NVDA.
| Spread TB 7/7 (cents) | Xếp hạng độ chặt | Số phiên so sánh | Phiên chặt nhất (cents) | Phiên rộng nhất (cents) | Phiên đầu | Quote lỗi bị loại |
|---|---|---|---|---|---|---|
| 1.809 | 1 | 21 | 1.809 | 2.865 | 2026-06-05 | 41883 |
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-07')), 3) AS jul7_avg_spread_cents,
arrayCount(x -> x < anyIf(avg_spread_cents, d = toDate('2026-07-07')), groupArrayIf(avg_spread_cents, d != toDate('2026-07-07'))) + 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-08 00:00:00')
AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY d
)Và đây là phần kiểm tra thông thường được thực hiện mỗi phiên: xét theo spread báo giá trung bình có trọng số cập nhật, ngày 7 tháng 7 là phiên giao dịch có spread hẹp nhất trong tháng của SPY, đạt 1.809 cent, xếp hạng 1 trên tổng số 21, so với mức rộng nhất trong tháng là 2.865 cent. Một băng báo giá đỏ với tỷ lệ hai-trên-một được định giá tại mức chạm chỉ số hẹp nhất tháng là một thực tế mà chỉ luồng báo giá mới có thể xác định.
| Số dòng quote option 7/7 | Cập nhật quote option 7/7 (tỷ) | Cập nhật quote option 6/7 (tỷ) | % thay đổi theo ngày | Cập nhật quote cổ phiếu 7/7 (triệu) | Tỷ lệ option/cổ phiếu 7/7 |
|---|---|---|---|---|---|
| 8694614147 | 8.69 | 6.49 | 34 | 492.76 | 17.6 |
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 toYYYYMMDD(sip_timestamp) = 20260707
) AS jul7_option_rows,
(
SELECT count()
FROM global_markets.cache_options_quotes
WHERE toYYYYMMDD(sip_timestamp) = 20260706
) AS jul6_option_rows,
(
SELECT count()
FROM global_markets.cache_stocks_quotes
WHERE toYYYYMMDD(sip_timestamp) = 20260707
) AS jul7_stock_quote_rows
SELECT
jul7_option_rows AS jul7_option_quote_rows,
round(jul7_option_rows / 1e9, 2) AS jul7_option_quote_updates_bn,
round(jul6_option_rows / 1e9, 2) AS jul6_option_quote_updates_bn,
round((jul7_option_rows / jul6_option_rows - 1) * 100, 1) AS day_over_day_pct,
round(jul7_stock_quote_rows / 1e6, 2) AS jul7_stock_quote_updates_m,
round(jul7_option_rows / jul7_stock_quote_rows, 1) AS jul7_option_to_stock_ratioLuồng báo giá quyền chọn thậm chí còn lớn hơn và là tập dữ liệu lớn nhất trong kho của chúng tôi. Ngày 7 tháng 7 ghi nhận 8.69 tỷ cập nhật NBBO quyền chọn, gấp 17.6 lần quy mô toàn bộ băng báo giá cổ phiếu của cùng phiên đó (492.76 triệu cập nhật). Băng báo giá quyền chọn ngày thứ Hai đạt 6.49 tỷ, nghĩa là luồng quyền chọn đã mở rộng 34% so với phiên trước, song hành với mức 25.7% của luồng cổ phiếu.
| Cập nhật option SPY (triệu) | % tổng quote thị trường | Hợp đồng SPY được quote | Cập nhật trong ngày (triệu) | Giá SPY trong pocket | Giá SPY midday | Pocket ATM spread ($) | Midday ATM spread ($) | Chênh lệch ATM spread ($) | Cập nhật ATM (k) | Cập nhật ATM giữa ngày (k) | Tỷ lệ quote ATM | Quote lỗi bị loại |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 327.55 | 66.5 | 9116 | 13.61 | 746 | 749.08 | 0.01 | 0.01 | 0 | 191.1 | 64 | 3 | 42872 |
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH
(
SELECT count()
FROM global_markets.cache_stocks_quotes
WHERE toYYYYMMDD(sip_timestamp) = 20260707
) AS jul7_stock_quote_rows,
(
SELECT round(toFloat64(avg(close)), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= '2026-07-07 14:36:00' AND window_start < '2026-07-07 14:48:00'
) AS spy_pocket_price,
(
SELECT round(toFloat64(avg(close)), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= '2026-07-07 17:30:00' AND window_start < '2026-07-07 17:42:00'
) AS spy_midday_price
SELECT
round(count() / 1e6, 2) AS spy_option_updates_m,
round(100.0 * count() / jul7_stock_quote_rows, 1) AS pct_of_whole_equity_quote_tape,
uniqExact(ticker) AS spy_contracts_quoted,
round(countIf(substring(ticker, -15, 6) = '260707') / 1e6, 2) AS same_day_updates_m,
spy_pocket_price AS spy_price_in_pocket,
spy_midday_price AS spy_price_midday,
round(quantileExactIf(0.5)(toFloat64(ask_price - bid_price),
bid_price > 0 AND ask_price >= bid_price
AND substring(ticker, -15, 6) = '260707'
AND abs(toFloat64(toUInt32OrZero(substring(ticker, -8))) / 1000 - spy_pocket_price) <= 2
AND sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00'), 3) AS pocket_atm_spread_dollars,
round(quantileExactIf(0.5)(toFloat64(ask_price - bid_price),
bid_price > 0 AND ask_price >= bid_price
AND substring(ticker, -15, 6) = '260707'
AND abs(toFloat64(toUInt32OrZero(substring(ticker, -8))) / 1000 - spy_midday_price) <= 2
AND sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00'), 3) AS midday_atm_spread_dollars,
round(pocket_atm_spread_dollars - midday_atm_spread_dollars, 3) AS atm_spread_delta_dollars,
round(countIf(substring(ticker, -15, 6) = '260707'
AND abs(toFloat64(toUInt32OrZero(substring(ticker, -8))) / 1000 - spy_pocket_price) <= 2
AND sip_timestamp >= '2026-07-07 14:36:00' AND sip_timestamp < '2026-07-07 14:48:00') / 1e3, 1) AS pocket_atm_updates_k,
round(countIf(substring(ticker, -15, 6) = '260707'
AND abs(toFloat64(toUInt32OrZero(substring(ticker, -8))) / 1000 - spy_midday_price) <= 2
AND sip_timestamp >= '2026-07-07 17:30:00' AND sip_timestamp < '2026-07-07 17:42:00') / 1e3, 1) AS midday_atm_updates_k,
round(pocket_atm_updates_k / midday_atm_updates_k, 1) AS atm_quote_rate_ratio,
countIf(NOT (bid_price > 0 AND ask_price >= bid_price)
AND substring(ticker, -15, 6) = '260707') AS dropped_invalid_same_day_quotes
FROM global_markets.cache_options_quotes
WHERE ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
AND sip_timestamp >= '2026-07-07 13:30:00' AND sip_timestamp < '2026-07-07 20:00:00'
HAVING pocket_atm_updates_k > 0 AND midday_atm_updates_k > 0Chỉ riêng các hợp đồng SPY đáo hạn năm 2026 đã chiếm 327.55 triệu cập nhật trong giờ giao dịch chính, phân bổ trên 9116 hợp đồng niêm yết. Con số đó bằng 66.5% tổng số báo giá của toàn bộ thị trường cổ phiếu cùng ngày, chỉ từ một tài sản cơ sở. Các hợp đồng đáo hạn trong ngày tạo nên băng báo giá 0DTE chiếm 13.61 triệu trong số đó.
Trong mười hai phút xảy ra khoảng trống giá buổi sáng, các hợp đồng đáo hạn trong ngày có giá gần mức giá hiện tại (near-the-money) đã báo giá với mức trung vị rộng $0.01, chính xác bằng mức báo giá trong giai đoạn kiểm soát giữa trưa ($0.01, với delta là 0). Tốc độ báo giá trên cặp hợp đồng đó chạy gấp 3 lần: 191.1 nghìn cập nhật tại các mức đáy so với 64 nghìn vào giờ nghỉ trưa. Mức chạm của quyền chọn đã phản ứng tương tự như cổ phiếu. Nó giữ nguyên độ rộng trong khi bộ máy báo giá hoạt động hết công suất. Near-the-money nghĩa là giá thực hiện (strike price) nằm trong phạm vi $2 so với giá trung bình của SPY trong cùng khung thời gian, và bảng dữ liệu hiển thị cả hai mức giá (746 trong giai đoạn biến động, 749.08 vào giữa trưa).
Lãi suất: đường cong lợi suất giảm cùng với nhóm cổ phiếu tăng trưởng
| Điểm đường cong | Lợi suất 7/7 (%) | Thay đổi phiên (bp) |
|---|---|---|
| 1 month | 3.69 | 0 |
| 3 month | 3.86 | -1 |
| 1 year | 4.06 | 11 |
| 2 year | 4.19 | 6 |
| 5 year | 4.27 | 6 |
| 10 year | 4.55 | 7 |
| 30 year | 5.05 | 6 |
| 2s10s spread | 0.36 | 1 |
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 jul7_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-07') AS d,
(SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-06') AS p
)Trái phiếu kho bạc giảm giá cùng với nhóm cổ phiếu tăng trưởng. Lợi suất kỳ hạn một năm tăng 11 điểm cơ bản lên 4.06%, kỳ hạn mười năm tăng 7 điểm lên 4.55%, và kỳ hạn ba mươi năm tăng 6 điểm lên 5.05%, vượt ngưỡng năm phần trăm. Chênh lệch lợi suất 2s10s duy trì ở mức 0.36 điểm phần trăm (thay đổi 1 điểm cơ bản): đây chủ yếu là một sự dịch chuyển song song, không phải là sự thay đổi hình dạng đường cong.
Lịch sự kiện trong ngày
| Ngày GDKHQ | Tách cổ phiếu | Gộp cổ phiếu | Tách cổ phiếu | IPO niêm yết | Hồ sơ SEC | Hồ sơ nội bộ (Form 4) | Hồ sơ 8-K | Bài báo | Đơn vị xuất bản | Ticker được đưa tin nhiều nhất | NVDA dẫn đầu tin tức | Số bài báo về ticker dẫn đầu | Khoảng cách với ticker tiếp theo | Bài báo CRNX |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 80 | 7 | 5 | 2 | 1 | 2438 | 463 | 173 | 215 | 3 | NVDA | 1 | 17 | 4 | 0 |
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-07'
) AS news,
(
SELECT (argMax(t, n), 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-07'
)
WHERE t != 'SPCX'
GROUP BY t
)
) AS top_news
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-07') AS ex_dividend_records,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-07') AS splits_executed,
(SELECT countIf(toFloat64(split_from) > toFloat64(split_to)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-07') AS reverse_splits,
(SELECT countIf(toFloat64(split_to) > toFloat64(split_from)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-07') AS forward_splits,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-07') AS ipos_listed,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-07') AS sec_filings,
(SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-07') AS insider_form4_filings,
(SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-07') AS filings_8k,
news.1 AS news_articles,
news.2 AS news_publishers,
top_news.1 AS most_covered_ticker,
if(top_news.1 = 'NVDA', 1, 0) AS most_covered_is_nvda,
top_news.2 AS most_covered_articles,
top_news.3 AS most_covered_lead_over_next,
(SELECT countIf(has(tickers, 'CRNX')) FROM global_markets.stocks_news
WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-07') AS crnx_articles80 hồ sơ cổ tức đã đến ngày giao dịch không hưởng quyền, 7 đợt chia tách cổ phiếu được thực hiện, trong đó 5 là các đợt chia tách ngược, hình thức hợp nhất cổ phiếu dưới một đô la nhằm tạo ra mức "tăng giá" ba chữ số giả tạo trên bảng điện chưa điều chỉnh, so với 2 đợt chia tách xuôi, và 1 mã niêm yết mới đã xuất hiện. Chỉ số SEC ghi nhận 2438 hồ sơ nộp: 463 Mẫu 4, 173 báo cáo 8-K. Nguồn tin của chúng tôi đã đăng tải 215 bài viết từ 3 nhà xuất bản; cái tên được đưa tin nhiều nhất là NVDA với 17 bài viết, vượt 4 so với cái tên đứng sau, chính là NVDA, mã cổ phiếu đã đóng cửa trong sắc xanh bất chấp một ngày đỏ lửa của ngành. Nguồn tin cũng đăng tải 0 bài viết về CRNX, mã tăng giá mạnh nhất trên bảng điện, thu hút sự chú ý của một nguồn tin thay vì truyền thông đại chúng.
Phiên giao dịch đã được xác minh
| Bar SPY đầu (ET) | Bar SPY cuối (ET) | Bar phút SPY | Bar phiên thường | Số phiên trong ngày | Dòng nghỉ lễ 7/7 | Ngày nghỉ tiếp theo | Tên ngày nghỉ |
|---|---|---|---|---|---|---|---|
| 04:00 | 19:59 | 902 | 390 | 1 | 0 | 2026-09-07 | Labor Day |
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-07 13:30:00' AND window_start < '2026-07-07 20:00:00') AS regular_session_bars,
uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-07 13:30:00' AND window_start < '2026-07-07 20:00:00') AS day_sessions,
(SELECT count() FROM global_markets.stocks_market_holidays WHERE date = '2026-07-07') AS jul7_holiday_rows,
(SELECT toString(min(date)) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-07' AND status = 'closed') AS next_closure_date,
(SELECT argMin(name, date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-07' AND status = 'closed') AS next_closure_name
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-07 00:00:00' AND window_start < '2026-07-08 00:00:00'Ngày 7 tháng 7 là một phiên giao dịch đầy đủ, không phải phiên đóng cửa sớm: các thanh giá của SPY chạy từ 04:00 đến 19:59 theo giờ New York với chính xác 390 thanh giá trong khung giờ giao dịch thông thường, và bảng ngày nghỉ lễ có 0 hàng cho ngày này. Ngày đóng cửa theo lịch trình tiếp theo là Labor Day, 2026-09-07.
Ghi chú dữ liệu
- Khối lượng giao dịch theo đô la là chỉ số đại diện theo phút, được tính bằng giá đóng cửa nhân với khối lượng trong mỗi thanh một phút, trong giờ giao dịch chính thức.
- Khung thời gian nửa giờ cuối trong bảng khối lượng bao gồm các lệnh khớp tại phiên đóng cửa. Các thanh một phút không bao gồm các lệnh khớp này, vì vậy khung nửa giờ sẽ cộng dồn từng giao dịch có điều kiện khớp lệnh đóng cửa, được ghi nhận từ 4:00 đến 4:15 chiều giờ ET trên băng tin hợp nhất, vào nhóm cuối cùng.
- Sự phân tách giữa khoảng trống giá (gap) và đà tăng/giảm dần (grind) được đo lường từ thanh giao dịch chính thức đầu tiên của mỗi mã (giá mở cửa) so với giá đóng cửa chính thức của phiên trước đó; phần còn lại là biến động từ mở cửa đến đóng cửa trong ngày 7 tháng Bảy.
- Các mức đáy buổi sáng đồng bộ đã được đối chiếu với các thanh liền kề tại thời điểm viết bài, mỗi mức đáy được xác định bởi các phút lân cận, không phải từ một lệnh khớp đơn lẻ; không có trường hợp nào cần đánh dấu bất thường. Trường hợp một mức giá cực đoan xuất hiện trong nhiều hơn một phút, bảng sẽ hiển thị thanh sớm nhất (quy tắc ưu tiên xác định).
- Một mã chứng khoán được tái sử dụng bị loại khỏi bảng xếp hạng khối lượng và các thông báo tin tức trong khi chờ xác minh thực thể; bài viết riêng về mã này chứa các dữ liệu xác thực.
- Số liệu thống kê về spread báo giá loại trừ các báo giá không hợp lệ (các bản ghi NBBO một phía hoặc chéo), và mỗi bảng spread đều đếm số lượng bị loại bỏ trong một cột riêng. "Spread trung bình trọng số theo cập nhật" tính toán độ rộng báo giá trung bình trên mỗi bản cập nhật NBBO hợp lệ, các thời điểm thị trường sôi động sẽ có trọng số lớn hơn; đây là số liệu thống kê về báo giá, không phải chi phí trên mỗi giao dịch.
- Các báo giá quyền chọn ngày 7 tháng Bảy được cập nhật sau khi bài viết này xuất bản lần đầu.
cache_options_quotescó độ trễ nạp dữ liệu lớn nhất trong hệ thống, vì vậy phiên bản đầu tiên hiển thị trạng thái không có dữ liệu tại các bảng báo giá quyền chọn. Sau khi các hàng dữ liệu được nạp, phiên bản sửa đổi này phản ánh 8.69 tỷ bản cập nhật của phiên. Băng tin báo giá cổ phiếu đã hoàn thiện ngay từ đầu: bản cập nhật cuối cùng của ngày 7 tháng Bảy được ghi nhận vào phút 1199 giờ ET, với 77.13 triệu bản cập nhật trong giờ giao dịch chính thức cuối cùng (các cột ghi nhận trong bảng băng tin báo giá). - Độ rộng báo giá quyền chọn được đo lường tại các mức giá gần giá thị trường (near the money). Giá trị trung vị trên mỗi bản cập nhật của tất cả các hợp đồng niêm yết trong ngày là một số liệu thống kê tổng hợp: các hợp đồng có giá trị nội tại cao (deep in-the-money) có độ rộng báo giá lớn, các hợp đồng xa giá thị trường (far out-of-the-money) có độ rộng báo giá nhỏ, và các hợp đồng được báo giá lại thay đổi trong suốt phiên. So sánh giữa giai đoạn đầu phiên và giữa phiên chỉ giới hạn ở các mức giá thực hiện (strike) trong phạm vi hai đô la so với giá trung bình của SPY trong mỗi khung thời gian, và cả hai mức giá đều là các cột trong bảng. Các báo giá quyền chọn không hợp lệ (một phía hoặc chéo) được tính vào bảng đó, không bị loại bỏ âm thầm.
- Dữ liệu giao dịch trái phiếu kho bạc ngày 7 tháng Bảy được nạp trễ một phiên, phiên bản đầu tiên đã hiển thị thông báo về độ trễ này; cảnh báo đã được kích hoạt vào ngày 8 tháng Bảy khi dữ liệu được nạp, và bản sửa đổi này chứa đường cong lợi suất thực tế.
Phương pháp luận
- Giai đoạn phân tích là một phiên giao dịch đơn lẻ (phiên 1, được xác minh từ các thanh dữ liệu quan sát được và lịch nghỉ lễ, không dựa trên giả định). Dấu thời gian được lưu trữ theo giờ UTC và chuyển đổi sang giờ New York trong các truy vấn. "Đóng cửa" (Close) nghĩa là thanh dữ liệu phút cuối cùng của phiên giao dịch thường lệ; thay đổi trong ngày so sánh ngày 7 tháng 7 với ngày 6 tháng 7, là các phiên giao dịch liên tiếp.
- Các cột số thập phân được chuyển đổi sang định dạng số thực 64-bit trước khi thực hiện các phép tính tỷ lệ; ngày đáo hạn quyền chọn được phân tích lại từ ticker của OCC (cột ngày đáo hạn của bảng dữ liệu bị lỗi). Tất cả các bảng dữ liệu được đọc một lần tại thời điểm soạn thảo thông qua đường dẫn chỉ đọc (read-only) được kiểm soát. Trạng thái kho dữ liệu tính đến ngày 8 tháng 7 năm 2026.
- Phần dữ liệu quote-tape được thêm vào trong bản sửa đổi ngày 8 tháng 7 (cùng bản sửa đổi thay thế biên nhận độ trễ trái phiếu kho bạc bằng dữ liệu giao dịch thực tế), và các bảng quote quyền chọn đã được viết lại sau khi các hàng NBBO quyền chọn của ngày 7 tháng 7 được cập nhật. Việc tạo dữ liệu được thiết kế theo dạng xử lý hàng loạt (batch job): bảng quote quyền chọn SPY quét qua vài trăm triệu bản ghi NBBO, trong khi số lượng tape-size đọc tổng số hàng của chính các phân vùng dữ liệu trong ngày, đây là cách một bảng chứa hàng tỷ hàng mỗi phiên có thể trả về kết quả đếm trong chưa đầy một giây.
Mỗi bảng dữ liệu là một kết quả truy vấn được lưu trữ; biểu đồ, bảng và SQL là một đối tượng duy nhất. Bạn có thể dán bất kỳ mục nào trong số đó vào terminal Strasmore và tùy chỉnh theo ý muốn. Phiên giao dịch trước: Ngày 6 tháng 7.