Strasmore Research
Tổng hợp thị trường Matt ConnorBởi Matt Connor · Cập nhật 2026-09-28

Tóm tắt thị trường ngày 2 tháng 7 năm 2026

Luân chuyển dòng tiền trước Quốc khánh: độ rộng tăng dù Nasdaq giảm, công nghệ đứng cuối trong mười một quỹ ngành, nhóm bộ nhớ giảm ngày hai và cú phân kỳ gây ảo giác bán tháo.

Thứ Năm, ngày 2 tháng 7 năm 2026, phiên giao dịch cuối cùng trước khi thị trường đóng cửa nhân dịp Quốc khánh, là một ngày luân chuyển dòng tiền nhưng mang tiêu đề như một phiên bán tháo. QQQ ghi nhận -1.71%, trong khi DIA tăng 1.04%. Độ rộng thị trường POSITIVE: 3398 mã thanh khoản cao tăng giá so với 2758 mã giảm giá, với 54.6% toàn thị trường tăng giá dù chỉ số nhóm tăng trưởng giảm. Tám trong số 11 quỹ ngành đóng cửa cao hơn. Áp lực bán tập trung ở nhóm công nghệ và nhóm cổ phiếu bộ nhớ, vốn đã sụt giảm trong phiên trước.

Bảng điểm

Truy vấnSPY / QQQ / DIA / IWM: ngày 2/7 so với giá đóng cửa ngày 1/7, giờ giao dịch chính thức
TickerGiá đóng cửa trướcGiá mở cửa trong ngàyGiá đóng cửa trong ngày% thay đổiGiá cao nhất trong ngàyGiá thấp nhất trong ngàyKhối lượng cổ phiếu giao dịch (triệu)
DIA522.41525.49527.831.04528.26523.733
IWM299.31300.54297.53-0.59302.23294.9818.5
QQQ725.16725.58712.74-1.71730.83707.5643.7
SPY745.69747.4744.8-0.12751.31740.0343.9
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-01 13:30:00' AND window_start < '2026-07-01 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-02 13:30:00' AND window_start < '2026-07-02 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_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
Tự chạy truy vấn này

DIA ở mức 1.04% so với QQQ ở mức -1.71% là toàn bộ diễn biến trong ngày, khi nhóm công nghiệp và nhóm tăng trưởng chênh nhau gần ba điểm phần trăm về lợi suất trong ngày. SPY nằm ở giữa với mức -0.12%; IWM đóng cửa ở -0.59%.

Ngày giao dịch này có bất thường không?

Hai góc nhìn trong cùng một biểu đồ: biến động từ lúc mở cửa đến lúc đóng cửa của SPY và biến động giá đóng cửa qua hai phiên liên tiếp của QQQ. Mỗi chỉ số được xếp hạng theo quy mô tuyệt đối so với tháng trước (hạng 1 = lớn nhất).

Truy vấnSPY và QQQ xếp hạng so với tháng phiên gần nhất (hạng 1 = biến động tuyệt đối lớn nhất)
SPY % mở cửa–đóng cửaXếp hạng biến động tuyệt đối của SPYSố phiên SPY so sánhQQQ % đóng cửa–đóng cửaXếp hạng biến động tuyệt đối của QQQSố phiên QQQ so sánhPhiên đầu tiên
-0.351522-1.719212026-06-02
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH per_day AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           (argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS oc_pct,
           argMax(toFloat64(close), window_start) AS rth_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ')
      AND window_start >= toDateTime('2026-06-02 00:00:00')
      AND window_start < toDateTime('2026-07-03 00:00:00')
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    GROUP BY ticker, d
),
with_prev AS (
    SELECT ticker, d, oc_pct,
           lagInFrame(rth_close) OVER (PARTITION BY ticker ORDER BY d) AS prev_close,
           (rth_close / lagInFrame(rth_close) OVER (PARTITION BY ticker ORDER BY d) - 1) * 100 AS cc_pct
    FROM per_day
)
SELECT
    round(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-02')), 2) AS spy_open_to_close_pct,
    arrayCount(x -> x > abs(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-02'))),
               groupArrayIf(abs(oc_pct), ticker = 'SPY' AND d != toDate('2026-07-02'))) + 1 AS spy_abs_move_rank,
    countIf(ticker = 'SPY') AS spy_sessions_compared,
    round(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-02')), 2) AS qqq_close_over_close_pct,
    arrayCount(x -> x > abs(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-02'))),
               groupArrayIf(abs(cc_pct), ticker = 'QQQ' AND d != toDate('2026-07-02') AND isFinite(cc_pct) AND prev_close > 0)) + 1 AS qqq_abs_move_rank,
    countIf(ticker = 'QQQ' AND isFinite(cc_pct) AND prev_close > 0) AS qqq_sessions_compared,
    toString(minIf(d, ticker = 'SPY')) AS first_session
FROM with_prev
Tự chạy truy vấn này

Ở cấp độ chỉ số, không. Biến động từ lúc mở cửa đến lúc đóng cửa của SPY là -0.35%, xếp hạng 15 trong 22 phiên gần nhất, thuộc nửa dưới. QQQ biến động mạnh hơn nhưng vẫn chưa ở mức cực đoan: biến động giá đóng cửa qua hai phiên liên tiếp của QQQ là -1.71%, xếp hạng 9 trong 21 phiên có giá đóng cửa phiên trước được xác định, tính từ 2026-06-02. Đây là một phiên giảm thuộc nhóm trung bình đối với chỉ số tăng trưởng. Diễn biến ở nhóm cổ phiếu riêng lẻ mới là điểm đáng chú ý trong ngày 2 tháng 7.

Breadth: green tape, red growth index

Truy vấnMã tăng so với mã giảm, trong số các ticker có giá trị giao dịch ít nhất $1M vào ngày 2/7
Mã tăng giáMã giảm giáMã không đổiTicker thanh khoảnTicker giao dịch trong cả hai phiênLoại khỏi bộ lọc thanh khoản% mã tăng giáMã tăng giá (định dạng)Mã giảm giá (định dạng)Loại khỏi bộ lọc thanh khoản (định dạng)Ticker giao dịch trong cả hai phiên (định dạng)
3398275863621911536531754.63,3982,7585,31711,536
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-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') AS day_dollar_volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE (window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
       OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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,
    reverse(arrayStringConcat(extractAll(reverse(toString(countIf(day_close > prior_close AND day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS advancers_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(countIf(day_close < prior_close AND day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS decliners_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(count() - countIf(day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS dropped_by_liquidity_filter_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(count())), '[0-9]{1,3}'), ',')) AS tickers_traded_both_sessions_fmt
FROM per_ticker
WHERE prior_close > 0 AND day_close > 0
Tự chạy truy vấn này

3,398 advancers, 2,758 decliners, 63 unchanged, 54.6% of the liquid tape rose while QQQ fell. Cap-weighted indexes and equal-count breadth answered differently; days like this are why both get a panel. The filter drops 5,317 of 11,536 dual-session tickers under $1 million traded.

Theo từng nhóm ngành: sắc xanh phân bổ ở đâu

Độ rộng thị trường cho biết có bao nhiêu mã tăng hoặc giảm, nhưng không cho biết đó là những nhóm nào. Mười một quỹ ngành SPDR phân tách phiên giao dịch theo từng ngành. Khoảng cách giữa nhóm tốt nhất và kém nhất là thước đo dispersion của phiên, được cô đọng trong một con số.

Truy vấnMười một ETF ngành SPDR: giá đóng cửa ngày 2/7 so với ngày 1/7, giờ giao dịch chính thức
TickerGiá đóng cửa trướcGiá đóng cửa trong ngày% thay đổiĐiểm cao hơn ngành kém nhấtGiá trị giao dịch trong ngày (tỷ $)
XLB5151.991.944.650.57
XLC109.74109.6-0.132.580.83
XLE52.8253.230.783.481.46
XLF54.7955.611.54.22.36
XLI183.41183.910.272.981.15
XLK185.54180.52-2.7102.43
XLP83.338524.711.33
XLRE44.1844.691.153.860.22
XLU44.7645.762.234.941.05
XLV159.57163.772.635.342.01
XLY118.07117.11-0.811.891.2
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH per_etf AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
      AND ((window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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_close / prior_close - 1) * 100 - min((day_close / prior_close - 1) * 100) OVER (), 2) AS pts_above_worst_sector,
    day_dollar_bn
FROM per_etf
ORDER BY ticker
Tự chạy truy vấn này

Health care (XLV) dẫn đầu với 2.63%, tiếp theo là utilities 2.23%, staples 2% và materials 1.94%. Technology (XLK) đứng cuối với -2.71%, là ngành duy nhất giảm hơn một điểm. Consumer discretionary (-0.81%) và communication services (-0.13%) là hai quỹ ngành giảm điểm còn lại; tám quỹ khác đều tăng. Dispersion từ cao nhất đến thấp nhất là 5.34 điểm phần trăm. Chênh lệch DIA tăng/QQQ giảm diễn ra trên toàn thị trường, không chỉ ở bốn cổ phiếu megacap. Vì vậy, đường advance-decline màu xanh khi Nasdaq giảm không hề mâu thuẫn.

Điểm nhấn trong ngày: nhóm cổ phiếu memory lao dốc, ngày thứ hai

Nhóm đã giảm mạnh vào thứ Tư tiếp tục rơi sâu hơn trong phiên thứ Năm. Mức độ biến động và sự đồng biến là điểm đáng chú ý, không phải nguyên nhân.

Truy vấnNhóm cổ phiếu memory và storage: thay đổi so với giá đóng cửa thứ Tư, thời điểm trong biên độ và dollar volume
TickerGiá đóng cửa trướcGiá đóng cửa trong ngày% thay đổiGiá cao nhất trong ngàyMức cao nhất trong ngày (ET)Giá thấp nhất trong ngàyMức thấp nhất trong ngày (ET)Biên độ (%)Giá trị giao dịch trong ngày (tỷ $)
MU1033.29975.77-5.571064.6410:03950.2815:2612.0351.4
SNDK2035.071743.59-14.322052.5409:35169315:2621.2426.57
STX915.25820.25-10.38923.0609:53795.6614:2316.014.74
WDC598.37538.99-9.92609.4609:35525.8413:5915.94.31
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-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-02 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-02 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-02 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-02 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('MU', 'SNDK', 'STX', 'WDC')
      AND ((window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker
Tự chạy truy vấn này

SanDisk ghi nhận -14.32%, Seagate -10.38%, Western Digital -9.92% và MU -5.57%, với giá trị giao dịch MU đạt $51.4 tỷ, xấp xỉ gấp một-phẩy-năm lần SPY. MU và SanDisk chạm mức thấp trong phiên muộn (15:26, 15:26 ET), còn Seagate và Western Digital chạm đáy sớm hơn (14:23, 13:59). Bối cảnh: phiên thứ Tư và phân tích chuyên sâu về MU.

Nửa còn lại của sự luân chuyển diễn ra ở nhóm megacap:

Truy vấnLuân chuyển megacap: thay đổi so với giá đóng cửa thứ Tư, thời điểm trong biên độ và dollar volume
TickerGiá đóng cửa trướcGiá đóng cửa trong ngày% thay đổiGiá cao nhất trong ngàyMức cao nhất trong ngày (ET)Giá thấp nhất trong ngàyMức thấp nhất trong ngày (ET)Biên độ (%)Giá trị giao dịch trong ngày (tỷ $)
AAPL294.25308.224.75309.4215:57293.6809:305.3618.36
MSFT384.22389.621.41392.215:11383.709:352.2212.58
NVDA197.58194.51-1.55200.0610:03192.3513:404.0121.18
TSLA425.34392.81-7.65432.3509:31389.315:2311.0625.41
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-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-02 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-02 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-02 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-02 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'TSLA')
      AND ((window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker
Tự chạy truy vấn này

AAPL tăng 4.75% theo một đường đi gần như một chiều, chạm mức thấp lúc 09:30 ET và mức cao lúc 15:57, ba phút trước khi đóng cửa. Trong khi đó, TSLA biến động theo hình ảnh đối lập, ở mức -7.65%. MSFT tăng thêm 1.41%; NVDA đóng cửa ở -1.55%. Cùng một chỉ số, diễn biến trái chiều trong ngày.

Dòng tiền giao dịch ở đâu

Truy vấnDẫn đầu volume theo hai cách: top 6 theo giá trị giao dịch, top 4 theo số cổ phiếu giao dịch (loại một mã trùng đang chờ xác minh pháp nhân)
TickerBảng xếp hạngKhối lượng USD (tỷ)Giá trị USD (triệu)Cổ phiếu (triệu)% so với mã dẫn đầu bảng
MUby dollars traded51.4None51.9100
SPYby dollars traded32.7None43.963.6
QQQby dollars traded31.3None43.760.9
SNDKby dollars traded26.57None14.651.7
TSLAby dollars traded25.41None63.649.4
NVDAby dollars traded21.18None108.641.2
SOXSby shares traded3.24None748.2100
TZAby shares traded1.27None325.743.5
LIMNby shares traded0.0442245.732.8
BITOby shares traded1.71None204.927.4
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT ticker, leaderboard, dollar_volume_bn, if(dollar_volume_bn < 1, dollar_volume_m, NULL) AS dollar_value_m, 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(close) * toFloat64(volume)) / 1e6, 0) AS dollar_volume_m,
        round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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(close) * toFloat64(volume)) / 1e6, 0) AS dollar_volume_m,
        round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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) DESC
Tự chạy truy vấn này

MU dẫn đầu về giá trị giao dịch ở mức 51.4 tỷ USD trong phiên thứ tư liên tiếp (thứ Hai, thứ Ba, thứ Tư), so với 32.7 tỷ USD của SPY. SanDisk có 26.57 tỷ USD, đưa thêm một cổ phiếu ngành bộ nhớ vào nhóm bốn mã dẫn đầu. SOXS, ETF semiconductor inverse 3x, dẫn đầu về khối lượng cổ phiếu với 748.2 triệu cổ phiếu. Cổ phiếu giá thấp thường dẫn đầu về số lượng cổ phiếu, còn cổ phiếu giá cao thường dẫn đầu về giá trị giao dịch. Relative volume so sánh khối lượng giao dịch với mức thông thường của chính mã đó. Cơ sở dữ liệu: giờ giao dịch thông thường ngày 2 tháng 7, đã loại trừ một mã niêm yết bị trùng (chứng chỉ lưu ký).

Truy vấnSố cổ phiếu giao dịch theo mỗi bucket 30 phút, giờ giao dịch chính thức; các lệnh closing auction nằm trong bucket cuối (tỷ)
Giờ ETCổ phiếu (tỷ)% so với nhóm lớn nhất
09:302.1360.5
10:001.6446.4
10:301.6446.5
11:001.4140
11:301.0529.7
12:001.0329.2
12:300.9627.3
13:000.8724.7
13:300.8524.2
14:000.8925.3
14:300.8123.1
15:001.0529.8
15:303.53100
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-02 13:30:00' AND window_start < '2026-07-02 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-02 20:00:00' AND sip_timestamp < '2026-07-02 20:15:00'
      AND has(conditions, 8)
)
GROUP BY et_time
ORDER BY et_time
Tự chạy truy vấn này

2.13 tỷ cổ phiếu trong 30 phút đầu phiên, chạm đáy 0.81 tỷ vào 14:30, rồi đạt 3.53 tỷ trước thời điểm đóng cửa phiên ngay trước ngày nghỉ lễ. Đây là khoảng thời gian có khối lượng lớn nhất trong ngày, khi đấu giá đóng cửa gom các lệnh chờ thành một giao dịch khớp duy nhất.

Bảng giao dịch quyền chọn: kỳ hạn tuần bị dời ngày đáo hạn

Truy vấnToàn bộ ngày options trong một dòng: volume, ngày đáo hạn trong ngày, tuần điều chỉnh do kỳ nghỉ và kỳ monthly tháng 7
Lệnh quyền chọn (triệu)Hợp đồng (triệu)Call (% khối lượng)Đáo hạn trong ngày (%)Hợp đồng đáo hạn Thứ Năm, 2/7 (triệu)Lệnh Thứ Sáu, 3/7Hợp đồng tuần 10/7 (triệu)Hợp đồng tháng 17/7 (triệu)Hợp đồng SPY (triệu)Hợp đồng QQQ (triệu)Tài sản cơ sở của hợp đồng hàng đầuGiá thực hiện của hợp đồng hàng đầuLoại hợp đồng hàng đầuNgày đáo hạn của hợp đồng hàng đầuKhối lượng hợp đồng hàng đầuĐịnh dạng khối lượng hợp đồng hàng đầuGiá trung bình hợp đồng hàng đầuGiá thực hiện hàng đầu trừ giá đóng cửa SPYGiá đóng cửa SPY trừ giá thực hiện
13.1580.9658.447.438.3809.648.8213.968.5SPY740P2026-07-02540403540,4030.499-4.84.8
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH
    (
        SELECT (any(underlying_symbol), any(toFloat64(strike_price)), any(option_type),
                any(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))),
                sum(size), count(), round(avg(toFloat64(price)), 3))
        FROM global_markets.options_trades
        WHERE sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
        GROUP BY ticker
        ORDER BY sum(size) DESC
        LIMIT 1
    ) AS top_contract,
    (
        SELECT round(toFloat64(argMax(close, window_start)), 2)
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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) = '260702') / sum(size), 1) AS same_day_expiry_pct,
    round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260702')) / 1e6, 2) AS thu_jul2_expiry_contracts_m,
    countIf(substring(ticker, length(ticker) - 14, 6) = '260703') AS fri_jul3_expiry_prints,
    round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710')) / 1e6, 2) AS jul10_weekly_contracts_m,
    round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260717')) / 1e6, 2) AS jul17_monthly_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,
    top_contract.1 AS top_contract_underlying,
    top_contract.2 AS top_contract_strike,
    top_contract.3 AS top_contract_type,
    top_contract.4 AS top_contract_expiry,
    top_contract.5 AS top_contract_volume,
    reverse(arrayStringConcat(extractAll(reverse(toString(assumeNotNull(top_contract.5))), '[0-9]{1,3}'), ',')) AS top_contract_volume_fmt,
    round(top_contract.7, 3) AS top_contract_avg_price,
    round(top_contract.2 - spy_regular_close, 2) AS top_strike_minus_spy_close,
    round(spy_regular_close - top_contract.2, 2) AS spy_close_minus_strike
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
Tự chạy truy vấn này

Quyền chọn được giao dịch với tổng cộng 80.96 triệu hợp đồng qua 13.15 triệu giao dịch khớp lệnh, trong đó 47.4% khối lượng đáo hạn ngay vào thứ Năm đó. Không có hợp đồng nào mang mã đáo hạn ngày 3 tháng 7 được khớp trong cả ngày (0 giao dịch), nên phiên thứ Năm đồng thời bao gồm kỳ đáo hạn trong ngày và kỳ hạn tuần bị dời lịch của tuần. Hợp đồng sôi động nhất là put SPY đáo hạn trong ngày, giá thực hiện $740, với 540,403 hợp đồng được giao dịch ở mức premium bình quân $0.499; SPY đóng cửa cao hơn giá thực hiện 4.8 dollar, nên quyền chọn này out of the money, đồng thời là put xuất hiện trên bảng giá nơi thứ Ba và thứ Tư có các call. Call vẫn chiếm 58.4% khối lượng; kỳ hạn tuần kế tiếp đạt 9.64 triệu hợp đồng, còn kỳ hạn tháng 7 đạt 8.82 triệu hợp đồng (cơ chế đáo hạn).

Băng giá quote: chi phí giao dịch

Giá cho biết điều gì đã xảy ra; quote cho biết chi phí giao dịch. Spread bid-ask là khoản phí trên mỗi vòng giao dịch, được tính bằng điểm cơ bản so với giá giữa (một điểm cơ bản bằng một phần trăm của một phần trăm). Chúng tôi đo lường chỉ số này trong mọi phiên, dù thông thường hay bất thường. Nhờ đó, nhận định “spread nới rộng mạnh” có thể được kiểm chứng hoặc bác bỏ.

Truy vấnSố lần cập nhật NBBO của cổ phiếu: ngày 2/7 so với ngày 1/7, kèm cập nhật các ticker được nêu (triệu)
Cập nhật 2/7 (triệu)Cập nhật 1/7 (triệu)% so với ngày trướcCập nhật SPY ngày 2/7 (triệu)Cập nhật QQQ ngày 2/7 (triệu)Cập nhật MU ngày 2/7 (triệu)
597.22449.15335.427.561.01
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02')) / 1e6, 2) AS jul2_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-01')) / 1e6, 2) AS jul1_updates_m,
    round((countIf(toDate(sip_timestamp) = toDate('2026-07-02')) / countIf(toDate(sip_timestamp) = toDate('2026-07-01')) - 1) * 100, 1) AS day_over_day_pct,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'SPY') / 1e6, 2) AS jul2_spy_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'QQQ') / 1e6, 2) AS jul2_qqq_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'MU') / 1e6, 2) AS jul2_mu_updates_m
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
Tự chạy truy vấn này

Mức giá mua tốt nhất và giá chào bán tốt nhất trên toàn thị trường, tức phần đầu của sổ lệnh hợp nhất, đã được cập nhật 597.22 triệu lần vào ngày 2 tháng 7, so với 449.15 triệu lần vào ngày 1 tháng 7: tăng 33% lần khi bước vào kỳ nghỉ đóng cửa thị trường. QQQ ghi nhận 7.56 triệu lần, cao hơn mức 5.42 triệu của SPY; MU đạt 1.01 triệu lần.

Truy vấnSpread niêm yết trung vị theo basis point, giờ giao dịch chính thức: ETF chỉ số, megacap và nhóm memory
TickerSpread trung vị (bps)Spread trung vị (cent)Số lần spread SPYCập nhật RTH (triệu)Báo giá không hợp lệ đã loại
SPY0.27214.9819064
QQQ0.8363.16.035934
NVDA1.0323.82.5520398
AAPL1.62561.915193
TSLA2.2998.50.852699
MU5.525520.40.922442
SNDK10.418938.50.26163
WDC10.7960400.1483
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    ticker,
    round(med_bps, 2) AS median_spread_bps,
    round(med_dollars * 100, 1) AS median_spread_cents,
    round(med_bps / min(med_bps) OVER (), 1) AS times_the_spy_spread,
    round(quote_updates / 1e6, 2) AS rth_updates_m,
    invalid_quotes_dropped
FROM (
    SELECT
        ticker,
        quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000,
                             toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)) AS med_bps,
        quantileExactIf(0.5)(toFloat64(ask_price) - toFloat64(bid_price),
                             toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)) AS med_dollars,
        count() AS quote_updates,
        countIf(NOT (toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price))) AS invalid_quotes_dropped
    FROM global_markets.cache_stocks_quotes
    WHERE ticker IN ('SPY', 'QQQ', 'AAPL', 'TSLA', 'NVDA', 'MU', 'SNDK', 'WDC')
      AND sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
    GROUP BY ticker
)
ORDER BY median_spread_bps ASC
Tự chạy truy vấn này

Spread được báo giá trung vị của SPY rộng 0.27 điểm cơ bản: tương đương khoảng 2 cent trên một ETF trị giá $744.8. QQQ ở mức 0.83 điểm cơ bản, còn NVDA là 1.03. Những mã giảm giá là các mã có chi phí giao dịch cao: MU ở mức 5.52 điểm cơ bản, SanDisk 10.4, Western Digital 10.79, bằng 40 lần spread của SPY. Việc khớp lệnh qua một rổ cổ phiếu memory có chi phí cao gấp nhiều lần so với khớp lệnh qua chỉ số, trước khi tính đến tác động giá. Quote không hợp lệ (quote một chiều hoặc quote bị chéo) được tính riêng theo từng mã, không bị loại bỏ.

Truy vấnThanh khoản có bất thường không? Spread trung vị giờ giao dịch chính thức của SPY so với tháng phiên gần nhất
Spread trung vị ngày 2/7 (bps)Spread trung vị trước đó (bps)Ngày 2/7 trừ trước đó (bps)Xếp hạng spread rộng hơnSố phiên so sánhPhiên rộng nhất (bps)
0.270.27011220.409
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH per_day AS (
    SELECT toDate(sip_timestamp) AS d,
           quantileExact(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000) AS med_bps
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'SPY'
      AND sip_timestamp >= '2026-06-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
      AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
      AND toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)
    GROUP BY d
)
SELECT
    round(anyIf(med_bps, d = toDate('2026-07-02')), 3) AS jul2_median_spread_bps,
    round(quantileExact(0.5)(med_bps), 3) AS trailing_median_bps,
    round(anyIf(med_bps, d = toDate('2026-07-02')) - quantileExact(0.5)(med_bps), 3) AS jul2_minus_trailing_bps,
    arrayCount(x -> x > anyIf(med_bps, d = toDate('2026-07-02')), groupArrayIf(med_bps, d != toDate('2026-07-02'))) + 1 AS wider_rank,
    count() AS sessions_compared,
    round(max(med_bps), 3) AS widest_session_bps
FROM per_day
Tự chạy truy vấn này

Thanh khoản trong một ngày thông thường, và đó chính là kết luận: spread trung vị của SPY ở mức 0.27 điểm cơ bản, cách 0 điểm cơ bản so với trung vị của tháng trước (0.27 điểm cơ bản), xếp hạng 11 trên tổng số 22 phiên theo mức độ nới rộng. Con số này còn cách xa mức rộng nhất trong tháng là 0.409 điểm cơ bản. Một đợt bán tháo tập trung trong bối cảnh bảng giá vẫn mang sắc xanh đã không gây áp lực lên hạ tầng giao dịch.

Lãi suất: dữ liệu ngày 2 tháng 7 đã được cập nhật

Truy vấnBiên nhận: treasury print ngày 2/7 đã được lưu hồ sơ
Số dòng ngày 2/7Số dòng ngày 1/7
11
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    (SELECT count() FROM global_markets.treasury_yields WHERE date = '2026-07-02') AS jul2_rows,
    (SELECT count() FROM global_markets.treasury_yields WHERE date = '2026-07-01') AS jul1_rows
Tự chạy truy vấn này

Dữ liệu từ Treasury thường chậm hơn dữ liệu giao dịch một hoặc hai ngày. Khi công bố lần đầu, hệ thống chưa có dữ liệu nào cho phiên đóng cửa ngày 2 tháng 7. Trang này đã thông báo như vậy thay vì tự suy đoán. Dữ liệu hiện đã được cập nhật: 1 cho ngày 2 tháng 7 và 1 cho ngày 1 tháng 7. Vì vậy, bảng dưới đây phản ánh đúng đường cong lãi suất của phiên giao dịch đó.

Truy vấnĐường cong lãi suất của phiên: ngày 2/7 so với ngày 1/7 (chỉ các kỳ hạn có dữ liệu)
Điểm trên đường congLợi suất ngày 2/7 (%)Thay đổi 1 ngày (bp)
1 month3.73
3 month3.82-3
1 year3.96-4
2 year4.14-3
5 year4.23-1
10 year4.491
30 year4.981
2s10s spread0.354
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 jul2_yield_pct,
    round((t.2 - t.3) * 100) AS one_day_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-02') AS d,
         (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-01') AS p
)
Tự chạy truy vấn này

Khi đóng cửa, lợi suất trái phiếu kỳ hạn 10 năm ở mức 4.49%, còn spread 2s10s ở mức 0.35 điểm.

Lịch giao dịch phía sau ngày này

Truy vấnLịch doanh nghiệp và dòng thông tin ngày 2/7, trong một dòng (gồm tám đợt splits đứng sau một biến động giả của screener)
Ghi nhận không hưởng cổ tứcChia tách đã thực hiệnChia tách thuậnChia tách ngượcGhi nhận chia táchIPO đã niêm yếtHồ sơ SECHồ sơ Form 4 của nội bộHồ sơ 8-KTên IPOBài viết tin tứcNhà xuất bản tin tứcTicker được đưa tin nhiều nhấtSố bài viết nhiều nhấtCRWD chia tách từCRWD chia tách thànhGiá đóng cửa trước của CRWDGiá đóng cửa trong ngày của CRWDCRWD (triệu $)Tên split kèm bars
322853CRWD 4-for-1; FBIP 4-for-1; FNCSF 110-for-100; GMEX 1-for-9; GTCDF 1-for-5; SMTOY 8-for-1; UBYH 1-for-10; VLNT 10-for-1252032109258MIACU — Meridian3 Industrials Acquisition Corp.; VIIU — Viking Acquisition Corp. II2013NVDA1814772.45193.671473.512
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-02'
    ) AS news,
    (
        SELECT (argMax(t, n), max(n))
        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-02'
            )
            WHERE t != 'SPCX'
            GROUP BY t
        )
    ) AS top_news,
    (
        SELECT (count(), countIf(split_to > split_from), countIf(split_to < split_from),
                arrayStringConcat(groupArray(concat(ticker, ' ', toString(split_to), '-for-', toString(split_from))), '; '))
        FROM global_markets.stocks_splits
        WHERE execution_date = '2026-07-02' AND ticker NOT IN ('SPCX')
    ) AS splits
SELECT
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-02') AS ex_dividend_records,
    splits.1 AS splits_executed,
    splits.2 AS forward_splits,
    splits.3 AS reverse_splits,
    splits.4 AS split_records,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-02') AS ipos_listed,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') AS sec_filings,
    (SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') AS insider_form4_filings,
    (SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') AS filings_8k,
    (SELECT arrayStringConcat(groupArray(concat(ticker, ' — ', issuer_name)), '; ') FROM (
        SELECT ticker, issuer_name FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-02' ORDER BY ticker
    )) AS ipo_names,
    news.1 AS news_articles,
    news.2 AS news_publishers,
    top_news.1 AS most_covered_ticker,
    top_news.2 AS most_covered_articles,
    (SELECT any(split_from) FROM global_markets.stocks_splits WHERE ticker = 'CRWD' AND execution_date = '2026-07-02') AS crwd_split_from,
    (SELECT any(split_to) FROM global_markets.stocks_splits WHERE ticker = 'CRWD' AND execution_date = '2026-07-02') AS crwd_split_to,
    (SELECT round(toFloat64(argMax(close, window_start)), 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00') AS crwd_prev_close,
    (SELECT round(toFloat64(argMax(close, window_start)), 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS crwd_day_close,
    (SELECT round(sum(toFloat64(close) * toFloat64(volume)) / 1e6, 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS crwd_dollar_m,
    (SELECT count() FROM (
        SELECT ticker FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date = '2026-07-02')
          AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
        GROUP BY ticker
    )) AS split_names_with_bars
Tự chạy truy vấn này

322 bản ghi cổ tức chuyển sang ngày giao dịch không hưởng quyền, 2 mã niêm yết mới xuất hiện (MIACU — Meridian3 Industrials Acquisition Corp.; VIIU — Viking Acquisition Corp. II), và chỉ số SEC ghi nhận 5203 hồ sơ được nộp trong kỳ nghỉ, gồm 2109 Form 4, 258 hồ sơ 8-K. Bản tin có 201 bài viết từ 3 nhà xuất bản (NVDA được đưa tin nhiều nhất, trong đó có 18 bài).

Các đợt chia tách dễ đánh lừa bất kỳ ai đọc giá đóng cửa thô. CRWD thực hiện chia tách cổ phiếu theo tỷ lệ 4-đổi-1, nên dữ liệu chưa điều chỉnh hiển thị mức $772.45 vào thứ Tư và $193.67 vào thứ Năm. Đây là mức giảm giả tạo; thực tế, mỗi cổ phiếu cũ được đổi thành bốn cổ phiếu mới. CRWD không phải trường hợp duy nhất: có 8 bản ghi chia tách đã được thực hiện, gồm 5 đợt chia tách thuận và 3 đợt chia tách nghịch (cột split_records liệt kê các giao dịch này). Chia tách nghịch tạo ra hiệu ứng ngược lại: giá thô tăng vọt qua đêm. Chỉ 2 mã trong số đó được giao dịch trên hệ thống dữ liệu của chúng tôi; doanh thu giao dịch $1473.51 triệu của CRWD là mức duy nhất đủ lớn để làm sai lệch bộ lọc. Vì vậy, mọi bộ lọc mã biến động mạnh trong bài này đều loại trừ CRWD.

Lịch giao dịch sắp tới

Thông tin lịch, không phải dự báo, về những gì các bảng dữ liệu ghi nhận cho các phiên kế tiếp.

Truy vấnSau kỳ nghỉ: phiên kế tiếp, các mã ex-dividend và splits của phiên đó, lần đóng cửa theo lịch tiếp theo và độ trễ short interest
Bars SPY phiên thường ngày 6/7Bản ghi ex-div ngày 6/7Ex-div hộ gia đình ngày 6/7Splits ngày 6/7Lần đóng cửa theo lịch tiếp theoTên lần đóng cửa tiếp theoTrạng thái lần đóng cửa tiếp theoNgày thanh toán SI gần nhấtSố ngày từ thanh toán SI
390119JPM152026-09-07Labor Dayclosed2026-06-302
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    (SELECT count() FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'SPY' AND window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00') AS jul6_spy_regular_bars,
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-06') AS exdiv_records_jul6,
    (SELECT arrayStringConcat(groupArray(ticker), ', ') FROM global_markets.stocks_dividends
     WHERE ex_dividend_date = '2026-07-06'
       AND ticker IN ('AAPL', 'MSFT', 'JPM', 'JNJ', 'XOM', 'KO', 'PG', 'WMT', 'CVX', 'HD')) AS household_exdivs_jul6,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06') AS splits_jul6,
    (SELECT toString(min(date)) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02') AS next_scheduled_closure,
    (SELECT any(name) FROM global_markets.stocks_market_holidays
     WHERE date = (SELECT min(date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02')) AS next_closure_name,
    (SELECT any(status) FROM global_markets.stocks_market_holidays
     WHERE date = (SELECT min(date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02')) AS next_closure_status,
    (SELECT toString(max(settlement_date)) FROM global_markets.stocks_short_interest
     WHERE settlement_date <= '2026-07-02') AS latest_si_settlement,
    (SELECT dateDiff('day', max(settlement_date), toDate('2026-07-02')) FROM global_markets.stocks_short_interest
     WHERE settlement_date <= '2026-07-02') AS si_settlement_age_days
Tự chạy truy vấn này

Thứ Hai, ngày 6 tháng 7, mở cửa trở lại với một phiên đầy đủ gồm 390 bar, được xác minh từ chính dữ liệu bar của phiên. Phiên này ghi nhận 119 trường hợp giao dịch không hưởng quyền (ex-dividend), trong đó có một doanh nghiệp quen thuộc với người tiêu dùng nằm trong mười mã chúng tôi kiểm tra (JPM), cùng 15 giao dịch chia tách đã thực hiện. Lần đóng cửa theo lịch tiếp theo: Labor Day, 2026-09-07 (closed). Dữ liệu short interest vẫn là thông tin cũ, như thường lệ; ngày thanh toán mới nhất được lưu trên hệ thống là 2026-06-30, cách đây 2 ngày, còn thời điểm công bố chậm hơn ngày thanh toán khoảng hai tuần (tại sao).

Phiên giao dịch, dữ liệu đã xác minh và ngày thứ Sáu không diễn ra

Truy vấnKiểm tra phiên: khoảng thời gian minute-bar quan sát được của SPY và việc đóng cửa ngày 3/7 trên tape
Bar SPY đầu tiên (ET)Bar SPY cuối cùng (ET)Bars SPY theo phútBars phiên thườngCác phiên trong ngàyBars SPY ngày 3/7
04:0019:5988639010
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-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS regular_session_bars,
    uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS day_sessions,
    (SELECT count() FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'SPY' AND window_start >= '2026-07-03 00:00:00' AND window_start < '2026-07-04 00:00:00') AS jul3_spy_bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-02 00:00:00' AND window_start < '2026-07-03 00:00:00'
Tự chạy truy vấn này

Ngày 2/7 là một phiên đầy đủ, không phải phiên đóng cửa sớm: các thanh giá của SPY kéo dài từ 04:00 đến 19:59 theo giờ New York (các thanh giá pre-market và after-hours được tính), với đúng 390 thanh giá trong khung giờ giao dịch chính. Thứ Sáu ngày 3/7 ghi nhận 0 thanh giá SPY, do thị trường đóng cửa hoàn toàn để nghỉ lễ Independence Day; ngày 4/7 rơi vào thứ Bảy. Tuần giao dịch gồm bốn phiên: tóm tắt tuần.

Câu hỏi thường gặp

Vì sao Dow tăng trong khi Nasdaq giảm vào ngày 2/7/2026?

Hai chỉ số này nắm giữ các nhóm công ty khác nhau: DIA đóng cửa ở mức 1.04%, còn QQQ ở mức -1.71%. Bảng hiệu suất ngành cũng cho thấy sự phân hóa tương tự: y tế, tiện ích và hàng tiêu dùng thiết yếu dẫn đầu, trong khi công nghệ đứng cuối ở mức -2.71%, tạo ra khoảng cách 5.34 điểm phần trăm giữa ngành tốt nhất và kém nhất.

Thị trường chứng khoán có mở cửa vào thứ Sáu trong tuần có ngày Quốc khánh Mỹ không?

Không. Quốc khánh Mỹ rơi vào thứ Bảy, nên các sở giao dịch nghỉ bù trọn ngày thứ Sáu ngay sau phiên này. Dữ liệu giao dịch của chúng tôi ghi nhận 0 thanh dữ liệu theo phút của SPY trong ngày đó.

Chia tách cổ phiếu theo tỷ lệ tăng thêm tác động thế nào đến giá cổ phiếu?

Số lượng cổ phiếu tăng gấp bốn lần, còn giá giảm xuống một phần tư; giá trị vị thế không thay đổi. Với CRWD vào ngày 2/7, giá đóng cửa chưa điều chỉnh là $772.45 vào thứ Tư và $193.67 vào thứ Năm. Nếu bộ lọc cổ phiếu không tính đến đợt chia tách, nó sẽ hiển thị một mức giảm giả tạo.

Bid-ask spread rộng bao nhiêu vào ngày 2/7/2026?

Bid-ask spread được báo giá trung vị của SPY tương đương 0.27 điểm cơ bản so với giá trung điểm trong giờ giao dịch thông thường. Xét theo mức độ rộng của spread, đây là phiên đứng thứ 11 trong 22 phiên gần nhất, tức một ngày bình thường. Các mã riêng lẻ có spread rộng hơn: MU ở mức 5.52 điểm cơ bản, còn WDC ở mức 10.79.

Ghi chú dữ liệu

  • Dollar volume là chỉ báo đại diện theo phút, được tính bằng giá đóng cửa × khối lượng, cộng dồn theo từng bar.
  • Nửa giờ cuối trong bảng khối lượng bao gồm các lệnh khớp trong phiên đấu giá đóng cửa. Các bar một phút loại toàn bộ lệnh đấu giá. Vì vậy, bảng nửa giờ cộng thêm vào bucket cuối mỗi giao dịch mang điều kiện bán của lệnh đóng cửa, có thời điểm từ 4:00 đến 4:15 chiều ET trên consolidated tape.
  • Lệnh giao dịch trái phiếu kho bạc ngày 2 tháng 7 được ghi nhận sau lần công bố đầu tiên, trong đó ghi chú ban đầu đã nêu việc thiếu dữ liệu này bằng biên nhận số dòng; phiên bản sửa đổi đã bổ sung lệnh giao dịch và hiển thị biên nhận.
  • Biến động giá đóng cửa thô của CRWD là hệ quả kỹ thuật của việc chia tách cổ phiếu, nên được loại khỏi các màn hình cổ phiếu biến động mạnh.
Ghi chú dữ liệu đầy đủ
  • Bảng ngành gồm mười một quỹ SPDR Select Sector (XLB, XLC, XLE, XLF, XLI, XLK, XLP, XLRE, XLU, XLV, XLY). Đây là một nhóm tài sản cố định đã được công bố, không phải trường ngành do vendor cung cấp.
  • Số lượng báo giá được phân nhóm theo ngày UTC của timestamp SIP; một phiên mùa hè nằm trọn trong một ngày UTC.
  • Một mã tái sử dụng trong đợt niêm yết tháng 6 bị loại khỏi các bảng xếp hạng (biên nhận); công việc phân tích forensic đối với dữ liệu tick nằm trong các bài phân tích chuyên sâu.

Phương pháp

  • Giai đoạn phân tích là một phiên giao dịch (1 phiên, được xác minh từ các bar quan sát được). Dấu thời gian được lưu theo UTC và chuyển sang giờ New York trong các truy vấn; “giá đóng cửa” là bar theo phút cuối cùng của phiên chính thức, còn thay đổi trong ngày so sánh ngày 2 tháng 7 với ngày 1 tháng 7. Việc đóng cửa ngày 3 tháng 7 được xác minh từ các bar, không bao giờ mặc định.
  • Spread được báo giá (ask trừ bid) theo điểm cơ bản của giá giữa, lấy trung vị trên các lần cập nhật NBBO trong giờ giao dịch chính thức, theo một phân vị xác định trước. Các số thập phân được chuyển sang dạng float trước khi thực hiện phép tính tỷ lệ; ngày đáo hạn quyền chọn được phân tích lại từ ticker OCC. Mỗi panel được đọc một lần, tại thời điểm biên soạn, thông qua đường dẫn chỉ đọc có kiểm soát.

Biểu đồ, bảng và SQL là một thể thống nhất. Hãy dán bất kỳ panel nào vào terminal Strasmore để sử dụng theo cách của bạn. Phiên trước: ngày 1 tháng 7. Trong tuần: tuần nghỉ lễ gồm bốn phiên.

#recap#daily#spy#qqq#market structure