ringkasan pasaran 30 jun 2026 nombor hari ini
Sesi terakhir suku tahun: indeks teknologi naik, pasaran kebanyakannya merah, kompleks memori cemerlang, dan pilihan saham hari sama ditutup.
Selasa, 30 Jun 2026 — sesi terakhir suku tahun — merupakan hari kenaikan yang diterajui teknologi dalam pasaran yang kebanyakannya merah: QQQ naik 1.63% dan SPY 0.73%, namun hanya 4 daripada 10 dana sektor S&P ditutup lebih tinggi (3,349 nama cair naik, 3,033 turun). Sesi sebelumnya: ringkasan 29 Jun. Setiap nombor di bawah dibaca daripada pertanyaan tersimpan — kembangkan mana-mana panel untuk butiran.
Papan skor
Setiap perubahan membandingkan bar minit terakhir sesi biasa 30 Jun dengan hari Isnin 29 Jun.
SQL tepat di sebalik setiap nombor
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-06-29 13:30:00' AND window_start < '2026-06-29 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-06-30 13:30:00' AND window_start < '2026-06-30 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.tickerSPY dibuka pada $741.29 dan ditutup pada $746.32, hampir dengan paras tertinggi $748.02. 1.63% QQQ berbanding 0.12% DIA menggambarkan bentuk hari ini: saham pertumbuhan melonjak, saham kukuh hampir tidak bergerak, IWM 0.49%.
Suku tahun ini ditutup
30 Jun menutup sesi terakhir daripada 62 sesi dalam suku kedua, dan kecenderungan hari itu adalah gambaran kecil suku tahun tersebut.
SQL tepat di sebalik setiap nombor
WITH q2 AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMin(toFloat64(open), window_start) AS d_open,
argMax(toFloat64(close), window_start) AS d_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= toDateTime('2026-04-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY ticker, d
)
SELECT
ticker,
toString(min(d)) AS quarter_first_session,
count() AS quarter_sessions,
round(argMin(d_open, d), 2) AS quarter_open,
round(argMax(d_close, d), 2) AS quarter_close,
round((argMax(d_close, d) / argMin(d_open, d) - 1) * 100, 2) AS quarter_pct,
countIf(d_close > d_open) AS up_sessions
FROM q2
GROUP BY ticker
ORDER BY quarter_pct DESC, ticker ASCDari pembukaan 1 April hingga penutupan 30 Jun: QQQ +26.53%, IWM 20.21%, SPY 14.13%, DIA 12.08%. QQQ mendahului suku tahun dan juga 30 Jun itu sendiri, walaupun kedudukan tengah papan bertukar: SPY mengatasi IWM pada hari itu, IWM mendahului SPY sepanjang suku tahun. QQQ ditutup lebih tinggi pada 38 daripada 62 sesi (ringkasan Q2 membincangkannya panel demi panel).
Adakah hari itu luar biasa?
SQL tepat di sebalik setiap nombor
SELECT round(anyIf(oc_pct, d = toDate('2026-06-30')), 2) AS day_move_pct,
arrayCount(x -> x > abs(anyIf(oc_pct, d = toDate('2026-06-30'))), groupArrayIf(abs(oc_pct), d != toDate('2026-06-30'))) + 1 AS abs_move_rank,
count() AS sessions_compared,
toString(min(d)) AS first_session
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
(argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS oc_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-06-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY d
)Pergerakan dari buka hingga tutup dalam sesi — satu lensa yang berbeza daripada papan skor tutup-ke-tutup — SPY bergerak 0.68%, menduduki ranking 7 daripada 21 sesi sebelumnya mengikut saiz mutlak. Indeks itu tenang; jalur dagangan di bawahnya tidak.
Keluasan: kelebihan positif yang sempit
SQL tepat di sebalik setiap nombor
WITH per_ticker AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-06-30 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-06-30 00:00:00')) AS day_close,
sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-06-30 00:00:00') AS day_dollar_volume
FROM global_markets.delayed_stocks_minute_aggs
WHERE (window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
OR (window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 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,
countIf(ticker IN ('XLB', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')) AS sector_funds_counted,
countIf(ticker IN ('XLB', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
AND day_close > prior_close) AS sector_funds_up
FROM per_ticker
WHERE prior_close > 0 AND day_close > 03,349 saham naik, 3,033 saham turun, 88 tidak berubah: 51.8% daripada pita cecair meningkat — sekadar lambungan duit syiling di bawah cetakan indeks pertumbuhan 1.63%. Penapis kecairan menggugurkan 5,055 daripada 11,525 penanda dagangan dwi-sesi (di bawah $1 juta didagangkan), dikira di sini, tidak pernah disembunyikan.
Sektor demi sektor: ke mana sebenarnya aliran wang
Mengira setiap nama sebagai satu undi menyembunyikan tempat wang berada. Sepuluh dana di bawah masing-masing memegang satu bahagian S&P 500, dan jurang antara terbaik dan terburuk mengukur betapa tidak sekata sesuatu sesi.
SQL tepat di sebalik setiap nombor
WITH per_name AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-06-30 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-06-30 00:00:00')) AS day_close,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-06-30 00:00:00') / 1e9, 2) AS day_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('XLB', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
AND ((window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
OR (window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 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,
if(day_close > prior_close, 1, 0) AS is_up,
round(max((day_close / prior_close - 1) * 100) OVER () - (day_close / prior_close - 1) * 100, 2) AS pts_behind_leader,
day_dollar_bn
FROM per_name
ORDER BY pct_chg DESC, ticker ASCTeknologi (XLK) naik 2.69% dan berdiri sendirian: perindustrian 1.34%, bahan 0.36% dan diskresi 0.15% merupakan satu-satunya sektor lain yang menghijau, dan papan itu merah dari kewangan (-0.17%) hingga ke utiliti (-1.48%), barangan keperluan (-1.53%) dan hartanah di tempat terakhir pada -2%. Terbaik tolak terburuk: 4.69 mata peratusan, 4 daripada 10 dana menghijau. Indeks naik kurang daripada satu peratus, jurang empat mata di bawahnya: satu sektor menanggung hari itu.
Pergerakan terbesar hari ini, merentas pasaran
Breadth mengira berapa banyak nama yang naik; ini menunjukkan yang paling banyak bergerak — lima teratas dan lima terbawah mengikut peratusan perubahan dalam kalangan nama yang didagangkan $10 juta atau lebih.
SQL tepat di sebalik setiap nombor
WITH per_ticker AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-06-30 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-06-30 00:00:00')) AS day_close,
sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-06-30 00:00:00') AS day_dollar_volume
FROM global_markets.delayed_stocks_minute_aggs
WHERE (window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
OR (window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00')
GROUP BY ticker
HAVING prior_close > 1 AND day_close > 0 AND day_dollar_volume >= 10000000 AND ticker NOT IN ('SPCX')
)
SELECT
board,
ticker,
prior_close,
day_close,
pct_chg,
round(abs(pct_chg), 2) AS abs_pct_chg,
dollar_volume_m,
if(ticker IN (SELECT ticker FROM global_markets.stocks_splits
WHERE execution_date >= '2026-06-29' AND execution_date <= '2026-06-30'), 1, 0) AS split_record_on_file
FROM (
SELECT 'top gainers' AS board, 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_dollar_volume / 1e6, 0) AS dollar_volume_m
FROM per_ticker
ORDER BY (day_close / prior_close) DESC, ticker ASC
LIMIT 5
UNION ALL
SELECT 'top decliners' AS board, 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_dollar_volume / 1e6, 0) AS dollar_volume_m
FROM per_ticker
ORDER BY (day_close / prior_close) ASC, ticker ASC
LIMIT 5
)
ORDER BY if(board = 'top gainers', 0, 1) ASC, pct_chg DESC, ticker ASCTiada satu pun papan yang menyerupai indeks. JEM mendahului pada +256.76% dengan dagangan $141 juta; SOC rugi 55.89% dengan dagangan $306 juta. ABVX naik 38.56% dengan dagangan $942 juta, pusing ganti tertinggi di mana-mana papan; NVCT jatuh 35.62% dan UNCY 39.09%. Lajur rekod pecahan memastikan papan itu jujur — pecahan saham terbalik 1-ke-10 muncul sebagai "kenaikan" +900% pada pita yang tidak dilaraskan — dan setiap nama di sini membawa 0: cetakan sebenar.
Tiga baris adalah satu dagangan dua kali: CRCA (-35.16%) dan CRCG (-35.19%) jatuh manakala CRCD naik 35.47% — setiap satu hampir dua kali ganda pergerakan -17.53% nama berkaitan kripto di bawah: saham tunggal berleveraj.
Sorotan hari ini: semikonduktor menjelang pusingan suku tahun
Enam nama, satu tema, hasil yang sangat berbeza — hanya pergerakan bersama dan magnitud; data tidak menyatakan sebabnya.
SQL tepat di sebalik setiap nombor
WITH per_name AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-06-30 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-06-30 00:00:00')) AS day_close,
maxIf(toFloat64(high), window_start >= '2026-06-30 00:00:00') AS day_high,
minIf(toFloat64(low), window_start >= '2026-06-30 00:00:00') AS day_low,
argMinIf(window_start, toFloat64(low), window_start >= '2026-06-30 00:00:00') AS low_bar,
argMaxIf(window_start, toFloat64(high), window_start >= '2026-06-30 00:00:00') AS high_bar,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-06-30 00:00:00') / 1e9, 2) AS day_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AMD', 'INTC', 'MU', 'SNDK', 'TSM', 'WDC')
AND ((window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
OR (window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 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 tickerSanDisk melonjak 10.79%, AMD 7.7%, Intel 5.93%, TSMC 4.86% — manakala MU, tiket terbesar pasaran dengan perolehan $37.41 bilion, ditutup hanya 0.52% lebih tinggi dan Western Digital (-2.01%) tidak turut serta. Ini adalah kompleks di sebalik cetakan sektor teknologi sebanyak 2.69% (Jun MU, detik demi detik).
Arus berlawanan melanda kewangan berkaitan kripto, bertentangan dengan pasaran hijau:
SQL tepat di sebalik setiap nombor
WITH per_name AS (
SELECT
ticker,
toFloat64(argMaxIf(close, window_start, window_start < '2026-06-30 00:00:00')) AS prior_close,
toFloat64(argMaxIf(close, window_start, window_start >= '2026-06-30 00:00:00')) AS day_close,
maxIf(toFloat64(high), window_start >= '2026-06-30 00:00:00') AS day_high,
minIf(toFloat64(low), window_start >= '2026-06-30 00:00:00') AS day_low,
argMinIf(window_start, toFloat64(low), window_start >= '2026-06-30 00:00:00') AS low_bar,
argMaxIf(window_start, toFloat64(high), window_start >= '2026-06-30 00:00:00') AS high_bar,
round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-06-30 00:00:00') / 1e9, 2) AS day_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('COIN', 'CRCL', 'HOOD', 'MSTR')
AND ((window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
OR (window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 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 tickerCRCL mencetak -17.53%, paras rendah $62.52 tiba pada 15:59 ET — minit terakhir sesi — bersama MSTR -6.2%, COIN -3.61% dan HOOD -1.53%. Pergerakan bersama diperhatikan; punca tidak dinyatakan.
Apa yang dibawa oleh suapan berita
Rekapitulasi yang enggan menyatakan punca berhutang kepada pembaca apa yang sebenarnya diterbitkan pada hari itu.
SQL tepat di sebalik setiap nombor
SELECT
names.n AS ticker,
countIf(has(tickers, names.n)) AS articles_today,
if(countIf(has(tickers, names.n)) = 0, 'none',
formatDateTime(toTimeZone(argMaxIf(published_utc, (published_utc, id), has(tickers, names.n)), 'America/New_York'), '%H:%i')) AS latest_et,
if(countIf(has(tickers, names.n)) = 0, 'no article in our feed this session',
JSONExtractString(argMaxIf(publisher, (published_utc, id), has(tickers, names.n)), 'name')) AS publisher_name,
if(countIf(has(tickers, names.n)) = 0, 'no article in our feed this session',
argMaxIf(title, (published_utc, id), has(tickers, names.n))) AS latest_headline
FROM global_markets.stocks_news
CROSS JOIN (SELECT arrayJoin(['NVDA', 'MU', 'SNDK', 'CRCL', 'SOC', 'ABVX', 'JEM']) AS n) AS names
WHERE published_utc >= '2026-06-30 04:00:00' AND published_utc < '2026-07-01 04:00:00'
GROUP BY names.n
ORDER BY articles_today DESC, ticker ASCNama yang paling banyak diliputi ialah NVDA dengan 21 artikel — langsung bukan antara penggerak hari itu — artikel terakhir sesi (16:28 ET, Investing.com) bertajuk "These Stocks Could Benefit as the Robotaxi Race Heats Up". MU menarik 7; satu-satunya artikel SanDisk (The Motley Fool) merupakan satu-satunya tajuk utama sepanjang hari yang menyebut pergerakan sebenar: "Why Sandisk Stock Is Skyrocketing Today".
Jurang inilah penemuannya: penurunan terbesar hari itu, kenaikan tertinggi dan nama berkaitan kripto yang jatuh paling teruk masing-masing menarik 0, 0 dan 0 artikel — sifar setiap satu, dalam suapan sebanyak 211 keping. Liputan bukan proksi untuk pergerakan harga.
Tempat wang didagangkan
SQL tepat di sebalik setiap nombor
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-06-30 13:30:00' AND window_start < '2026-06-30 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-06-30 13:30:00' AND window_start < '2026-06-30 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) DESCMengikut dolar, MU mengatasi segala-galanya, termasuk dana indeks: $37.41 bilion berbanding $31.84 bilion SPY — sesi kedua berturut-turut ia mengatasi dagangan dana indeks utama (ringkasan hari Isnin mencatatkan yang pertama). Papan saham pula menceritakan hal lain: SOXS, ETF semikonduktor songsang dengan leveraj 3x (515.5 juta saham), dan dua nama bernilai kurang satu dolar yang hanya setitik dalam dagangan MU — volume dibaca dua cara.
Satu nama sengaja ditinggalkan dari kedua-dua papan: penyenaraian Jun yang tickernya sebelum ini milik syarikat lain yang tidak berkaitan, jadi suapan vendor menandakan dua entiti dengan tiga huruf yang sama (resit di sini).
SQL tepat di sebalik setiap nombor
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
round(sum(toFloat64(volume)) / 1e9, 2) AS shares_bn,
round(100 * sum(toFloat64(volume)) / max(sum(toFloat64(volume))) OVER (), 1) AS pct_of_biggest_bucket
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00'
GROUP BY et_time
ORDER BY et_time2.05 bilion saham dalam setengah jam pembukaan, palung 0.78 bilion pada 13:30, dan baldi terbesar hari itu — 2.69 bilion — menjelang penutup akhir suku tahun, di mana lelongan penutup dan aliran penyelarasan semulanya dicetak (analisis mendalam 29 Jun mengupas di bawah palang).
Pita opsyen
SQL tepat di sebalik setiap nombor
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-06-30 00:00:00' AND sip_timestamp < '2026-07-01 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-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00'
) AS spy_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) = '260630') / 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, 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 = 'SPY' AND option_type = 'P'))
/ toFloat64(sumIf(size, underlying_symbol = 'SPY' AND option_type = 'C')), 2) AS spy_put_call_ratio,
round(toFloat64(sumIf(size, underlying_symbol = 'SPY' AND option_type = 'C'
AND substring(ticker, length(ticker) - 14, 6) = '260630' AND toFloat64(strike_price) > spy_close)) / 1e6, 2) AS spy_0dte_otm_calls_m,
round(toFloat64(sumIf(size, underlying_symbol = 'SPY' AND option_type = 'C'
AND substring(ticker, length(ticker) - 14, 6) = '260630' AND toFloat64(strike_price) <= spy_close)) / 1e6, 2) AS spy_0dte_itm_calls_m,
round(toFloat64(sumIf(size, underlying_symbol = 'SPY' AND option_type = 'P'
AND substring(ticker, length(ticker) - 14, 6) = '260630' AND toFloat64(strike_price) < spy_close)) / 1e6, 2) AS spy_0dte_otm_puts_m,
round(toFloat64(sumIf(size, underlying_symbol = 'SPY' AND option_type = 'P'
AND substring(ticker, length(ticker) - 14, 6) = '260630' AND toFloat64(strike_price) >= spy_close)) / 1e6, 2) AS spy_0dte_itm_puts_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,
round(top_contract.7, 3) AS top_contract_avg_price,
round(top_contract.2 - spy_close, 2) AS top_strike_minus_spy_close
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-06-30 00:00:00' AND sip_timestamp < '2026-07-01 00:00:00'Opsyen didagangkan 61.95 juta kontrak merentas 10.06 juta cetakan; panggilan merangkumi 57.3% daripada jumlah volum pita, dan 28% daripadanya tamat tempoh pada hari Selasa itu. SPY condong ke arah lain: 12.04 juta kontrak dengan nisbah jual/panggil 1.09 — lebih banyak jual daripada panggil, pada hari dana itu meningkat.
Menyusun tempoh matang hari sama SPY berbanding harga tutupnya $746.32 menjadikan condong itu nyata: 3.33 juta jual di luar wang (strike di bawah harga tutup) dan 2.28 juta panggil di luar wang, berbanding 1.77 juta panggil dalam wang dan 0.63 juta jual dalam wang — strike menurun yang tamat tempoh tanpa nilai merupakan kelompok paling sibuk dalam hari 0DTE SPY. Tiada apa-apa dengan kod tamat tempoh Jumaat, 3 Julai yang dicetak langsung (0 cetakan — pasaran tutup pada hari Jumaat itu); mingguan Khamis membawa 10.52 juta.
SQL tepat di sebalik setiap nombor
SELECT
concat(underlying, ' $', toString(strike), ' ', if(typ = 'C', 'call', 'put')) AS contract,
toString(expiry) AS expires,
formatDateTimeInJodaSyntax(expiry, 'MMMM d, yyyy') AS expires_label,
if(expiry = toDate('2026-06-30'), 1, 0) AS is_same_day,
contracts,
round(avg_px, 3) AS avg_premium,
round(100 * contracts / max(contracts) OVER (), 1) AS pct_of_busiest
FROM (
SELECT any(underlying_symbol) AS underlying,
any(toFloat64(strike_price)) AS strike,
any(option_type) AS typ,
any(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) AS expiry,
sum(size) AS contracts,
avg(toFloat64(price)) AS avg_px,
any(ticker) AS occ
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-06-30 00:00:00' AND sip_timestamp < '2026-07-01 00:00:00'
GROUP BY ticker
ORDER BY contracts DESC, occ ASC
LIMIT 6
)
ORDER BY contracts DESC, contract ASCKontrak paling sibuk di mana-mana ialah panggil SPY hari sama $747 — 821,361 kontrak dengan premium purata $0.641, berakhir $0.68 di atas bar biasa terakhir SPY, dan tanpa nilai. Papan di belakangnya ialah pengajarannya: lima daripada enam kontrak paling sibuk pada pita itu ialah strike SPY hari sama yang berjarak satu dolar di sekitar harga tutup (SPY $748 call seterusnya), setiap satu didagangkan untuk sen. Pengecualian, pada 65.1% daripada volum peneraju, ialah KWEB $29 call yang tamat tempoh December 18, 2026, bukan kontrak hari sama: satu kedudukan enam bulan di antara lima tiket loteri petang.
Kadar: hujung panjang meningkat menjelang penutup separuh tahun
SQL tepat di sebalik setiap nombor
SELECT
t.1 AS curve_point,
round(t.2, 2) AS jun30_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-06-30') AS d,
(SELECT * FROM global_markets.treasury_yields WHERE date = '2026-06-29') AS p
)Hujung panjang meningkat pada hari terakhir separuh tahun: 10 tahun naik 6 bp kepada 4.44%, 2 tahun 4 bp kepada 4.14%, dan sebaran 2s10s mencanak 2 bp kepada 0.3 mata. Hasil panjang meningkat semasa sesi yang sektor paling lemahnya, hartanah (-2%), dan sektor ketiga paling lemah, utiliti (-1.48%), kedua-duanya secara klasik sensitif terhadap kadar: satu kejadian bersama yang patut diberi perhatian, bukan mekanisme yang boleh dibuktikan oleh data ini (ringkasan H1 membawa keluk separuh tahun).
Kalendar di sebalik hari tersebut
SQL tepat di sebalik setiap nombor
WITH
(
SELECT (count(), uniqExact(publisher))
FROM global_markets.stocks_news
WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-06-30'
) 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-06-30'
)
WHERE t != 'SPCX'
GROUP BY t
)
) AS top_news
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-06-30') AS ex_dividend_records,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-06-30') AS splits_executed,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-06-30') AS ipos_listed,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-06-30') AS sec_filings,
(SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-06-30') AS insider_form4_filings,
(SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-06-30') AS filings_8k,
(SELECT arrayStringConcat(groupArray(concat(ticker, ' — ', issuer_name)), '; ') FROM (
SELECT ticker, issuer_name FROM global_markets.stocks_ipos WHERE listing_date = '2026-06-30' 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 uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-29')) AS filings_prior_session704 rekod dividen menjadi ex-dividen pada hari terakhir suku tahun — gelombang akhir suku tahun, kebanyakan syarikat AS membayar dividen suku tahun — bersama 7 pecahan saham dan 2 penyenaraian baharu (AACU — Ares Acquisition Corp III; OSPRU — Osprey Acquisition Corp. III). Lajur pemfailan menjadi tajuk utama kualiti data: indeks SEC mengandungi 31 pemfailan untuk 30 Jun — 0 Borang 4 orang dalam, 0 8-K — berbanding 4439 sesi sebelumnya. Corak akhir bulan dalam suapan data, yang didiagnosis dalam nota jurang akhir bulan; sebarang kiraan yang merangkumi hari ini adalah rendah sehingga data diisi semula.
Sesi, disahkan
SQL tepat di sebalik setiap nombor
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-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00') AS regular_session_bars,
uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00') AS day_sessions
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-06-30 00:00:00' AND window_start < '2026-07-01 00:00:00'Bar SPY berjalan dari 04:00 hingga 19:59 waktu New York dengan tepat 390 bar tingkap biasa — sesi lengkap, disahkan daripada pita (set data kalendar bursa hanya membawa penutupan akan datang).
Apa yang disimpulkan oleh sesi ini
Cetakan SPY pada 0.73% dengan 51.8% nama meningkat, 4 daripada 10 dana sektor hijau dan 4.69 mata antara terbaik dan terburuk bukanlah kenaikan yang meluas — ia adalah kenaikan satu sektor yang memakai pakaian indeks, dengan separuh jam paling berat dalam lelongan akhir suku tahun. Perubahan indeks adalah purata, dan kali ini ia dibawa oleh teknologi sementara kebanyakan sektor jatuh: periksa serakan sebelum mempercayai anak panah.
Soalan Lazim
Bagaimanakah prestasi pasaran saham pada 30 Jun 2026?
Ia ditutup lebih tinggi: SPY naik 0.73% dan QQQ naik 1.63% berbanding penutup 29 Jun. Keluasan lebih sempit — 51.8% daripada nama cair meningkat, 4 daripada 10 dana sektor S&P hijau.
Sektor manakah yang memimpin pasaran pada 30 Jun 2026?
Teknologi: XLK naik 2.69%, berbanding 1.34% untuk industri seterusnya dan -2% untuk hartanah terakhir — 4.69 mata antara terbaik dan terburuk.
Apakah pergerakan saham terbesar pada 30 Jun 2026?
Antara nama yang didagangkan $10 juta atau lebih, JEM naik paling banyak (+256.76%) dan SOC rugi paling banyak (55.89%). Kedua-duanya tidak membawa rekod pecahan: kedua-duanya adalah pergerakan harga sebenar, bukan artifak tindakan korporat.
Bagaimanakah prestasi pasaran saham pada Q2 2026?
Dari pembukaan 1 April hingga penutup 30 Jun, merentas 62 sesi: QQQ +26.53%, IWM 20.21%, SPY 14.13%, DIA 12.08% — suku tahun yang diterajui pertumbuhan, diakhiri oleh hari yang diterajui pertumbuhan.
Mengapa begitu banyak volum didagangkan dalam setengah jam terakhir?
Setengah jam terakhir membawa 2.69 bilion saham berbanding 2.05 bilion pada pembukaan. Lelongan penutup menetapkan harga penutup rasmi setiap saham dalam satu lintasan, dan dana indeks berdagang di sana untuk memadankannya; pengimbangan semula akhir suku tahun menumpukan aliran tersebut.
Nota data dan kaedah
- Bakul. Papan sektor terdiri daripada sepuluh dana sektor SPDR yang dinamakan dalam panelnya — bakul yang sama setiap sesi, jadi angka serakan boleh dibandingkan merentas hari. Papan pergerakan memerlukan $10 juta pusing ganti dan harga tutup sebelumnya melebihi $1, tidak termasuk penyenaraian simbol yang digunakan semula di atas, dan mempunyai lajur rekod berpecah.
- Kaveat. Jumlah dolar adalah proksi seminit (harga tutup × volum setiap bar). Indeks pemfailan 30 Jun hampir kosong (nota jurang akhir bulan mendiagnosisnya). Kiraan berita adalah satu suapan vendor: tiada artikel di sini bukan bukti tiada apa-apa diterbitkan di mana-mana.
- Kaedah. Satu sesi (1, disahkan daripada bar yang diperhatikan); cap masa disimpan dalam UTC, ditukar kepada waktu New York dalam pertanyaan; "tutup" ialah bar minit biasa terakhir, bukan cetakan lelongan. Tamat tempoh opsyen dihuraikan semula daripada ticker OCC (lajur jadual sendiri rosak); moneyness diukur terhadap bar biasa terakhir SPY. Panel dijalankan sekali, pada masa pengarangan, melalui laluan baca sahaja yang dikawal. Gudang data setakat 13 Julai 2026.
Setiap panel adalah hasil pertanyaan tersimpan — carta, jadual dan SQL dalam satu objek. Tampalkan mana-mana daripadanya ke terminal Strasmore. Sesi seterusnya: 1 Julai.