Strasmore Research
Огляди ринку Matt ConnorВід Matt Connor · Оновлено 2026-07-27

огляд ринку 1 липня 2026 року

Друга половина року відкрилася спокійно за індексами, але з різкими рухами всередині: комплекс пам'яті обвалився, META зросла, більшість секторів S&P закрилися в плюсі.

Середа, 1 липня 2026 року — перша сесія другої половини року — поєднала один із найспокійніших індексних днів місяця з найбурхливішим рухом окремих паперів. SPY закрився -0.08%, а QQQ -1.44%, однак комплекс пам’яті, який забезпечив зростання другого кварталу, втратив десяту частину своєї вартості, META підскочила 8.88%, а 7 з 11 секторних фондів S&P усе ще закрилися в плюсі. Попередня сесія: 30 червня.

Табло

Зміни порівнюють останній бар регулярної сесії 1 липня з вівторком 30 червня.

ЗапитSPY / QQQ / DIA / IWM: 1 липня проти закриття 30 червня, основна сесія
Точний 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-30 13:30:00' AND window_start < '2026-06-30 20:00:00'
    GROUP BY ticker
),
sess AS (
    SELECT ticker,
           argMin(open, window_start) AS day_open,
           argMax(close, window_start) AS day_close,
           max(high) AS day_high,
           min(low) AS day_low,
           round(toFloat64(sum(volume)) / 1e6, 1) AS shares_traded_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
      AND window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'
    GROUP BY ticker
)
SELECT
    s.ticker AS ticker,
    round(toFloat64(p.prior_close), 2) AS prior_close,
    round(toFloat64(s.day_open), 2) AS day_open,
    round(toFloat64(s.day_close), 2) AS day_close,
    round((toFloat64(s.day_close) / toFloat64(p.prior_close) - 1) * 100, 2) AS pct_change,
    round(toFloat64(s.day_high), 2) AS day_high,
    round(toFloat64(s.day_low), 2) AS day_low,
    s.shares_traded_m AS shares_traded_m
FROM sess s
JOIN prior p ON s.ticker = p.ticker
ORDER BY s.ticker
Run this yourself →

Спліт — ось у чому суть: DIA на 0.02% та SPY на -0.08% залишилися майже без змін на тлі -1.44% у QQQ та -0.37% у IWM — розпродаж акцій зростання, який широкий ринок майже не помітив.

Один із найспокійніших індексних днів за останній місяць

ЗапитРух SPY від відкриття до закриття в порівнянні з місячним трейлінгом сесій (ранг 1 = найбільший абсолютний рух)
Точний SQL-код для кожного числа
SELECT round(anyIf(oc_pct, d = toDate('2026-07-01')), 2) AS day_move_pct,
       arrayCount(x -> x > abs(anyIf(oc_pct, d = toDate('2026-07-01'))), groupArrayIf(abs(oc_pct), d != toDate('2026-07-01'))) + 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-02 00:00:00')
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    GROUP BY d
)
Run this yourself →

Якщо дивитися на рух усередині сесії (відкриття–закриття), а не на зміну день до дня, то SPY змінився на 0.09%: це 20-й результат за абсолютною величиною серед 22 останніх сесій, менше рухалися лише дві. Комплекс волатильності підтвердив цю картину. Цей склад не має спотового індексу VIX, тому перевірка проводиться за біржовими фондами ф'ючерсів на VIX — найближчим доступним показником ціни захисту:

ЗапитВолатильний комплекс на 1 липня: VIX-ф'ючерсні ETF проти закриття вівторка, з SPY як якорем
Точний SQL-код для кожного числа
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-01 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-01 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-01 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-01 00:00:00') AS day_low
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'SVXY', 'UVXY', 'VIXY', 'VXX')
      AND ((window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00')
        OR (window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 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 / day_low - 1) * 100, 2) AS range_pct
FROM per_name
ORDER BY ticker
Run this yourself →

VXX, найбільший фонд ф'ючерсів на VIX із найближчим місяцем поставки, виріс на 0.72%; VIXY — на 0.8%; кредитний UVXY — на 1.13% у діапазоні 3.68%; обернений SVXY — на -0.42%. Це похибки порівняно з тим, що робили окремі акції.

Ширина: більше падало, ніж зростало, і більше оновило максимуми, ніж мінімуми

ЗапитЗростаючі, падаючі та нові квартальні максимуми проти мінімумів серед тікерів з обсягом не менше $1 млн на 1 липня
Точний SQL-код для кожного числа
WITH per_ticker AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-01 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-01 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start < '2026-07-01 00:00:00') AS quarter_high,
        minIf(toFloat64(low), window_start < '2026-07-01 00:00:00') AS quarter_low,
        maxIf(toFloat64(high), window_start >= '2026-07-01 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-01 00:00:00') AS day_low,
        sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-01 00:00:00') AS day_dollar_volume,
        countIf(window_start < '2026-07-01 00:00:00') AS quarter_bars
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ((window_start >= '2026-04-01 13:30:00' AND window_start < '2026-06-30 20:00:00')
        OR (window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'))
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    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,
    round(100.0 * countIf(day_close > prior_close AND day_dollar_volume >= 1000000)
        / countIf(day_dollar_volume >= 1000000), 1) AS advancer_pct,
    countIf(day_dollar_volume >= 1000000 AND quarter_bars >= 1000 AND day_high > quarter_high) AS new_quarter_highs,
    countIf(day_dollar_volume >= 1000000 AND quarter_bars >= 1000 AND day_low < quarter_low) AS new_quarter_lows,
    round(countIf(day_dollar_volume >= 1000000 AND quarter_bars >= 1000 AND day_high > quarter_high)
        / countIf(day_dollar_volume >= 1000000 AND quarter_bars >= 1000 AND day_low < quarter_low), 1) AS highs_per_low,
    countIf(day_dollar_volume >= 1000000 AND quarter_bars >= 1000) AS names_with_a_full_quarter,
    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,
    countIf(day_dollar_volume >= 1000000 AND quarter_bars < 1000) AS dropped_short_quarter_history
FROM per_ticker
WHERE prior_close > 0 AND day_close > 0
Run this yourself →

2928 зростаючих, 3465 падаючих, 82 без змін, 45.2% ліквідної стрічки зросло. Але ширина — це не глибина: відносно діапазону регулярних торгів другого кварталу 836 з 6217 паперів, які мають повний квартал торгів, у цей червоний день зафіксували новий квартальний максимум, проти 246, що показали новий мінімум, 3.4 нових максимумів на один новий мінімум. Більшість просіло; небагато вийшли за межі свого діапазону. Падіння: 5435 з 11910 паперів, що торгувалися обидві сесії, під фільтром $1 млн, 258 ліквідних назв без повного кварталу барів.

Дошка секторів: збитки були глибокими лише в одному секторі

Одинадцять секторних фондів SPDR — це найдешевший перетин усього ринку, однаковий кошик щосесійно.

ЗапитОдинадцять секторних ETF S&P на 1 липня, від найкращого до найгіршого проти закриття вівторка
Точний SQL-код для кожного числа
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-01 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-01 00:00:00')) AS day_close,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-01 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
      AND ((window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00')
        OR (window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'))
    GROUP BY ticker
)
SELECT
    ticker,
    round(prior_close, 2) AS prior_close,
    round(day_close, 2) AS day_close,
    round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
    round((day_close / prior_close - 1) * 100 - min((day_close / prior_close - 1) * 100) OVER (), 2) AS pct_above_worst_sector,
    sum(if(day_close > prior_close, 1, 0)) OVER (ORDER BY (day_close / prior_close) DESC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS green_so_far,
    day_dollar_bn
FROM per_name
ORDER BY pct_chg DESC
Run this yourself →

Комунікаційні послуги (XLC), секторний фонд, що тримає META, лідирували з 2.41%, фінанси (XLF) відставали на 2.2%. Технології (XLK) опинилися на самому дні, -2.56% та 4.97 відсоткових пункти нижче лідера. Загалом 7 з 11 фондів закрилися в плюсі, споживчий сектор 0.68%, охорона здоров'я 0.57%, тоді як комунальні послуги (-1.28%), промисловість (-0.98%) та енергетика (-0.6%) були в мінусі. Саме це означає "індекс майже не зрушив з місця" зсередини.

Головна подія дня: пам'ять зламалася, META пішла в інший бік

Розходження несли вісім назв: чотири акції компаній із сектору пам'яті та зберігання даних, які лідирували у другому кварталі, і чотири чіпові та платформні назви поряд із ними. Повідомляється про співрух, величину та час; дані не вказують на причину.

ЗапитКомплекс пам'яті та мегакапи: зміна проти закриття вівторка, час діапазону та обсяг у доларах
Точний SQL-код для кожного числа
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-01 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-01 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-01 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-01 00:00:00') AS day_low,
        argMinIf(window_start, (toFloat64(low), toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-01 00:00:00') AS low_bar,
        argMaxIf(window_start, (toFloat64(high), -toInt64(toUnixTimestamp(window_start))), window_start >= '2026-07-01 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-01 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AMD', 'META', 'MRVL', 'MU', 'NVDA', 'SNDK', 'STX', 'WDC')
      AND ((window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00')
        OR (window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'))
    GROUP BY ticker
)
SELECT
    ticker,
    round(prior_close, 2) AS prior_close,
    round(day_close, 2) AS day_close,
    round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    toHour(toTimeZone(low_bar, 'America/New_York')) * 60 + toMinute(toTimeZone(low_bar, 'America/New_York')) AS low_minute_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker
Run this yourself →

SanDisk (-10.45%) та Micron (-10.23%) втратили понад десяту частину своєї вартості; Marvell -8.68%, AMD -6.87%, Western Digital -6.3%, Seagate -5.11%. Обсяг торгів MU склав $42.94 млрд — більше, ніж SPY торгував за весь день, причому MU, AMD та Marvell оновили мінімуми сесії у заключні хвилини (15:59, 15:57, 15:58 за східним часом), продані на закриваючому аукціоні, а не через ранкову повітряну яму, яка затяглася (глибокий аналіз MU має квартал позаду).

META — дзеркальне відображення: 8.88% на обсязі $22.72 млрд, мінімум о 09:30 за східним часом — це відкриваючий бар, який більше не повертався. NVDA не зрушила з місця на рівні -1.09% (червень NVDA).

Що було сказано

Ця сторінка ніколи не приписує причин. Але наш ліцензований новинний канал — це таблиця, як і будь-яка інша, і ось що вона того дня несла:

ЗапитОстанні дванадцять новин дня з тегами MU, SNDK, STX, WDC або META (один ліцензований фід)
Точний SQL-код для кожного числа
SELECT published_et, publisher, names_tagged, headline
FROM (
    SELECT
        published_utc,
        formatDateTime(toTimeZone(published_utc, 'America/New_York'), '%H:%i') AS published_et,
        JSONExtractString(publisher, 'name') AS publisher,
        arrayStringConcat(arrayFilter(x -> x IN ('MU', 'SNDK', 'STX', 'WDC', 'META'), tickers), ' ') AS names_tagged,
        substring(title, 1, 72) AS headline
    FROM global_markets.stocks_news
    WHERE published_utc >= '2026-07-01 04:00:00' AND published_utc < '2026-07-02 04:00:00'
      AND hasAny(tickers, ['MU', 'SNDK', 'STX', 'WDC', 'META'])
      AND NOT has(tickers, 'SPCX')
      AND position(title, 'SPCX') = 0
    ORDER BY published_utc DESC
    LIMIT 12
)
ORDER BY published_utc ASC
Run this yourself →

Стаття The Motley Fool про Micron, опублікована в середині дня (14:11 ET), вийшла під заголовком "Why Micron Stock Is Plummeting Today". Її вечірній огляд (17:12 ET) і наступний матеріал через чотири хвилини (17:16 ET) обидва пов'язували стрибок META з повідомленням про плани продавати надлишкові обчислювальні потужності AI як хмарний бізнес. Це формулювання видання, а не висновок із стрічки даних, і 12 статей від двох видавців — це увага одного каналу, а не ринку.

Куди пішли гроші

ЗапитЛідери за обсягом двома способами: топ-6 за обсягом у доларах, топ-4 за обсягом в акціях (один повторний символ виключено до верифікації)
Точний 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-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    ORDER BY dollar_volume_bn DESC
    LIMIT 6
    UNION ALL
    SELECT
        'by shares traded' AS leaderboard,
        ticker,
        round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_volume_bn,
        round(sum(toFloat64(close) * toFloat64(volume)) / 1e6, 0) AS dollar_volume_m,
        round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    ORDER BY shares_m DESC
    LIMIT 4
)
ORDER BY leaderboard ASC, if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m) DESC
Run this yourself →

$42.94 млрд MU очолили стрічку, SPY другий з $27.76 млрд, META четвертий з $22.72 млрд — акція, що падає, переторгувала індексний фонд у півтора раза. Екстремуми руху були найгучнішими іменами в ньому. Дошка акцій — звичайне дзеркало кривих: SOXS, 3x-інверсний ETF напівпровідників, лідирував з 553.1 млн акцій, найактивніший у день, коли чипи впали, тоді як дешева назва замикає список з 189.8 млн акцій на суму $319 млн (відносний обсяг вказує саме на це). База: звичайні години 1 липня, один випуск із повторним використанням символу виключено (квитанції).

Стрічка опціонів

ЗапитОдин рядок за весь опціонний день: обсяг, експірація того ж дня, пут/колл ск'ю та найактивніший контракт
Точний SQL-код для кожного числа
WITH
    (
        SELECT (any(underlying_symbol), any(toFloat64(strike_price)), any(option_type),
                sum(size), round(avg(toFloat64(price)), 3),
                any(if(substring(ticker, length(ticker) - 14, 6) = '260701', 1, 0)))
        FROM global_markets.options_trades
        WHERE sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-02 00:00:00'
        GROUP BY ticker
        ORDER BY sum(size) DESC, ticker ASC
        LIMIT 1
    ) AS top_contract,
    (
        SELECT round(toFloat64(argMax(close, window_start)), 2)
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'
    ) AS spy_regular_close
SELECT
    round(count() / 1e6, 2) AS option_prints_m,
    round(toFloat64(sum(size)) / 1e6, 2) AS contracts_m,
    round(100.0 * sumIf(size, option_type = 'C') / sum(size), 1) AS call_pct_of_volume,
    round(sumIf(toFloat64(size), option_type = 'P') / sumIf(toFloat64(size), option_type = 'C'), 2) AS put_call_ratio,
    round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260701') / 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' AND option_type = 'P')) / 1e6, 2) AS spy_put_contracts_m,
    round(100.0 * sumIf(size, underlying_symbol = 'SPY' AND option_type = 'P' AND toFloat64(strike_price) < spy_regular_close * 0.98)
        / sumIf(size, underlying_symbol = 'SPY' AND option_type = 'P'), 1) AS spy_puts_2pct_below_pct,
    round(100.0 * sumIf(size, underlying_symbol = 'SPY' AND option_type = 'C' AND toFloat64(strike_price) > spy_regular_close * 1.02)
        / sumIf(size, underlying_symbol = 'SPY' AND option_type = 'C'), 1) AS spy_calls_2pct_above_pct,
    round(sumIf(toFloat64(size), underlying_symbol = 'MU' AND option_type = 'P')
        / sumIf(toFloat64(size), underlying_symbol = 'MU' AND option_type = 'C'), 2) AS mu_put_call_ratio,
    round(sumIf(toFloat64(size), underlying_symbol = 'META' AND option_type = 'P')
        / sumIf(toFloat64(size), underlying_symbol = 'META' AND option_type = 'C'), 2) AS meta_put_call_ratio,
    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_volume,
    reverse(arrayStringConcat(extractAll(reverse(toString(assumeNotNull(top_contract.4))), '\\d{1,3}'), ',')) AS top_contract_volume_fmt,
    round(top_contract.5, 3) AS top_contract_avg_price,
    top_contract.6 AS top_contract_is_same_day,
    round(top_contract.2 - spy_regular_close, 2) AS top_strike_minus_spy_close,
    spy_regular_close AS spy_close
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-02 00:00:00'
Run this yourself →

Обсяг торгів опціонами склав 68.46 млн контрактів за 11.22 млн угод, частка колів у загальному обсязі — 58.6%, частка експірацій того ж дня — 33.5%. Індекс ніхто не хеджував: загалом на ринку припадало 0.71 путів на один кол, а з 5.76 млн путів на SPY лише 11.6% мали страйк більш ніж на два відсотки нижче за його закриття на рівні 745.69 — тобто ті далекі «низькі» страйки, які приносять прибуток під час обвалу. Перекіс спостерігався в окремих акціях: путів Micron було більше, ніж колів (1.11 на один кол), тоді як колів META було більше ніж путів більш ніж удвічі (0.39). Найактивнішим контрактом став кол того ж дня на SPY зі страйком $748, 878,947 контрактів за середньою ціною $0.707, з експірацією на 2.31 доларів поза грошима, як і у вівторок. Експірація 3 липня не зафіксувала жодної угоди за день (0 угод, та п'ятниця є вихідною); тижнева експірація четверга склала 14.43 млн.

Ставки: зростання на довгому кінці, зниження на короткому

Дохідності — щоденні закриття відносно 30 червня.

ЗапитКрива казначейства, закриття 1 липня проти 30 червня (лише заповнені строки)
Точний SQL-код для кожного числа
SELECT
    t.1 AS curve_point,
    round(t.2, 2) AS jul1_yield_pct,
    round((t.2 - t.3) * 100) AS one_day_change_bp
FROM (
    SELECT arrayJoin([
        ('1 month',  toFloat64(d.yield_1_month),  toFloat64(p.yield_1_month)),
        ('3 month',  toFloat64(d.yield_3_month),  toFloat64(p.yield_3_month)),
        ('1 year',   toFloat64(d.yield_1_year),   toFloat64(p.yield_1_year)),
        ('2 year',   toFloat64(d.yield_2_year),   toFloat64(p.yield_2_year)),
        ('5 year',   toFloat64(d.yield_5_year),   toFloat64(p.yield_5_year)),
        ('10 year',  toFloat64(d.yield_10_year),  toFloat64(p.yield_10_year)),
        ('30 year',  toFloat64(d.yield_30_year),  toFloat64(p.yield_30_year)),
        ('2s10s spread', toFloat64(d.yield_10_year - d.yield_2_year), toFloat64(p.yield_10_year - p.yield_2_year))
    ]) AS t
    FROM (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-01') AS d,
         (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-06-30') AS p
)
Run this yourself →

10-річна облігація додала 4 б.п. до 4.48%, 30-річна — 6 б.п., тоді як 1-місячний вексель змінився на -3 б.п. Середня та довга ділянки кривої зросли, короткий кінець знизився. спред 2s10s закрився на рівні 0.31 відсоткових пунктів: жоден показник тут не відповідав розкиду на ринку акцій.

Календар за днем

ЗапитКорпоративний календар та інформаційний потік 1 липня, в одному рядку
Точний SQL-код для кожного числа
WITH
    (
        SELECT (count(), uniqExact(publisher))
        FROM global_markets.stocks_news
        WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-01'
    ) AS news,
    (
        SELECT (argMax(t, n), max(n))
        FROM (
            SELECT t, count() AS n
            FROM (
                SELECT arrayJoin(tickers) AS t
                FROM global_markets.stocks_news
                WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-01'
            )
            WHERE t != 'SPCX'
            GROUP BY t
        )
    ) AS top_news
SELECT
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-01') AS ex_dividend_records,
    (SELECT countIf(frequency = 12) FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-01') AS monthly_payers,
    (SELECT countIf(frequency = 4) FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-01') AS quarterly_payers,
    (SELECT round(100.0 * countIf(frequency = 12) / count(), 1) FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-01') AS monthly_payer_pct,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-01') AS splits_executed,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-01') AS ipos_listed,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-01') AS sec_filings,
    (SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-01') AS insider_form4_filings,
    (SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-01') AS filings_8k,
    (SELECT arrayStringConcat(groupArray(concat(ticker, ' — ', issuer_name)), '; ') FROM (
        SELECT ticker, issuer_name FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-01' 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
Run this yourself →

Квартальний поворот досяг піку: 746 дивідендних рекордів стали екс-дивідендними — хвиля, яку червневий огляд спостерігав, як наростає, разом із 9 сплітами та 3 лістингами (BSP — Bending Spoons S.p.A.; ITG — ITG Inc.; LIME — Neutron Holdings Inc.). Потік звітності відновився: 4283 подань, 1072 з них — Form 4 та 248 — 8-K, після майже порожнього індексного дня 30 червня (зауваження про розрив наприкінці місяця). Наш потік містив 201 статей, найбільше висвітлювали MSFT з 16.

Але кількість нічого не говорить про те, хто платив. Якщо ранжувати за грошима, які в них торгувалися, дошка зовсім не корпоративна:

ЗапитНайбільші назви, що виходять на екс-дивіденди 1 липня, ранжовані за денним обсягом у доларах
Точний SQL-код для кожного числа
WITH divs AS (
    SELECT ticker, max(toFloat64(cash_amount)) AS cash, max(frequency) AS freq
    FROM global_markets.stocks_dividends
    WHERE ex_dividend_date = '2026-07-01' AND distribution_type = 'recurring'
    GROUP BY ticker
),
tape AS (
    SELECT ticker,
           sum(toFloat64(close) * toFloat64(volume)) AS dollar_volume,
           toFloat64(argMax(close, (window_start, close))) AS day_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
)
SELECT
    d.ticker AS ticker,
    round(d.cash, 4) AS cash_per_share,
    d.freq AS payments_per_year,
    round(t.day_close, 2) AS day_close,
    round(100 * d.cash / t.day_close, 2) AS pct_of_price,
    round(100 * d.cash * d.freq / t.day_close, 2) AS annualized_yield_pct,
    round(t.dollar_volume / 1e9, 2) AS day_dollar_bn
FROM divs d JOIN tape t ON d.ticker = t.ticker
WHERE t.dollar_volume > 0 AND d.cash > 0
ORDER BY t.dollar_volume DESC
LIMIT 8
Run this yourself →

Кожен із восьми найактивніших екс-дивідендних тікерів — це фонд, який виплачує 12 разів на рік: SGOV, фонд казначейських векселів, став екс-дивідендним на $0.2958 на акцію (0.29% ціни, 3.54% річних) за обсягу торгів $3.5 мільярда; HYG, фонд високодохідних облігацій, — на $0.3688. Це хвиля першого числа місяця: 572 із 746 рекордів дня (76.7%) — це місячні платники, фонди, що розподіляють відсотки, проти 123 квартальних платників. Падіння в екс-дату є механічним, а не збитком.

Чи буває перший день кварталу звичайним днем?

Напрошується формулювання: новий квартал, нові гроші, свіжі алокації. База даних не погоджується.

ЗапитКожна сесія відкриття кварталу з 2004 року: рух SPY від відкриття до закриття, з 1 липня всередині
Точний SQL-код для кожного числа
SELECT
    count() AS quarter_opens_measured,
    round(quantileExact(0.5)(oc_pct), 2) AS median_quarter_open_pct,
    countIf(oc_pct > 0) AS quarter_opens_green,
    countIf(oc_pct <= 0) AS quarter_opens_red,
    round(anyIf(oc_pct, first_day = toDate('2026-07-01')), 2) AS jul1_oc_pct,
    arrayCount(x -> x < anyIf(oc_pct, first_day = toDate('2026-07-01')), groupArrayIf(oc_pct, first_day != toDate('2026-07-01'))) + 1 AS jul1_rank_worst_to_best,
    round(min(oc_pct), 2) AS worst_quarter_open_pct,
    round(max(oc_pct), 2) AS best_quarter_open_pct,
    concat(monthName(min(first_day)), ' ', toString(toYear(min(first_day)))) AS first_measured
FROM (
    SELECT f.first_day AS first_day, d.oc_pct AS oc_pct
    FROM (
        SELECT toStartOfQuarter(d) AS q, min(d) AS first_day
        FROM (
            SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d
            FROM global_markets.delayed_stocks_minute_aggs
            WHERE ticker = 'SPY'
              AND window_start >= toDateTime('2004-01-01 00:00:00')
              AND window_start < toDateTime('2026-07-02 00:00:00')
              AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
            GROUP BY d
        )
        GROUP BY q
    ) f
    INNER JOIN (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
               (argMax(toFloat64(close), (window_start, close)) / argMin(toFloat64(open), (window_start, open)) - 1) * 100 AS oc_pct
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime('2004-01-01 00:00:00')
          AND window_start < toDateTime('2026-07-02 00:00:00')
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY d
    ) d ON d.d = f.first_day
)
Run this yourself →

За 91 сесій відкриття кварталу починаючи з January 2004 медіанний рух SPY від відкриття до закриття в перший день кварталу становить 0.01%, 46 зелених днів проти 45 червоних, у діапазоні від -2.28% до 3.18%: підкидання монетки з похибкою округлення. 1 липня показало 0.09%, ранг 50 з 91 від найгіршого до найкращого, рівно посередині. База: рух SPY від відкриття до закриття в регулярні години торгів, кожна перша сесія кварталу в базі даних.

Що залишається читачеві після дня

Індекс змінився на 0.09%; панель із восьми назв охоплює діапазон від -10.45% до 8.88%; захист майже не переоцінився. Це звичайна арифметика концентрованого ринку: втрати одного сектора компенсуються приростом у 7 з 11 інших — саме так індекс усереднює підсумок. Погляд на рівні індексу не бачить тут нічого; погляд на рівні позиції бачить, що десята частка холдингу зникла за день.

Сесія, верифікована

ЗапитПеревірка сесії: спостережуваний хвилинний бар SPY
Точний 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-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00') AS regular_session_bars,
    uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00') AS day_sessions,
    (SELECT count() FROM global_markets.stocks_market_holidays WHERE date = '2026-07-01') AS jul1_holiday_rows
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-01 00:00:00' AND window_start < '2026-07-02 00:00:00'
Run this yourself →

Бари SPY тривають з 04:00 до 19:59 за нью-йоркським часом, з 390 барами звичайного вікна та 0 святковими рядками на дату — повна сесія, верифікована за стрічкою.

FAQ

Чи зріс фондовий ринок 1 липня 2026 року?

Залежить від того, куди дивитися. SPY закрився на рівні -0.08%, DIA — 0.02%, QQQ — -1.44%; 3465 ліквідних назв знизилися проти 2928 зростаючих, однак 7 з 11 секторальних фондів закрилися в плюсі, технології були винятком.

Чому Micron, SanDisk, Western Digital та Seagate впали 1 липня 2026 року?

Ці дані показують спільний рух, а не причину: чотири компанії впали в діапазоні від -5.11% до -10.45%. Того ж дня стаття The Motley Fool про Micron (у новинній панелі на цій сторінці, 14:11 за східним часом) вийшла під заголовком «Why Micron Stock Is Plummeting Today». Це формулювання видання, а не висновок із стрічки даних.

Чому META зросла 1 липня 2026 року?

META закрилася на 8.88% вище, досягнувши мінімуму на відкритті. Висвітлення The Motley Fool пов'язало цей рух із повідомленнями про плани компанії продавати надлишкові потужності ШІ як хмарний бізнес: це атрибуція видання, а не наша.

Чи є перший торговий день кварталу зазвичай сильним?

Ні, вимірно це не так. За 91 відкриттів кварталів починаючи з January 2004, медіанний рух SPY від відкриття до закриття становив 0.01%: 46 зростань, 45 падінь — підкидання монети; 1 липня опинилося в середині списку.

Чи хеджував ринок опціонів розпродаж 1 липня 2026 року?

На рівні індексу — ні: 0.71 путів на один кол загалом на ринку, і лише 11.6% путів SPY мали страйк більш ніж на два відсотки нижче закриття.

Примітки до даних

  • Обсяг у доларах — це проксі за хвилину: добуток ціни закриття та обсягу, підсумований за хвилинними барами, лише в основний час. Відображені екстремуми перевірялися за сусідніми барами; за однакових значень береться найраніший.
  • Спотового індексу VIX тут немає. Панель волатильності відображає біржові фонди, що тримають ф'ючерси на VIX і ролують їх; вони пов'язані з індексом, але ніколи не тотожні йому.
  • Нові квартальні максимуми/мінімуми порівнюють екстремуми основного часу 1 липня з діапазоном кожного інструменту за 1 квітня – 30 червня, для ліквідних інструментів із повним кварталом барів; виключення зазначені в панелі.
  • Секторна дошка — це добірний кошик (одинадцять SPDR ETF, а не поле постачальника); панель новин — це один ліцензований канал (12 статей, два видавці); один запис із повторюваним символом виключено з таблиць лідерів (його надходження).

Методологія

  • Одна торгова сесія (1 сесія, підтверджена за спостережуваними барами та таблицею свят, ніколи не передбачається). Часові мітки зберігаються в UTC, конвертуються в нью-йоркський час у запитах; «закриття» — це остання хвилинна свічка регулярної сесії, зміна дня відносно 30 червня.
  • Десяткові числа перетворюються на 64-бітні числа з плаваючою комою перед арифметикою співвідношень; терміни опціонів повторно розбираються з тікера OCC. Панелі запускаються один раз, під час написання, через контрольований шлях лише для читання. Стан сховища станом на 13 липня 2026 року; ця версія додає панелі сектору, волатильності, новин, дивідендів та історії кварталів.

Кожна панель — це результат збереженого запиту, діаграма, таблиця та SQL є одним об'єктом. Вставте будь-який у термінал Strasmore. Далі: 2 липня; тиждень: святковий тиждень.