30 Haziran 2026 Piyasa Özeti
Çeyrek sonu seansında teknoloji hisseleri endeksleri yukarı taşırken piyasa genelinde düşüş görüldü. Bellek sektörü öne çıktı ve opsiyon işlemleri yoğunlaştı.
30 Haziran 2026 Salı — çeyreğin son seansı — genel olarak kırmızı seyreden piyasada teknoloji hisseleri öncülüğünde yükselişle tamamlandı: QQQ 1.63% ve SPY 0.73% kazanç sağladı, ancak 10 S&P sektör fonlarının yalnızca 4 kadarı yükselişle kapandı (3,349 likit varlıklar yükseldi, 3,033 düştü). Bir önceki seans: 29 Haziran özeti. Aşağıdaki tüm veriler kayıtlı bir sorgudan okunmaktadır — SQL kodunu görmek için herhangi bir paneli genişletin.
The scoreboard
Every change compares June 30's last regular-session minute bar with Monday June 29's.
Her verinin arkasındaki tam SQL
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 opened at $741.29 and finished at $746.32, near its $748.02 high. QQQ's 1.63% against DIA's 0.12% is the shape of the day: growth ran, blue chips barely moved, IWM 0.49%.
Bu günün kapanışıyla çeyrek sona erdi
30 Haziran, ikinci çeyrekteki 62 seansın sonuncusunun kapanışına sahne oldu ve günün seyri çeyreğin küçük bir özeti niteliğindeydi.
Her verinin arkasındaki tam SQL
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 ASC1 Nisan açılışından 30 Haziran kapanışına kadar: QQQ +26.53%, IWM 20.21%, SPY 14.13%, DIA 12.08%. QQQ hem çeyreği hem de 30 Haziran gününü en yüksek getiriyle kapattı; ancak endeksler arasında sıralama değişti: SPY gün bazında IWM'nin önüne geçerken, IWM çeyrek genelinde SPY'nin önünde yer aldı. QQQ, 62 seansın 38'sinde yükselişle kapandı (Q2 özeti panel panel incelenebilir).
Gün olağan dışı mıydı?
Her verinin arkasındaki tam SQL
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
)Seans içi açılış-kapanış farkı — kapanıştan kapanışa skor tablosundan farklı bir bakış açısı — SPY 0.68% oranında hareket etti ve mutlak büyüklük açısından geride kalan 21 seansın 7'incisi oldu. Endeks sakin seyretti; ancak işlem hacmi hareketliydi.
Piyasa Genişliği: Sınırlı bir pozitif avantaj
Her verinin arkasındaki tam SQL
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 yükselen, 3,033 düşen, 88 değişmeyen: likit işlem hacmine sahip kağıtların 51.8%'i yükseldi — bu durum 1.63% büyüme endeksi verisi altında yazı tura atışuna benziyor. Likidite filtresi, burada sayılan ve işlem hacmi 1 milyon doların altında olan 5,055 adet 11,525 çift oturumlu hissenin (asla gizlenmez) elenmesiyle oluşur.
Sektör bazında: Para gerçekte nereye gitti
Her isme bir oy vermek, sermayenin nerede toplandığını gizler. Aşağıdaki on fonun her biri S&P 500'den bir pay tutmaktadır; en iyi ve en kötü performans arasındaki fark, seansın ne kadar dengesiz geçtiğini gösterir.
Her verinin arkasındaki tam SQL
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 ASCTeknoloji (XLK) 2.69% kazanç sağlayarak ayrıştı: sanayi (1.34%), materyal (0.36%) ve tüketim (0.15%) yükselen diğer sektörlerdi; finans (-0.17%) sektöründen başlayarak kamu hizmetleri (-1.48%), temel tüketim (-1.53%) ve son olarak gayrimenkul (-2%) sektörlerine kadar olan tablo ise kırmızı seyretti. En iyi ile en kötü arasındaki fark: 4.69 yüzde puan, 4 oranında 10 fon yükselişteydi. Bir endeksin yüzde birden az yükselmesi ve dört puanlık bir fark oluşması: tek bir sektör günü domine etti.
Günün en büyük hareketlileri, piyasa geneli
Piyasa genişliği, yükselen hisse sayısını ifade eder; bu bölüm, işlem hacmi 10 milyon dolar veya üzerinde olan hisseler arasında yüzde bazında en çok hareket eden ilk beş ve son beş hisseyi göstermektedir.
Her verinin arkasındaki tam SQL
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 ASCHer iki piyasa da endeksle uyumlu görünmüyor. JEM, 141 milyon dolarlık işlem hacmiyle 256.76% artışla öne çıktı; SOC, 306 milyon dolarlık hacimle 55.89% değer kaybetti. ABVX, her iki piyasadaki en yüksek hacim olan 942 milyon dolarlık işlemle 38.56% yükseldi; NVCT 35.62%, UNCY ise 39.09% düştü. Ayrıştırılmamış sütun verileri yanıltıcı olabilir; örneğin 1'e 10 ters bölünme işlemi, düzeltilmemiş bir veride %900'lük bir "kazanç" olarak görünür; ancak buradaki her hisse 0 özelliğine sahiptir: gerçek işlem verileri.
Üç satır, aynı işlemi iki kez yansıtmaktadır: CRCA (-35.16%) ve CRCG (-35.19%) düşerken, CRCD 35.47% yükseldi — her biri, aşağıda yer alan kripto bağlantılı varlıkların -17.53% hareketinin yaklaşık iki katı kadar değişim gösterdi: kaldıraçlı tek hisse senedi ürünleri.
Günün öne çıkan gelişmesi: çeyrek dönem ortasında yarı iletkenler
Altı isim, tek bir tema, çok farklı sonuçlar — sadece ortak hareket ve büyüklük; veriler nedenini belirtmiyor.
Her verinin arkasındaki tam SQL
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 10.79% yükseldi, AMD 7.7%, Intel 5.93%, TSMC 4.86% — $%37.41 işlem hacmiyle piyasanın en büyük kalemi olan MU ise sadece 0.52% yükselerek kapandı ve Western Digital (-2.01%) harekete katılmadı. Bu durum, teknoloji sektörünün 2.69% sonuçlarının arkasındaki karmaşıklığı yansıtıyor (MU'nun Haziran ayı, anlık veriler).
Ters yönlü akış, yeşil piyasa hareketine karşı, kripto bağlantılı finansal kuruluşlarda görüldü:
Her verinin arkasındaki tam SQL
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 -17.53% seviyesinde kapandı; $%62.52 seviyesindeki en düşük değeri, seansın son dakikası olan 15:59 ET saatinde görüldü; MSTR -6.2%, COIN -3.61% ve HOOD -1.53% de bu harekete eşlik etti. Ortak hareket gözlemlendi; neden belirtilmedi.
Haber akışında öne çıkanlar
Nedenlere odaklanmayan bir özet, okuyucuya o gün gerçekten yayınlananları sunmalıdır.
Her verinin arkasındaki tam SQL
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 ASCEn çok haber yapılan isim 21 makale ile NVDA oldu; ancak bu hisse günün hareketli kağıtları arasında yer almıyordu. Şirket hakkındaki son içerik (16:28 ET, Investing.com) "These Stocks Could Benefit as the Robotaxi Race Heats Up" başlığını taşıyordu. MU için 7 makale yayınlandı; SanDisk hakkındaki tek makale (The Motley Fool) ise gün boyunca gerçek bir fiyat hareketine değinen tek başlık oldu: "Why Sandisk Stock Is Skyrocketing Today".
Temel bulgu aradaki farktır: Günün en çok değer kaybeden hissesi, en çok kazandıran hissesi ve kripto ile bağlantılı en sert düşüşü yaşayan isim için 211 içeriklik bir akışta 0, 0 ve 0 makale yayınlandı; yani her biri için sıfır içerik üretildi. Haber kapsamı, fiyat hareketlerinin bir göstergesi değildir.
İşlemlerin yoğunlaştığı alanlar
Her verinin arkasındaki tam SQL
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) DESCDolar bazında MU, endeks fonları da dahil olmak üzere tüm varlıkların önüne geçti: SPY'ın $31.84 milyar dolarlık hacmine karşılık $37.41 milyar dolar — bu durum, amiral gemisi endeks fonunu üst üste ikinci kez geride bıraktığı oturum oldu (Pazartesi özeti ilk oturumu içeriyor). Hisse senedi tahtası farklı bir tablo çiziyor: 3x kaldıraçlı ters yarı iletken ETF olan SOXS (515.5 milyon hisse) ve MU'nun günlük hacmi yanında ihmal edilecek düzeyde kalan, bir doların altındaki iki hisse senedi — hacim iki farklı şekilde yorumlanabilir.
Bir isim ise her iki tahtadan da kasten ayrı tutuluyor: Haziran ayındaki halka arzı sırasında sembolü daha önce başka ve ilgisiz bir şirkete ait olan bir şirket, bu nedenle veri sağlayıcılar aynı üç harfle iki farklı varlığı eşleştiriyor (makbuzlar burada).
Her verinin arkasındaki tam SQL
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_timeAçılıştan sonraki ilk yarım saatte 2.05 milyar hisse, 13:30 saatinde 0.78 milyar dolarlık bir dip ve günün en büyük hacmi olan 2.69 milyar dolar ile çeyrek sonu kapanışına ulaşıldı; burada kapanış müzayedeleri ve yeniden dengeleme akışları kaydediliyor (29 Haziran derin incelemesi detaylarda yer alıyor).
The options tape
Her verinin arkasındaki tam SQL
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'Options traded 61.95 million contracts across 10.06 million prints; calls took 57.3% of tape-wide volume, and 28% of it expired that Tuesday. SPY leaned the other way: 12.04 million contracts at a put/call ratio of 1.09 — more puts than calls, on a day the fund rose.
Sorting SPY's same-day expiries against its $746.32 close makes the skew concrete: 3.33 million out-of-the-money puts (strikes below the close) and 2.28 million out-of-the-money calls, against 1.77 million in-the-money calls and 0.63 million in-the-money puts — downside strikes that expired worthless were the busiest bucket of SPY's 0DTE day. Nothing with a Friday, July 3 expiry code printed at all (0 prints — the market is closed that Friday); the Thursday weekly carried 10.52 million.
Her verinin arkasındaki tam SQL
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 ASCThe busiest contract anywhere was the same-day SPY $747 call — 821,361 contracts at an average premium of $0.641, finishing $0.68 above SPY's last regular bar, and worthless. The board behind it is the lesson: five of the six busiest contracts on the tape were same-day SPY strikes a dollar apart around the close (SPY $748 call next), each trading for cents. The exception, at 65.1% of the leader's volume, was KWEB $29 call expiring December 18, 2026, not a same-day contract: one six-month position among five afternoon lottery tickets.
Faizler: Uzun vade yarım yıl kapanışına doğru yükseldi
Her verinin arkasındaki tam SQL
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
)Uzun vade, yarım yılın son gününde yukarı yönlü hareket etti: 10 yıllık tahvil 6 bp artarak 4.44% seviyesine, 2 yıllık tahvil 4 bp artarak 4.14% seviyesine ulaştı ve 2s10s spread 2 bp dikleşerek 0.3 puana yükseldi. Uzun vadeli getiriler; en zayıf sektör olan gayrimenkul (-2%) ve üçüncü en zayıf sektör olan kamu hizmetleri (-1.48%) gibi her ikisi de klasik olarak faiz duyarlılığı yüksek sektörlerin zayıf seyrettiği bir işlem seansında yükseldi: Bu durum, verilerin kanıtlayabileceği bir mekanizma olmasa da dikkat çekmeye değer bir eş zamanlılıktır (H1 özeti yarım yılın eğrisini taşımaktadır).
Günün arkasındaki takvim
Her verinin arkasındaki tam SQL
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 temettü kayıtları çeyreğin son gününde temettüden muaf oldu — çoğu ABD şirketinin üç aylık ödeme yapması nedeniyle çeyrek sonu dalgası yaşandı — 7 bölünme ve 2 yeni listeleme (AACU — Ares Acquisition Corp III; OSPRU — Osprey Acquisition Corp. III) ile birlikte. Dosyalama sütunu veri kalitesi açısından belirleyicidir: SEC endeksi 30 Haziran için 31 dosyalama içeriyor — bir önceki güne kıyasla 4439 oranında 0 içeriden öğrenenlerin Form 4 formları ve 0 8-K mevcut. Verideki ay sonu örüntüsü, ay sonu boşluk notunda tanımlanmıştır; bu günü içeren herhangi bir sayım, veriler geriye dönük tamamlanana kadar eksik sayılmaktadır.
Oturum, doğrulandı
Her verinin arkasındaki tam SQL
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'SPY çubukları, New York saatiyle 04:00 ile 19:59 arasında tam olarak 390 düzenli pencere çubuğu ile ilerler — borsa takvimi veri seti yalnızca yaklaşan kapanışları içerdiğinden, tam bir oturum veri kaydından doğrulanmıştır.
Seansın özeti
0.73% SPY kapanışı, hisselerin 51.8%'sının yükselmesi, 10 sektör fonlarının 4'sinin yeşil seyretmesi ve en iyi ile en kötü arasında 4.69 puanlık bir fark olması, geniş kapsamlı bir yükseliş değildir. Bu durum, bir endeksin görünümüne bürünmüş tek bir sektörün yükselişidir ve çeyrek sonu ihalesindeki en yoğun yarım saati temsil etmektedir. Endeks değişimi bir ortalamadır; bu seans ise çoğu sektör düşerken teknoloji sektörü sayesinde yükselmiştir: Yön değişimine güvenmeden önce dağılımı kontrol edin.
SSS
30 Haziran 2026 tarihinde borsa nasıl performans gösterdi?
Borsa yükselişle kapandı: SPY, 29 Haziran kapanışına kıyasla 0.73%, QQQ ise 1.63% kazanç sağladı. Piyasa genişliği daha dardı — likit hisselerin 51.8%'si yükselirken, 10 S&P sektör fonlarının 4'ü yeşil kapattı.
30 Haziran 2026 tarihinde piyasaya hangi sektör liderlik etti?
Teknoloji: XLK 2.69% kazanç sağladı; sanayi sektörü 1.34%, gayrimenkul sektörü ise en son -2% kazanç elde etti — en iyi ve en kötü sektör arasındaki fark 4.69 puan oldu.
30 Haziran 2026 tarihinde en çok hareket eden hisseler hangileriydi?
10 milyon dolar veya üzerinde işlem görenler arasında, en yüksek kazancı JEM (+256.76%) ve en büyük kaybı SOC (55.89%) yaşadı. Her iki hisse de bölünme kaydı taşımıyor: her iki hareket de kurumsal işlem kaynaklı değil, gerçek fiyat hareketleridir.
2026'nın ikinci çeyreğinde borsa nasıl performans gösterdi?
1 Nisan açılışından 30 Haziran kapanışına kadar geçen 62 işlem gününde: QQQ +26.53%, IWM 20.21%, SPY 14.13%, DIA 12.08% — büyüme odaklı bir çeyrek, büyüme odaklı bir gün ile tamamlandı.
Son yarım saatte neden bu kadar yüksek hacim işlem görüyor?
Son yarım saatde, açılıştaki 2.05 milyar hisseye kıyasla 2.69 milyar hisse işlem gördü. Kapanış müzayedeleri, her hissenin resmi kapanış fiyatını tek bir eşleşme ile belirler ve endeks fonları bu fiyatla uyumlu hale gelmek için orada işlem yapar; çeyrek sonu yeniden dengeleme işlemleri ise akışı yoğunlaştırır.
Veri notları ve yöntem
- Sepetler. Sektör paneli, panelde belirtilen on SPDR sektör fonundan oluşur; her oturumda aynı sepet kullanıldığından, dağılım verisi günler arasında karşılaştırılabilir. Hareket panelleri için 10 milyon dolar işlem hacmi ve bir önceki kapanış fiyatının 1 doların üzerinde olması gerekmektedir; yukarıda tekrar eden sembol listesi hariç tutulmuştur ve bölünme kayıt sütunu içerir.
- Uyarılar. Dolar hacmi, dakikalık bir göstergedir (kapanış × bar başına hacim). 30 Haziran tarihli bildirim endeksi boş sayılır (ay sonu boşluk notu bunu açıklamaktadır). Haber sayıları tek bir veri sağlayıcısına aittir: burada yer almayan bir haber, hiçbir yerde yayınlanmadığı anlamına gelmez.
- Yöntem. Bir oturum (1, gözlemlenen barlardan doğrulanmıştır); zaman damgaları UTC olarak saklanır ve sorgularda New York saatine dönüştürülür; "kapanış", açık artırma fiyatı değil, son düzenli dakika barıdır. Opsiyon vadeleri OCC sembolünden yeniden ayrıştırılır (tablonun kendi sütunu hatalıdır); moneyness, SPY'nin son düzenli barına göre ölçülür. Paneller, yazım sırasında salt okunur yol üzerinden bir kez çalıştırılır. Veri deposu 13 Temmuz 2026 itibarıyla günceldir.
Her panel saklanmış bir sorgu sonucudur — grafik, tablo ve SQL tek bir nesne içindedir. Herhangi birini Strasmore terminaline yapıştırabilirsiniz. Sonraki oturum: 1 Temmuz.