Nusu ya kwanza ya mwaka 2026 ilikuwa masoko mawili tofauti yaliyounganishwa pamoja: robo ya kwanza ambapo kila ETF kuu ya index ilianguka au haikuenda popote, na robo ya pili iliyorekebisha zaidi ya hasara hiyo. SPY ilimaliza nusu hiyo ikiwa juu kwa 8.8%; QQQ juu kwa 18.7%; na 21.3% ya IWM ilikuwa nusu bora zaidi ya kwanza ambayo ETF ya small-cap imewahi kuchapisha kwenye rekodi tuliyo nayo — risiti iko chini, imehesabiwa upya dhidi ya kila mwaka uliopita katika swala moja. Soko la viwango vya riba lilisimulia hadithi yake lenyewe: 2s10s spread ilipungua kutoka asilimia 72 hadi 30 katika nusu hiyo bila kugeuka kuwa inverted. Ukurasa huu ni daftari kamili la nusu hiyo — ubao wa alama, cheo cha historia, ngazi ya kila mwezi, mkunjo mzima wa yield kwa ukomavu kwa ukomavu, sekta kumi na moja, mageuzi ya mwezi kwa mwezi ya tape ya options, na majina maarufu ya nusu hiyo. Kila namba hapa ni matokeo ya swala lililohifadhiwa; panua paneli yoyote ili kuona SQL.
Nusu ya bodi
SQL halisi nyuma ya kila namba
SELECT ticker,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-03-31') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q1_return_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-04-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
round(argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS h1_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY tickerMgawanyiko wa robo mbili ndio sura ya nusu: SPY -5.2% kisha 14.1%; QQQ -6.9% kisha 26.5%. IWM ilikuwa kiongozi wa kimya wa nusu kwa 21.3% — hisa ndogo zilishinda kila fahirisi ya kampuni kubwa katika miezi sita. Maelezo ya robo yapo kwenye muhtasari wa Q2. Dokezo kuhusu hesabu ya nusu: 8.8% ya SPY kwa miezi sita ni ndogo sana kuliko Q2 yake pekee, kwa kuwa nusu inaunganisha kushuka na kupona — mchanganyiko wa -5.2% na 14.1% unafika pale jedwali linavyoonyesha, na kichwa chochote cha 'faida ya nusu ya kwanza' kwa utulivu kinaelezea safari hiyo yote ya kwenda na kurudi.
Nusu dhidi ya kila nusu ya kwanza kwenye tape
Je, 8.8% nusu si ya kawaida? Paneli zilizo hapa chini zinakokotoa tena SAME faida ya nusu ya kwanza — kuanzia kufunguliwa kwa saa za kawaida hadi kufungwa kwa saa za kawaida mwishoni, Januari hadi Juni — kwa kila mwaka wa historia ya dakika, katika swala moja kwa kila jozi ya ETF yenye hesabu sawa kwa kila mwaka, kisha inaweka nusu hii dhidi ya zingine. Tarehe ya mwanzo kabisa ya tape ya dakika imethibitishwa katika mbinu iliyo hapa chini; nusu ya kwanza kamili kwenye faili ndiyo ambayo risiti zinaitaja.
SQL halisi nyuma ya kila namba
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 1) AS h1_return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
ORDER BY y ASC, ticker ASCSQL halisi nyuma ya kila namba
SELECT ticker,
round(anyIf(ret, y = 2026), 1) AS h1_2026_pct,
arrayCount(x -> x > anyIf(ret, y = 2026), groupArrayIf(ret, y != 2026)) + 1 AS rank_best,
count() AS halves_compared,
min(y) AS first_year,
anyIf(sessions, y = 2026) AS sessions_2026
FROM (
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
(argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS ret
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
)
GROUP BY ticker
ORDER BY ticker ASC8.8% ya SPY inaweka 6 kati ya 23 nusu za kwanza tangu 2004 (nafasi 1 = bora) — theluthi ya juu, si rekodi. 18.7% ya QQQ inaweka 3 kati ya 16 nusu zinazofanana — mfululizo wa QQQ ni mfupi — hazina ilifanya biashara chini ya ishara tofauti ya mzizi kwa kipindi cha miaka — na mwaka wowote wenye chini ya mia moja ya vikao vya nusu ya kwanza kwa ishara hutengwa na ulinzi wa hesabu ya vikao unaoonyeshwa kwenye jedwali, hivyo kutengwa kunaonekana badala ya kukaa kimya.
SQL halisi nyuma ya kila namba
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 1) AS h1_return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('DIA', 'IWM')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
ORDER BY y ASC, ticker ASCSQL halisi nyuma ya kila namba
SELECT ticker,
round(anyIf(ret, y = 2026), 1) AS h1_2026_pct,
arrayCount(x -> x > anyIf(ret, y = 2026), groupArrayIf(ret, y != 2026)) + 1 AS rank_best,
count() AS halves_compared,
min(y) AS first_year,
anyIf(sessions, y = 2026) AS sessions_2026
FROM (
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
(argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS ret
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('DIA', 'IWM')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
)
GROUP BY ticker
ORDER BY ticker ASCSafu ya small-cap ndiyo kichwa cha nusu: IWM inaweka 1 kati ya 23 nusu za kwanza tangu 2004 — bora zaidi kwenye rekodi kwa hazina, mbele ya kila nusu ya uokoaji kwenye jedwali. 8.4% ya DIA inaweka 4 kati ya 23. Msingi, ulioelezwa wazi: kufunguliwa hadi kufungwa kwa saa za kawaida ndani ya kila nusu ya kwanza ya kalenda, hesabu sawa kila mwaka, kikomo cha juu kimefungwa mwishoni mwa kipindi hiki ili seti ya kulinganisha isiweze kukua kimya wakati miaka ya baadaye inapoingizwa.
Mwezi kwa mwezi
SQL halisi nyuma ya kila namba
SELECT toString(toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York')))) AS period_start, ticker,
round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS month_return_pct,
round(argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS month_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY period_start, ticker
ORDER BY period_start, tickerNgazi hiyo inapanda kidogo, inashuka, inashuka, inapanda kwa kasi, inapanda, inashuka kidogo: Aprili ilikuwa kitovu cha nusu mwaka (SPY 9.9%, QQQ 14.8% — mwezi bora zaidi wa QQQ kati ya sita), na Juni ilifunga nusu mwaka kwa utulivu -1.2% kwa SPY. Muhtasari wa Juni yenyewe, pamoja na mgawanyiko wa upana nyuma ya takwimu hiyo ya utulivu, unapatikana hapa. Kusoma jedwali mwezi kwa mwezi: mwaka ulianza karibu bila mabadiliko (SPY 0.9% Januari), ukateleza kupitia Februari (-0.5%) na Machi (-4.2%), kisha Aprili uligeuza mkondo kwa mwezi mmoja, Mei ikaongeza (4.9%), na Juni ikapunguza. Miezi mitatu kati ya sita ilikuwa hasi — hesabu ya sarafu ya miezi kwa nusu mwaka iliyomalizika kwa uthabiti chanya, ambayo ni umbo la kawaida la nusu mwaka za hisa na inastahili kukumbukwa wakati mwezi mmoja unasomwa kama hukumu.
Viwango: mkunjo wote, ukomo kwa ukomo
Mkunjo wa Treasury ulijipinda katika nusu hii, badala ya kuhama sambamba. Sehemu ya mbele kabisa — ukomo unaofuatilia sera kwa karibu zaidi — haukubadilika sana; mwaka-mbili ulipanda asilimia mbili kwa tatu ya pointi; mwaka-thelathini haukuguswa. Jedwali linaonyesha mkunjo wote, mwanzo wa nusu dhidi ya mwisho.
SQL halisi nyuma ya kila namba
SELECT maturity, start_pct, end_pct, round((end_pct - start_pct) * 100, 0) AS change_bp FROM (
SELECT '1-month' AS maturity, (SELECT round(argMin(yield_1_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_month)) AS start_pct, (SELECT round(argMax(yield_1_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_month)) AS end_pct, 1 AS o
UNION ALL SELECT '3-month', (SELECT round(argMin(yield_3_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_3_month)), (SELECT round(argMax(yield_3_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_3_month)), 2
UNION ALL SELECT '1-year', (SELECT round(argMin(yield_1_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_year)), (SELECT round(argMax(yield_1_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_year)), 3
UNION ALL SELECT '2-year', (SELECT round(argMin(yield_2_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_2_year)), (SELECT round(argMax(yield_2_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_2_year)), 4
UNION ALL SELECT '5-year', (SELECT round(argMin(yield_5_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_5_year)), (SELECT round(argMax(yield_5_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_5_year)), 5
UNION ALL SELECT '10-year', (SELECT round(argMin(yield_10_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_10_year)), (SELECT round(argMax(yield_10_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_10_year)), 6
UNION ALL SELECT '30-year', (SELECT round(argMin(yield_30_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_30_year)), (SELECT round(argMax(yield_30_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_30_year)), 7
) ORDER BY oSoma safu ya mabadiliko kutoka juu hadi chini na kujipinda kunaonekana wazi: mwezi-1 ulihama -2 basis points ndani ya miezi sita huku mwaka-2 ukipanda 67 na mwaka-30 ukipanda 5 tu. Mabadiliko sambamba husogeza kila ukomo pamoja; nusu hii iliusogeza katikati ya mkunjo na kubana ncha zote mbili — viwango vifupi vimetia nanga karibu na sera, viwango virefu havijarekebishwa sana.
Kile ambacho kilifanya kwa mteremko
SQL halisi nyuma ya kila namba
SELECT
round((argMin(yield_10_year - yield_2_year, date)) * 100, 0) AS start_bp,
round((argMax(yield_10_year - yield_2_year, date)) * 100, 0) AS end_bp,
round(min((yield_10_year - yield_2_year)) * 100, 0) AS min_bp,
count() AS prints
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)Mwisho mfupi ukipanda kwa kasi kuliko mwisho mrefu ndivyo kusawazisha kunavyokuwa: kiasi cha 2s10s kilishuka kutoka 72 hadi 30 pointi msingi katika mchoro 124 — na mchoro wake wa chini kabisa katika nusu hiyo ulikuwa 27, hivyo mteremko ulisawazisha bila kupinduka. Ikiwa mteremko uliosawazishwa "unamaanisha" chochote kuhusu kinachofuata ni utabiri, na jedwali hili halifanyi utabiri.
SQL halisi nyuma ya kila namba
SELECT toString(date) AS d, round((yield_10_year - yield_2_year) * 100, 0) AS spread_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)
ORDER BY dateMsururu wa kila siku unaonyesha kuwa kusawazisha hakukuwa tukio moja bali ni mchakato wa polepole — mchoro 124 ukishuka hatua kwa hatua katika nusu hiyo, huku kiasi kikianza mwaka kwa 72 pointi msingi na kumalizia kwa 30.
Sekta: mtawanyiko uliofichwa na index
Je, ni sehemu zipi za soko zilizoumia pesa katika nusu mwaka? Fedha kumi na moja za SPDR za sekta, zilizogawanywa nusu na robo, swali moja.
SQL halisi nyuma ya kila namba
SELECT ticker,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-03-31') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q1_return_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-04-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / 1e9, 1) AS h1_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 >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY tickerMtawanyiko ndio simulizi: teknolojia (XLK) ilimaliza nusu mwaka ikiwa juu kwa 30.8% — ikiwa na 42% katika robo ya pili — huku huduma za mawasiliano (XLC) zikimaliza -9.3%, tofauti ya takriban asilimia arobaini kati ya sekta bora na mbaya zaidi ndani ya miezi sita. Kumiliki "soko" kulimaanisha kumiliki pande zote mbili za hiyo. Nishati ni hadithi ya onyo ya paneli kuhusu vipindi virefu: XLE inaonyesha 18.8% nusu mwaka yenye afya — iliyojengwa kutoka 36.9% robo ya KWANZA ikifuatiwa na -11% robo ya pili. Ilikuwa sekta kubwa yenye nguvu zaidi sokoni katika robo ambayo indexes zilianguka, na miongoni mwa dhaifu katika robo zilizopona. Fedha (XLF) zilicheza sinema hiyo hiyo kinyume: -9.9% katika Q1, kisha 7.7% katika Q2. Nambari moja ya H1 inasawazisha safari zote mbili za kurudi; mgawanyiko wa robo ndio mtazamo wa uaminifu.
Gharama ya kufanya biashara katika kila sekta
Majedwali ya mapato yanapatikana kila mahali; lakini nakala za bei si za kawaida. Paneli hii inapima wastani wa tofauti (spread) ya bei ya ununuzi na mauzo (bid-ask spread) kwa kila ETF ya sekta katika kipindi cha kikao kimoja mwakilishi — kuna 123 vikao katika nusu hii, na Juni 29 ndicho kikao kilichopimwa hapa, kikiwekwa alama hivyo — kutoka kwa kila sasisho la NBBO siku hiyo.
SQL halisi nyuma ya kila namba
SELECT ticker,
round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 2) AS med_spread_bps,
round(count() / 1e6, 2) AS quote_updates_m,
countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
AND sip_timestamp >= toDateTime64('2026-06-29 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-29 20:00:00', 9)
GROUP BY ticker
ORDER BY med_spread_bpsKila moja kati ya nukuu hizo kumi na moja ikiwa na pointi chache za msingi au chini — ya bei nafuu zaidi ikiwa 0.62 bps (XLV), na pana zaidi ikiwa 2.23 bps (XLRE) — hii ndiyo maana halisi ya "ETF za sekta ni zenye ukwasi": gharama ya kuingia katika mtazamo wowote wa sekta hupimwa kwa mamia ya asilimia. Kwa kulinganisha na hisa binafsi, uchambuzi wa kina wa Juni 29 unapima tofauti (spread) ya jina moja lenye ukwasi hafifu kwa viwango vya mamia ya mara ya hizi viwango, katika kikao kile kile.
Upana katika nusu
Upana katika kiwango cha nusu unakuja katika punje mbili hapa. Punje mbovu: SPY ilirekodi 64 vikao vya kupanda dhidi ya 59 vya kushuka katika 123 ya nusu — karibu kabisa ni sarafu ya siku chini ya nusu iliyo na mwelekeo chanya thabiti, ambayo ndiyo sura ya kupanda kwa shida kutoka kwa rekodi ya kila siku. Punje laini — kila ticker ikihesabiwa — inakaa katika kiwango cha mwezi: mgawanyiko wa waongezaji/wapunguzaji wa Juni uko katika muhtasari wa Juni (ticker nyingi zilishuka kuliko zilizopanda hapo), na hesabu ya mpaka wa robo mwaka iko katika muhtasari wa Q2. Uchunguzi mmoja wa waongezaji wote wa soko la miezi sita unazidi bajeti ya swala ambayo ukurasa huu unazalisha chini yake; kikomo hicho kinafichuliwa hapa badala ya kupunguzwa kimya kimya.
SQL halisi nyuma ya kila namba
SELECT countIf(day_ret > 0) AS up_sessions,
countIf(day_ret < 0) AS down_sessions,
countIf(day_ret = 0) AS flat_sessions,
count() AS sessions_total
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 2) AS day_ret
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY d
)Kanda ya chaguzi, mwezi kwa mwezi
Kile ambacho ukurasa wa nusu mwaka pekee unaweza kuonyesha: jinsi kanda ya chaguzi yenyewe ilivyobadilika. Kila paneli hapa chini ni uchanganuzi wa kanda nzima ya mwezi mmoja — jumla ya kiasi cha mikataba, na sehemu iliyofanya biashara siku yake yenyewe ya kumalizika muda (0DTE). Hadithi iliyopimwa: kiasi kilikimbia kutoka mikataba 1316.1 milioni mwezi Januari hadi 1477.9 milioni mwezi Juni — mwezi wa nusu mwaka wenye shughuli nyingi zaidi za chaguzi — na sehemu ya kumalizika muda siku hiyo hiyo ilipanda kutoka 26.5% mwezi Januari hadi 34.3% mwezi Juni, mwezi wa juu zaidi wa nusu mwaka. Theluthi moja ya kiasi cha chaguzi mwezi Juni ilifanyika biashara kwenye mikataba iliyomalizika muda siku hiyo hiyo.
SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-01-01 00:00:00')
AND window_start < toDateTime('2026-02-01 00:00:00')SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-02-01 00:00:00')
AND window_start < toDateTime('2026-03-01 00:00:00')SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-03-01 00:00:00')
AND window_start < toDateTime('2026-04-01 00:00:00')SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-04-01 00:00:00')
AND window_start < toDateTime('2026-05-01 00:00:00')SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-05-01 00:00:00')
AND window_start < toDateTime('2026-06-01 00:00:00')SQL halisi nyuma ya kila namba
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')Gharama ya kufanya biashara, sampuli ya kila mwezi
SQL halisi nyuma ya kila namba
SELECT toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session,
round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 3) AS med_spread_bps,
round(count() / 1e6, 2) AS quote_updates_m,
countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY'
AND ((sip_timestamp >= toDateTime64('2026-01-14 14:30:00', 9) AND sip_timestamp < toDateTime64('2026-01-14 21:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-02-11 14:30:00', 9) AND sip_timestamp < toDateTime64('2026-02-11 21:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-03-11 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-03-11 20:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-04-15 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-04-15 20:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-05-13 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-05-13 20:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-06-10 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-10 20:00:00', 9)))
GROUP BY session
ORDER BY session ASCWastani wa kuenea kwa bei iliyotajwa (quoted spread) ya SPY siku ya Jumatano ya pili ya kila mwezi: 0.145 bps katika sampuli ya Januari, 0.144 katika ya Februari, takriban mara mbili ya hapo katika sampuli za majira ya kuchipua, na 0.409 bps katika sampuli ya Juni — iliyo pana zaidi kati ya sita. Msingi, uliofichuliwa: hizi ni vipindi vya sampuli moja vilivyowekewa lebo (siku ya Jumatano ya pili ya kila mwezi), si wastani wa mwezi mzima — uchunguzi wa mkanda mzima wa nukuu za miezi sita unazidi bajeti ya maswali ya ukurasa huu. Tarehe za sampuli ziko kwenye paneli, na nukuu batili zinahesabiwa hapo, si kutupwa kimya kimya.
Majina Maarufu ya Nusu Mwaka
Kipimo cha umaarufu, si chaguo la wahariri: orodha iliyo hapa chini ni sehemu ya juu ya jedwali la kiasi cha dola la robo mwaka, lililohesabiwa upya hapa ili ukurasa huu uwe na uthibitisho wake, na kila jina lililostahili uchambuzi wa kina lina kiungo chake.
SQL halisi nyuma ya kila namba
SELECT ticker,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 1) AS dollar_bn,
round(100 * sum(toFloat64(close) * toFloat64(volume)) / max(sum(toFloat64(close) * toFloat64(volume))) OVER (), 1) AS pct_of_leader
FROM global_markets.delayed_stocks_minute_aggs
WHERE 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
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY dollar_bn DESC
LIMIT 8MU lilizidi SPY katika robo ya pili (dola bilioni 2047.5 dhidi ya dola bilioni 2032) — uthibitisho sawa na ule wa muhtasari wa Q2. Kwa majina sita katika kundi hilo la juu, nusu mwaka:
SQL halisi nyuma ya kila namba
SELECT ticker,
round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, window_start >= toDateTime('2026-04-01 00:00:00') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / 1e9, 1) AS h1_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('MU', 'NVDA', 'TSLA', 'SNDK', 'AMD', 'INTC')
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY tickerKundi la kumbukumbu na semiconductor linatawala nusu mwaka: SNDK ilirejesha 830.1% katika miezi sita, MU 290% — uchambuzi wa Juni yake kwa kila tikiti hapa — na INTC 269.3%. NVDA, tikiti kubwa zaidi katika kundi hilo kwa dola bilioni 3287.9 za mauzo ya nusu mwaka, ilirejesha 5.2% — tarakimu moja wakati majina ya kumbukumbu yaliongezeka mara nyingi; uchambuzi wa kina wa Juni yake unaonyesha tofauti hiyo kwa kila kikao. TSLA ndilo jina moja lililopungua katika kundi hilo kwa -8.2%. Uorodheshaji mkubwa wa Juni unafanya biashara chini ya alama iliyotumiwa tena na haujumuishwi katika skana za viongozi hadi uthibitisho wa chombo utakapokamilika — mwezi wake wa kwanza una chapisho lake la uthibitisho kwa uthibitisho. Msingi: kundi la viongozi linachaguliwa kwa kiasi cha dola cha saa za kawaida cha Q2 (skana iliyo hapo juu); safu za marejesho ni za nusu mwaka, kuanzia ufunguzi wa saa za kawaida hadi kufunga kwa saa za kawaida.
Wimbi la IPO katika nusu ya mwaka, mwezi kwa mwezi
SQL halisi nyuma ya kila namba
SELECT toString(toStartOfMonth(listing_date)) AS m, count() AS listings
FROM global_markets.stocks_ipos
WHERE listing_date >= toDate('2026-01-01') AND listing_date <= toDate('2026-06-30')
GROUP BY m
ORDER BY mWimbi la uorodheshaji lilikuwa limejazwa mbele na halikuwa sawa: Februari ndio ulikuwa mwezi wenye shughuli nyingi zaidi katika nusu ya mwaka ukiwa na uorodheshaji 47 na Machi ndio ulikuwa mwezi wa utulivu zaidi ukiwa na 17 — uorodheshaji maarufu wa Juni ulitokea katika mwezi uliokuwa na wingi wa kawaida (35 uorodheshaji).
Kalenda ya nusu mwaka
SQL halisi nyuma ya kila namba
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-01-01') AND ex_dividend_date <= toDate('2026-06-30')) AS ex_div_events,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-01-01') AND execution_date <= toDate('2026-06-30')) AS splits,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-01-01') AND listing_date <= toDate('2026-06-30')) AS ipos,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date >= toDate('2026-01-01') AND filing_date <= toDate('2026-06-30')) AS h1_filings,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-03-31')) AS filings_mar31,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')) AS filings_apr30,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS filings_jun30205 makampuni yalifanya utangazaji hadharani katika nusu mwaka — wimbi la uorodheshaji ambalo uanzishaji wake mkubwa wa Juni una chapisho lake kwa hati-mkono moja moja — pamoja na matukio 830 ya mgawanyiko na 28356 ya ex-gawio. Kwa kiwango, hiyo ni zaidi ya uorodheshaji mmoja mpya kwa kila kikao cha biashara katika nusu mwaka. Jumla ya uwasilishaji ina ufichuzi mara tatu: fahirisi ya SEC iko karibu tupu kila mwisho wa mwezi wa nusu mwaka ambapo siku ya mwisho ya kalenda ilikuwa siku ya kazi (55 uwasilishaji ulioorodheshwa Machi 31, 34 Aprili 30, na 31 Juni 30, dhidi ya maelfu siku za jirani), kwa hivyo hesabu za uwasilishaji za nusu mwaka zinapunguzwa hadi mlisho ujazwe nyuma — pengo la mwisho wa mwezi lina noti yake ya utambuzi.
Risiti ya kikao
SQL halisi nyuma ya kila namba
SELECT
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')) AS h1_sessionsVidokezo vya Data
Vidokezo Kamili vya Data
- Maslahi mafupi yanaisha kwenye makazi ya Juni 15 kufikia wakati wa kuzalisha (chapisho la mwisho wa Juni linangoja — ufichuzi kamili katika muhtasari wa Juni; chapisho hili linazalishwa upya linapowasili).
- Siku tatu za mwisho wa mwezi za kuwasilisha faharasa za 2026 zimekaribia kuwa tupu (Machi 31, Aprili 30, Juni 30 — kila mwisho wa mwezi wa nusu ambayo siku yake ya mwisho ya kalenda ilikuwa siku ya wiki); imefichuliwa ndani ya hesabu, imegunduliwa katika dokezo la pengo la mwisho wa mwezi. Mwisho wa miezi ya mwaka uliopita hubeba maelfu ya mawasilisho, kwa hivyo hili ni pengo la ulishaji, si likizo ya mawasilisho.
- Jedwali la viongozi kwa kiwango cha nusu limepunguzwa: uchunguzi wa soko zima kwa miezi sita unazidi bajeti ya maswali ambayo ukurasa huu unazalisha chini yake, kwa hivyo seti ya majina mashuhuri huchaguliwa kwa uchunguzi wa viongozi wa kiwango cha robo unaoonyeshwa ndani, na faida za nusu hiyo hukokotolewa kwa seti hiyo iliyowekwa — msingi umeelezwa mahali unapotumika. Muhtasari wa Q2 na Juni hubeba jedwali kamili la viongozi katika viwango vyao.
- Uenezi wa soko zima kwa kiwango cha nusu pia umepunguzwa — mgawanyiko wa siku umeonyeshwa; hesabu za viwango vya ticker zinaishi katika kiwango cha mwezi na robo, zimeunganishwa katika sehemu ya uenezi.
- Mfululizo wa historia ya QQQ ni mfupi kuliko wa SPY: hazina hiyo ilifanya biashara chini ya alama tofauti ya mzizi kwa kipindi cha miaka; ulinzi wa hesabu ya vikao unatenga miaka hiyo kwa uwazi (hesabu za vikao kwa mwaka ziko kwenye jedwali).
- Vipande sita vya chaguzi ni uchunguzi wa kila mwezi wa mkanda mzima na sampuli ya mwelekeo wa spread inachukua kikao kimoja kilichowekwa alama kwa mwezi — vyote vinaendeshwa kwenye njia ya kundi; misingi ya sampuli imeelezwa ndani.
- Miundo midogo iko katika uchunguzi wa kina wa Juni 29.
Mbinu
- Kipindi ni Januari 1 – Juni 30, 2026 — vikao 123, vilivyothibitishwa kutoka kwa baa zilizozingatiwa. Mapato ni kuanzia ufunguzi wa saa za kawaida hadi kufunga kwa saa za kawaida ndani ya kila dirisha, yote yamekokotolewa katika maswali yaleyale yaliyoonyeshwa.
- Ulinganisho wa kihistoria hukokotolewa MOJA KWA MOJA dhidi ya historia kamili ya dakika wakati wa utengenezaji — kamwe haisomwi kutoka kwa thamani zilizohifadhiwa. Uthibitishaji wa kina: tarehe ya baa ya kwanza ya dakika katika mtazamo uliocheleweshwa unaotumiwa hapa inalingana na ile ya jedwali la msingi (Septemba 2003), iliyokaguliwa wakati wa uandishi, kwa hivyo nusu ya kwanza kamili kwenye faili ni ya 2004. Kila swali la historia huweka kikomo chake cha juu mwishoni mwa kipindi hiki (seti ya ulinganisho haiwezi kukua wakati miaka ya baadaye inapoingizwa) na hutumia ulinzi wa kikao cha chini kabisa chenye hesabu za vikao kwa mwaka zilizoonyeshwa.
- Muda hurekodiwa kwa UTC kwa mipaka ghafi ya UTC. Vitalu vya historia ya miaka mingi huchuja saa za kawaida kwa saa ya ukuta ya Mashariki (9:30–15:59, iliyobadilishwa kwa kila safu — njia pekee salama ya DST katika miongo); vitalu vya dirisha moja katika safu za EDT pekee hutumia bendi sawa ya UTC ghafi. Mbinu zote mbili zimeelezwa hapa.
- Utengenezaji hufanyika kupitia njia ya kusoma tu iliyozuiliwa; ukurasa wa umma kamwe haulizi moja kwa moja. Hali ya ghala kufikia Julai 5, 2026.
Hii ni toleo la kwanza la muhtasari wa kusimama wa nusu mwaka; toleo la mwaka mzima linafuata Januari. Maelezo ya robo: Robo ya Pili 2026. Matangazo makubwa ambayo nusu ya mwaka ilifanya biashara dhidi yake yamo katika picha kuu ya uchumi.