Strasmore Research
Ringkasan pasaran Matt ConnorOleh Matt Connor

ringkasan pasaran minggu 20 julai 2026

Minggu penuh pertama selepas opsyen Julai: skor indeks, sebaran sektor, lebar mingguan, dan aliran dolar. Data daripada pertanyaan tersimpan.

Minggu 20 Julai 2026 merupakan minggu penuh pertama selepas tamat tempoh opsyen bulanan Julai, dan ia berlangsung selama 5 sesi tanpa sebarang penutupan di dalamnya. Perubahan tutup-ke-tutup SPY pada minggu tersebut ialah -0.59%, dan jika diukur dari buka ke tutup berbanding tahun mingguan sebelumnya, ia berada di kedudukan 43 daripada 53. Setiap nombor di bawah dibaca daripada pertanyaan yang disimpan, dan setiap tetingkap ditetapkan pada tarikh yang jelas, jadi menjalankan semula SQL akan mengembalikan angka yang sama ini.

Minggu di papan

Perubahan mingguan diukur dari tutup biasa Jumaat 17 Julai hingga Jumaat 24 Julai. Lajur terakhir membawa minggu sebelumnya, jadi kedua-duanya terletak bersebelahan. Baris disusun mengikut abjad.

PertanyaanSPY / QQQ / DIA / IWM: minggu 20 Julai berbanding tutup 17 Julai, dengan perubahan minggu sebelumnya
SQL tepat di sebalik setiap nombor
SELECT ticker,
    round(argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00'), 2) AS prior_week_close,
    round(argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00' AND window_start < '2026-07-24 20:00:00'), 2) AS week_close,
    round((argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00' AND window_start < '2026-07-24 20:00:00')
         / argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00') - 1) * 100, 2) AS week_change_pct,
    round((argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
         / argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-10 13:30:00' AND window_start < '2026-07-10 20:00:00') - 1) * 100, 2) AS prior_week_change_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
  AND ((window_start >= '2026-07-10 13:30:00' AND window_start < '2026-07-10 20:00:00')
    OR (window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
    OR (window_start >= '2026-07-24 13:30:00' AND window_start < '2026-07-24 20:00:00'))
GROUP BY ticker
ORDER BY ticker

Sepanjang minggu: DIA bergerak -0.38%, IWM -0.98%, QQQ -1.59%, dan SPY -0.59% ke tutup $738.85. Bacaan minggu sebelumnya, dalam susunan abjad yang sama, ialah -0.95%, -0.63%, -4.17%, dan -1.55%. Sejauh mana keempat-empat indeks itu terpisah adalah perkara pertama yang diukur oleh papan skor, dan ia tidak selalunya kecil.

Minggu ini berbanding tahun lepas

Angka satu minggu tidak bermakna tanpa taburan di belakangnya. Panel ini mengira semula setiap minggu lepas dengan logik yang sama, dari buka hingga tutup melalui sesi biasa, dan meletakkan minggu ini di dalamnya.

PertanyaanMinggu SPY dalam konteks tahun lepas (pulangan mingguan buka-tutup)
SQL tepat di sebalik setiap nombor
SELECT round(anyIf(ret, wk = toDate('2026-07-20')), 2) AS week_open_to_close_pct,
       arrayCount(x -> x > anyIf(ret, wk = toDate('2026-07-20')), groupArrayIf(ret, wk != toDate('2026-07-20'))) + 1 AS rank_best,
       count() AS weeks_compared,
       toString(min(wk)) AS first_week,
       anyIf(sessions_measured, wk = toDate('2026-07-20')) AS sessions_this_week
FROM (
    SELECT toStartOfWeek(toDate(toTimeZone(window_start, 'America/New_York')), 1) AS wk,
           uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions_measured,
           (argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS ret
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2025-07-21 00:00:00')
      AND window_start < toDateTime('2026-07-25 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 wk
    HAVING sessions_measured >= 3
)

Diukur dengan cara itu, SPY memberikan pulangan -1.1% dan berada di kedudukan 43 daripada 53 minggu sejak 2025-07-21. Perhatikan jurang takrifan: angka ini bermula pada bukaan sesi biasa pertama minggu itu, papan skor di atas bermula pada tutup minggu sebelumnya. Kedua-duanya dilabel di mana-mana ia muncul.

Lima sesi, satu aliran

PertanyaanSPY mengikut sesi: tutup, perubahan, dan volum saham, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(d) AS date,
       round(c, 2) AS spy_close,
       round((c / prev_c - 1) * 100, 2) AS change_pct,
       round(shares_m, 1) AS spy_shares_m
FROM (
    SELECT d, c, shares_m,
           lagInFrame(c) OVER (ORDER BY d ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_c
    FROM (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
               argMax(toFloat64(close), window_start) AS c,
               toFloat64(sum(volume)) / 1e6 AS shares_m
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-24 20:00:00'))
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY d
    )
)
WHERE d >= '2026-07-20'
ORDER BY date

Sesi demi sesi, perubahan SPY mencatat -0.15% pada Isnin, 0.84% pada Selasa, -0.12% pada Rabu, -1.22% pada Khamis, dan 0.08% pada Jumaat, ditutup pada $738.85 dengan 40.1 juta saham. Angka Isnin diukur berbanding penutupan 17 Julai, iaitu sesi sejurus sebelum tempoh tersebut.

Keluasan, sesi demi sesi

Tahap indeks hanyalah satu nombor. Keluasan mengira berapa banyak saham yang bergerak bersamanya, dan ia adalah nombor yang menentukan sama ada minggu hijau itu luas atau sempit.

PertanyaanPenaik dan penurun setiap sesi, nama dengan dagangan $5M+, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(d) AS date, advancers, decliners, unchanged, measured_names
FROM (
    SELECT d,
           countIf(c > prev_c) AS advancers,
           countIf(c < prev_c) AS decliners,
           countIf(c = prev_c) AS unchanged,
           count() AS measured_names
    FROM (
        SELECT d, c, dv,
               lagInFrame(c) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_c
        FROM (
            SELECT ticker,
                   toDate(toTimeZone(window_start, 'America/New_York')) AS d,
                   argMax(toFloat64(close), window_start) AS c,
                   sum(toFloat64(close) * toFloat64(volume)) AS dv
            FROM global_markets.delayed_stocks_minute_aggs
            WHERE ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
                OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-24 20:00:00'))
              AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
            GROUP BY ticker, d
        )
    )
    WHERE d >= '2026-07-20' AND prev_c > 0 AND dv >= 5000000
    GROUP BY d
)
ORDER BY date

Pada hari Isnin, 1268 daripada 3945 nama yang diukur meningkat dan 2632 jatuh. Menjelang hari Jumaat, pecahannya menunjukkan 2273 naik berbanding 1635 turun, daripada 3950. Nama yang tidak mempunyai harga tutup pada kedua-dua belah sesi dikecualikan, itulah sebabnya jumlah yang diukur berubah sedikit dari hari ke hari.

Soalan yang sama ditanya sekali, merentas keseluruhan minggu:

PertanyaanKeluasan mingguan: tutup biasa 24 Julai berbanding tutup biasa 17 Julai, nama dengan dagangan $5M+ sepanjang minggu
SQL tepat di sebalik setiap nombor
SELECT
    countIf(cw > cp AND liquid) AS advancers,
    countIf(cw < cp AND liquid) AS decliners,
    countIf(cw = cp AND liquid) AS unchanged,
    countIf(liquid) AS measured_names,
    countIf(NOT liquid) AS dropped_by_liquidity_filter,
    round(100.0 * countIf(cw > cp AND liquid) / countIf(liquid), 1) AS advancer_pct
FROM (
    SELECT ticker, cp, cw, dv >= 5000000 AS liquid
    FROM (
        SELECT ticker,
               argMaxIf(toFloat64(close), window_start, window_start < '2026-07-18 00:00:00') AS cp,
               argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00') AS cw,
               sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-20 13:30:00') AS dv
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-25 00:00:00'))
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY ticker
        HAVING cp > 0 AND cw > 0
    )
)

Daripada 6100 nama yang melepasi halangan pusing ganti waktu biasa sebanyak lima juta dolar, 2437 ditutup di atas harga tutup 17 Julai mereka dan 3630 ditutup di bawahnya, dengan bahagian saham menaik sebanyak 40%. Penapis kecairan mengetepikan 5099 lagi nama yang didagangkan di bawah halangan tersebut sepanjang minggu. Mereka dikira di sini dan bukan dibuang secara senyap.

Papan skor sektor

Kesebelas ETF sektor SPDR, dari tutup 17 Julai hingga 24 Julai, disusun daripada terbaik kepada terburuk.

PertanyaanETF sektor, perubahan minggu penuh: tutup 24 Julai berbanding tutup 17 Julai
SQL tepat di sebalik setiap nombor
SELECT sector, week_pct, round(max(week_pct) OVER () - week_pct, 2) AS points_behind_best
FROM (
    SELECT multiIf(ticker = 'XLK', 'Technology', ticker = 'XLC', 'Communications', ticker = 'XLE', 'Energy',
                   ticker = 'XLF', 'Financials', ticker = 'XLI', 'Industrials', ticker = 'XLB', 'Materials',
                   ticker = 'XLP', 'Staples', ticker = 'XLRE', 'Real Estate', ticker = 'XLU', 'Utilities',
                   ticker = 'XLV', 'Health Care', 'Consumer Discretionary') AS sector,
           round((cw / cp - 1) * 100, 2) AS week_pct
    FROM (
        SELECT ticker,
               argMaxIf(toFloat64(close), window_start, window_start < '2026-07-18 00:00:00') AS cp,
               argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00') AS cw
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
          AND ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-24 13:30:00' AND window_start < '2026-07-24 20:00:00'))
        GROUP BY ticker
        HAVING cp > 0 AND cw > 0
    )
)
ORDER BY week_pct DESC

Energy berada di puncak papan pada 3.33%. Consumer Discretionary berada di dasar pada -5.2%, 8.53 mata peratusan di belakangnya. Jurang itu adalah serakan sektor minggu ini, dan ia wajar dibaca dengan sendirinya: minggu di mana kesemua sebelas sektor berada dalam lingkungan satu mata antara satu sama lain adalah pasaran yang sangat berbeza daripada minggu di mana jurangnya mencecah dua digit.

Ke mana perginya dolar-dolar tersebut

PertanyaanNama teratas mengikut volum dolar waktu biasa, minggu penuh 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT ticker, week_dollar_bn, round(100 * week_dollar_bn / max(week_dollar_bn) OVER (), 1) AS pct_of_leader
FROM (
    SELECT ticker,
           round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 1) AS week_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-24 20:00:00'
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    ORDER BY week_dollar_bn DESC
    LIMIT 8
)
ORDER BY week_dollar_bn DESC

MU mencetak 158.1 bilion dolar pusing ganti waktu biasa sepanjang lima sesi, mengatasi SPY pada 133.9 bilion dan QQQ pada 101.5 bilion. Di tempat kelapan, AAPL, mencatatkan dagangan sebanyak 34.5% daripada dolar peneraju. Rekod pusing ganti menunjukkan di mana pasaran menghabiskan minggunya berdebat, dan ia tidak semestinya selari dengan harga. Versi per nama bagi ukuran ini ialah volume relatif.

Pergerakan paling ketara minggu ini

Pemecahan saham mengubah angka tanpa mengubah nilai: pemecahan songsang menghasilkan kenaikan empat digit palsu, manakala pemecahan hadapan menghasilkan kejatuhan palsu yang sama besar. Minggu ini terdapat 25 pemecahan songsang dan 11 pemecahan hadapan, dan kedua-dua papan di bawah tidak termasuk sebarang nama yang pemecahannya dilaksanakan antara tutup 17 Julai dan tutup 24 Julai, iaitu selang tepat di mana perubahan diukur. Kedua-duanya juga memerlukan perolehan lima juta dolar dalam waktu dagangan biasa.

PertanyaanPergerak mingguan: sepuluh penaik dan penurun terbesar, tutup waktu biasa, dagangan $5M+, pecahan saham dikecualikan
SQL tepat di sebalik setiap nombor
SELECT ticker, board, week_pct, week_dollar_m, sessions_traded,
       round(100 * week_dollar_m / max(week_dollar_m) OVER (), 1) AS pct_of_dollar_max
FROM (
    SELECT 'gainers' AS board, ticker, round((cw / cp - 1) * 100, 1) AS week_pct,
           round(dv / 1e6, 1) AS week_dollar_m, sessions_traded
    FROM (
        SELECT ticker,
               argMaxIf(toFloat64(close), window_start, window_start < '2026-07-18 00:00:00') AS cp,
               argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00') AS cw,
               sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-20 13:30:00') AS dv,
               uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-20 13:30:00') AS sessions_traded
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker NOT IN ('SPCX')
          AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date > '2026-07-17' AND execution_date <= '2026-07-24')
          AND ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-25 00:00:00'))
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY ticker
        HAVING cp > 0 AND cw > 0 AND dv >= 5000000
    )
    ORDER BY week_pct DESC
    LIMIT 10
    UNION ALL
    SELECT 'decliners' AS board, ticker, round((cw / cp - 1) * 100, 1) AS week_pct,
           round(dv / 1e6, 1) AS week_dollar_m, sessions_traded
    FROM (
        SELECT ticker,
               argMaxIf(toFloat64(close), window_start, window_start < '2026-07-18 00:00:00') AS cp,
               argMaxIf(toFloat64(close), window_start, window_start >= '2026-07-24 13:30:00') AS cw,
               sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-20 13:30:00') AS dv,
               uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-20 13:30:00') AS sessions_traded
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker NOT IN ('SPCX')
          AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date > '2026-07-17' AND execution_date <= '2026-07-24')
          AND ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-25 00:00:00'))
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY ticker
        HAVING cp > 0 AND cw > 0 AND dv >= 5000000
    )
    ORDER BY week_pct ASC
    LIMIT 10
)
ORDER BY board DESC, abs(week_pct) DESC

Untuk muncul di mana-mana papan memerlukan pergerakan sebenar. Peningkatan paling kecil yang ditunjukkan meningkat 92.3%, dan penurunan paling kecil mencatat -47.8%. Pada tahap ekstrem, STAK bergerak 383.7% dengan dagangan sebanyak 251.6 juta dolar, dan LBGJ bergerak -98.8% dengan dagangan sebanyak 47.7 juta. Penurunan itu hampir menyamai keseluruhan nilai disebut nama tersebut, jadi papan itu membawa resitnya sendiri: LBGJ mencatat bar waktu dagangan biasa pada 5 daripada lima sesi, dan tiada pemecahan dilaksanakan ke atasnya antara dua tutup yang diukur oleh papan itu.

Sebaran sebut harga, sesi demi sesi

Harga adalah tajuk utama. Kos untuk menyelesaikan urus niaga adalah sebaran sebut harga, yang diukur di sini pada SPY satu sesi pada satu masa, terus daripada pita NBBO mentah dan bukan daripada sebarang ringkasan.

PertanyaanSpread sebut harga median SPY dan kemas kini NBBO setiap sesi, waktu biasa, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(toDate(sip_timestamp)) AS date,
       round(quantileExactIf(0.5)(
           10000 * (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2),
           bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price), 2) AS median_spread_bps,
       round(count() / 1e6, 2) AS quote_updates_m,
       countIf(bid_price <= 0 OR ask_price <= 0) AS one_sided_quote_count,
       countIf(bid_price > ask_price AND bid_price > 0 AND ask_price > 0) AS crossed_quote_count
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY'
  AND sip_timestamp >= '2026-07-20 13:30:00'
  AND sip_timestamp < '2026-07-24 20:00:00'
  AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY toDate(sip_timestamp)
HAVING countIf(bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price) > 0
ORDER BY toDate(sip_timestamp)

Sebaran sebut harga median SPY diukur sebanyak 0.27 mata asas daripada titik tengah pada hari Isnin dan 0.27 pada hari Jumaat, berdasarkan 3.89 juta dan 4.4 juta kemas kini NBBO. Dua lajur terakhir adalah pendedahan dan bukan penemuan: 0 sebut harga sebelah dan 1084 sebut harga bersilang telah dikira daripada median hari Isnin dan bukannya digugurkan secara senyap. Sebut harga bersilang, bida di atas tawaran, adalah artifak biasa suapan yang disatukan daripada banyak tempat urus niaga yang dicantumkan bersama.

Minggu opsyen selepas tamat tempoh bulanan

Tamat tempoh bulanan Julai jatuh pada hari Jumaat sebelum minggu ini dibuka, maka setiap kontrak yang didagangkan dalam lima sesi ini adalah yang terselamat daripadanya. Masa tamat tempoh menetapkan rentak yang digunakan oleh pedagang hari sama untuk berdagang.

PertanyaanKontrak opsyen, saham hari sama, dan saham panggilan setiap sesi, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(toDate(sip_timestamp)) AS date,
       round(toFloat64(sum(size)) / 1e6, 1) AS contracts_m,
       round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = formatDateTime(toDate(sip_timestamp), '%y%m%d')) / sum(size), 1) AS pct_0dte,
       round(100.0 * sumIf(size, substring(ticker, length(ticker) - 8, 1) = 'C') / sum(size), 1) AS pct_call,
       round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260724') / sum(size), 1) AS pct_expiring_jul24
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-20 00:00:00' AND sip_timestamp < '2026-07-25 00:00:00'
GROUP BY toDate(sip_timestamp)
ORDER BY toDate(sip_timestamp)

Jumlah kontrak mencapai 64 juta pada hari Isnin dan 71.1 juta pada hari Jumaat. Bahagian hari sama, iaitu kontrak yang tamat tempoh pada sesi ia didagangkan, mencatat 40.2% pada hari Isnin berbanding 49% pada hari Jumaat, iaitu sesi tamat tempoh minggu itu. Opsyen panggil mengambil 53.5% daripada jumlah kontrak pada hari Jumaat. Dan tarikan hari Jumaat itu sudah kelihatan dari sesi pembukaan: 15.1% daripada jumlah kontrak pada hari Isnin sudah berada dalam kontrak yang bertarikh tamat tempoh pada hari tersebut.

Kadar sepanjang minggu

PertanyaanKeluk Treasury mengikut sesi, cetakan 17 Julai hingga 24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(date) AS date,
       round(toFloat64(yield_2_year), 2) AS yield_2y_pct,
       round(toFloat64(yield_10_year), 2) AS yield_10y_pct,
       round(toFloat64(yield_30_year), 2) AS yield_30y_pct,
       round((toFloat64(yield_10_year) - toFloat64(yield_2_year)) * 100) AS spread_2s10s_bp,
       round((toFloat64(yield_10_year) - (SELECT toFloat64(any(yield_10_year)) FROM global_markets.treasury_yields WHERE date = '2026-07-17')) * 100) AS chg_10y_from_prior_close_bp
FROM global_markets.treasury_yields
WHERE date >= '2026-07-17' AND date <= '2026-07-24'
ORDER BY date

Diukur daripada cetakan 17 Julai, sepuluh tahun bergerak 16 mata asas kepada 4.71% menjelang cetakan terakhir yang direkodkan, dengan dua tahun pada 4.37% dan tiga puluh tahun pada 5.17%. sebaran dua hingga sepuluh tahun menamatkan siri pada 34 mata asas. Fail Perbendaharaan berjalan kira-kira satu sesi di belakang pita, jadi panel ini membawa 5 cetakan, setiap satu bertarikh dalam jadual.

Jualan pendek: fail harian

FINRA menerbitkan fail harian volum jualan pendek. Volum jualan pendek ialah aliran harian kasar, bukannya kedudukan, dan fail ini kadangkala tiba dalam bentuk terpotong, jadi liputan diukur sebelum sebarang nisbah dipetik daripadanya.

PertanyaanLiputan fail volum pendek harian: ticker dalam fail dan saham pendek, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT date, tickers_on_file, short_shares_bn,
       round(100.0 * tickers_on_file / max(tickers_on_file) OVER (), 1) AS pct_of_fullest_file
FROM (
    SELECT toString(date) AS date,
           uniqExact(ticker) AS tickers_on_file,
           round(sum(short_shares) / 1e9, 2) AS short_shares_bn
    FROM (
        SELECT date, ticker, max(short_volume) AS short_shares
        FROM global_markets.stocks_short_volume
        WHERE date >= '2026-07-20' AND date <= '2026-07-24'
        GROUP BY date, ticker
    )
    GROUP BY date
)
ORDER BY date

5 fail harian tersedia untuk minggu ini. Fail pertama mengandungi 15098 penanda dan 4.71 bilion saham bertanda jualan pendek; fail terakhir mengandungi 15062 penanda, atau 99.7% daripada jumlah penanda dalam fail yang paling lengkap. Sebarang tuntutan volum jualan pendek bagi setiap nama yang diambil daripada fail yang jauh lebih kecil daripada fail-fail lain kekal tidak boleh disahkan sehingga fail tersebut difailkan semula.

Kalendar di sebalik minggu ini

PertanyaanFail SEC mengikut sesi dan jenis borang, 20-24 Julai
SQL tepat di sebalik setiap nombor
SELECT toString(filing_date) AS date,
       count() AS filings,
       countIf(form_type = '4') AS form4,
       countIf(form_type = '8-K') AS form8k,
       countIf(form_type = '424B2') AS f424b2
FROM global_markets.stocks_sec_edgar_index
WHERE filing_date >= '2026-07-20' AND filing_date <= '2026-07-24'
GROUP BY filing_date
ORDER BY date

Sesi pertama dalam rekod membawa 3012 pemfailan, 632 daripadanya adalah laporan Borang 4 orang dalam dan 166 daripadanya adalah 8-K. Sesi terakhir membawa 3814, dengan 644 Borang 4 dan 223 8-K. 5 daripada sesi minggu ini mempunyai indeks harian EDGAR dalam rekod; indeks itu tiba mengikut jadualnya sendiri, yang kadangkala ketinggalan daripada pita.

PertanyaanKalendar korporat minggu ini: dividen, pecahan saham, penyenaraian, berita
SQL tepat di sebalik setiap nombor
SELECT
    (SELECT count() FROM global_markets.stocks_sec_edgar_index WHERE filing_date >= '2026-07-20' AND filing_date <= '2026-07-24') AS filings_week,
    (SELECT uniqExact(filing_date) FROM global_markets.stocks_sec_edgar_index WHERE filing_date >= '2026-07-20' AND filing_date <= '2026-07-24') AS filing_days_on_file,
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= '2026-07-20' AND ex_dividend_date <= '2026-07-24') AS ex_dividends_week,
    (SELECT countIf(ticker IN ('AAPL', 'MSFT', 'JPM', 'KO', 'JNJ', 'XOM', 'CVX', 'PG', 'WMT', 'HD')) FROM global_markets.stocks_dividends WHERE ex_dividend_date >= '2026-07-20' AND ex_dividend_date <= '2026-07-24') AS household_ex_dividends_week,
    (SELECT countIf(toFloat64(split_from) > toFloat64(split_to)) FROM global_markets.stocks_splits WHERE execution_date >= '2026-07-20' AND execution_date <= '2026-07-24') AS reverse_splits_week,
    (SELECT countIf(toFloat64(split_to) > toFloat64(split_from)) FROM global_markets.stocks_splits WHERE execution_date >= '2026-07-20' AND execution_date <= '2026-07-24') AS forward_splits_week,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= '2026-07-20' AND listing_date <= '2026-07-24') AS listings_week,
    (SELECT count() FROM global_markets.stocks_news WHERE published_utc >= '2026-07-20 04:00:00' AND published_utc < '2026-07-25 04:00:00') AS news_week,
    (SELECT uniqExact(JSONExtractString(publisher, 'name')) FROM global_markets.stocks_news WHERE published_utc >= '2026-07-20 04:00:00' AND published_utc < '2026-07-25 04:00:00') AS news_publishers_week

Dokumen lain minggu ini: 17106 pemfailan SEC merentas 5 hari yang diindeks, 592 rekod ex-dividen, 1 daripadanya daripada sepuluh nama isi rumah yang diperiksa panel ini, 25 pecahan saham songsang dan 11 pecahan saham ke hadapan, 4 penyenaraian baharu, dan 1704 artikel daripada 2 penerbit. Pasangan terakhir itu mengukur perhatian satu suapan, bukan liputan media dunia.

Sesi, disahkan

PertanyaanPengesahan sesi: sesi, bar, baris cuti, tutup naik dan turun, tutup seterusnya
SQL tepat di sebalik setiap nombor
WITH spy AS (
    SELECT d, c, lagInFrame(c) OVER (ORDER BY d ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS p
    FROM (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
               argMax(toFloat64(close), window_start) AS c
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND ((window_start >= '2026-07-17 13:30:00' AND window_start < '2026-07-17 20:00:00')
            OR (window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-24 20:00:00'))
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
        GROUP BY d
    )
)
SELECT
    uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions_in_week,
    toString(min(toDate(toTimeZone(window_start, 'America/New_York')))) AS first_session,
    toString(max(toDate(toTimeZone(window_start, 'America/New_York')))) AS last_session,
    count() AS regular_bars_in_week,
    (SELECT count() FROM global_markets.stocks_market_holidays WHERE date >= '2026-07-20' AND date <= '2026-07-24') AS holiday_rows_in_week,
    (SELECT countIf(c > p) FROM spy WHERE d >= '2026-07-20') AS up_sessions,
    (SELECT countIf(c < p) FROM spy WHERE d >= '2026-07-20') AS down_sessions,
    (SELECT toString(min(date)) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-24' AND date <= '2026-12-31' AND status = 'closed') AS next_closure_date,
    (SELECT argMin(name, date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-24' AND date <= '2026-12-31' AND status = 'closed') AS next_closure_name
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= '2026-07-20 13:30:00' AND window_start < '2026-07-24 20:00:00'
  AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199

5 sesi, 2026-07-20 hingga 2026-07-24, dengan 0 baris cuti di mana-mana dalam tetingkap. SPY mencetak 1950 bar minit sesi biasa merentasinya. 2 sesi ditutup di atas harga tutup sebelumnya dan 3 ditutup di bawahnya. Penutupan berjadual seterusnya ialah Labor Day pada 2026-09-07.

Dalam gelanggang

Minggu berikutnya, baca dari jadual kami sendiri:

PertanyaanMinggu depan dalam kalendar: penutupan, ex-dividen, pecahan saham, dan tarikh luput
SQL tepat di sebalik setiap nombor
SELECT
    (SELECT count() FROM global_markets.stocks_market_holidays WHERE date >= '2026-07-27' AND date <= '2026-07-31' AND status != 'open') AS closures_next_week,
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= '2026-07-27' AND ex_dividend_date <= '2026-07-31') AS ex_dividends_next_week,
    (SELECT countIf(ticker IN ('AAPL', 'MSFT', 'JPM', 'KO', 'JNJ', 'XOM', 'CVX', 'PG', 'WMT', 'HD')) FROM global_markets.stocks_dividends WHERE ex_dividend_date >= '2026-07-27' AND ex_dividend_date <= '2026-07-31') AS household_ex_div_next_week,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= '2026-07-27' AND execution_date <= '2026-07-31') AS splits_next_week,
    (SELECT round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260731') / sum(size), 1) FROM global_markets.options_trades WHERE sip_timestamp >= '2026-07-24 00:00:00' AND sip_timestamp < '2026-07-25 00:00:00') AS jul31_expiry_pct_of_friday_volume,
    (SELECT toString(max(settlement_date)) FROM global_markets.stocks_short_interest WHERE settlement_date <= '2026-07-24') AS latest_short_interest_settlement

Jadual cuti menunjukkan 0 penutupan pada minggu berikutnya. 368 rekod ex-dividen jatuh dalam tempoh itu, 0 daripada set isi rumah, bersama 15 pecahan saham berjadual. Daripada volum opsyen Jumaat, 14.2% sudah berada dalam kontrak yang tamat pada Jumaat berikutnya. Tarikh penyelesaian faedah jualan paling terkini dalam fail ialah 2026-07-15, satu fail yang diterbitkan dengan kelewatan yang cukup lama sehingga mempunyai penjelasannya sendiri.

Soalan Lazim

Bagaimanakah prestasi pasaran saham pada minggu 20 Julai 2026?

SPY berubah -0.59% tutup ke tutup dari 17 Julai hingga 24 Julai, dengan QQQ pada -1.59%, DIA pada -0.38%, dan IWM pada -0.98%. Antara nama cair, 2437 naik dan 3630 jatuh.

Sektor manakah yang mengetuai minggu 20 Julai 2026?

Energy, pada 3.33%. Yang paling lemah antara sebelas ETF sektor SPDR ialah Consumer Discretionary pada -5.2%, 8.53 mata peratusan di belakang.

Berapa banyak sesi dagangan dalam minggu 20 Julai 2026?

5, berjalan 2026-07-20 hingga 2026-07-24, dengan 0 baris cuti dalam tetingkap. Penutupan berjadual seterusnya ialah Labor Day.

Tiker manakah yang paling banyak didagangkan dalam dolar pada minggu 20 Julai 2026?

MU, pada 158.1 bilion dolar pusingan waktu biasa, mendahului SPY pada 133.9 bilion.

Nota data

Semua cap masa yang disimpan adalah dalam UTC; waktu dagangan biasa adalah 13:30-20:00 UTC setiap sesi, dan sempadan mingguan berjalan dari tutup dagangan biasa 17 Julai hingga 24 Julai. Setiap panel perbandingan tutup-ke-tutup di sini membaca minit bar terakhir waktu dagangan biasa pada setiap sisi perbandingan, jadi cetakan waktu lanjutan tidak boleh menetapkan tutup mingguan. Kedudukan tahun lepas menggunakan pulangan mingguan buka-ke-tutup, jadi ia tidak akan sepadan dengan papan skor tutup-ke-tutup; kedua-dua definisi dilabelkan di mana ia muncul. Lebar mingguan dan papan pergerakan menggunakan penapis pusing ganti waktu dagangan biasa sebanyak lima juta dolar, dan lebar menerbitkan bilangan nama yang diketepikan oleh penapis tersebut. Papan pergerakan mengecualikan mana-mana nama yang pecahan sahamnya dilaksanakan selepas tutup 17 Julai dan sehingga 24 Julai, iaitu selang tepat perubahan diukur, yang menangkap pecahan yang dicop pada hujung minggu yang terletak di antaranya serta yang dicop pada sesi dagangan; ia tidak mengecualikan ETF leveraj dan songsang, yang boleh mendominasi papan pada minggu arah aliran. Bahagian bawah pboard penurunan boleh berada hampir dengan jumlah kerugian nilai sebut harga untuk minggu tersebut, dan papan itu menerbitkan berapa banyak daripada lima sesi setiap nama dicetak. Panel spread SPY mengira sebut harga sebelah dan silang dan bukannya menggugurkannya secara senyap, dan median diambil ke atas baki sebut harga yang sah. Fail Treasury berjalan kira-kira satu sesi di belakang pita dan indeks harian EDGAR tiba mengikut jadualnya sendiri, jadi panel kadar dan pemfailan melaporkan berapa hari ia sebenarnya dipegang. Tiada indeks turun naik tersirat muncul di sini: siri tersebut tidak dilesenkan ke dalam gudang ini, jadi turun naik dibaca daripada pita melalui julat, bahagian opsyen hari sama, dan tingkah laku sebut harga.

Metodologi

  • Sumber data pasaran: pita konsolidasi. delayed_stocks_minute_aggs untuk harga dan volum, cache_stocks_quotes untuk panel NBBO, options_trades untuk minggu opsyen.
  • Tutup: bar minit sesi biasa terakhir sesi, tidak pernah cetakan 16:00 yang diandaikan dan tidak pernah cetakan waktu lanjutan.
  • Sesi: disahkan daripada jadual cuti serta bar yang diperhatikan, tidak pernah diandaikan daripada kalendar.
  • Pengendalian zon waktu: klausa WHERE menggunakan literal UTC mentah, dan toTimeZone hanya muncul dalam senarai SELECT untuk label ET.
  • Perpuluhan: lajur harga, saiz dan volum diubah kepada Float64 sebelum sebarang pembahagian atau hasil darab.
  • Agregat tentu: kuantil tepat sepanjang, dan setiap tuntutan susunan atau tanda dalam prosa dikodkan sebagai sempadan kewarasan.
  • Tarikh setakat gudang data: 26 Julai 2026.

Pautan silang: edisi sebelumnya siri mingguan ini, apa itu sebaran bida-tanya, bila opsyen tamat tempoh, faedah pendek berbanding volum pendek, dan sebaran dua hingga sepuluh tahun.

Setiap pertanyaan di atas berjalan tanpa perubahan pada terminal Strasmore jika anda ingin mengarahkan semula tetingkap ke minggu yang berbeza.