خلاصه بازار هفته 20 ژوئیه 2026
بررسی عملکرد شاخصها، پراکندگی بخشها، وسعت هفتگی بازار و جریان سرمایه در نخستین هفته کامل پس از سررسید اختیار معاملههای ماهانه ژوئیه.
هفتهٔ 20 ژوئیهٔ 2026، نخستین هفتهٔ کامل پس از سررسید اختیار معاملههای ماهانهٔ ژوئیه بود و 5 جلسه معاملاتی بدون تعطیلی درون آن برگزار شد. تغییر قیمت بستهشدنبهبستهشدن SPY در این هفته -0.59% بود و در مقایسهٔ بازبهبسته با هفتههای سال گذشته، رتبهٔ 43 از 53 را به دست آورد. هر عدد زیر از یک پرسوجوی ذخیرهشده خوانده میشود و هر بازهٔ زمانی به تاریخهای مشخصی متصل است؛ بنابراین اجرای دوبارهٔ SQL همین ارقام را بازمیگرداند.
خلاصه هفته در بازار
تغییرات هفتگی از بسته شدن بازار در جمعه 17 ژوئیه تا بسته شدن بازار در جمعه 24 ژوئیه محاسبه شده است. ستون آخر مربوط به هفته قبل است، بنابراین این دو تغییر در کنار هم قرار گرفتهاند. ردیفها به ترتیب حروف الفبا هستند.
کد دقیق SQL پشت هر عدد
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در پایان هفته: شاخص DIA به میزان -0.38% درصد، IWM به میزان -0.98% درصد، QQQ به میزان -1.59% درصد و SPY به میزان -0.59% درصد تغییر کردند و در قیمت 738.85 دلار بسته شدند. ارقام هفته قبل، به همان ترتیب حروف الفبا، به ترتیب -0.95%، -0.63%، -4.17% و -1.55% بودند. اولین چیزی که یک جدول امتیازات اندازه میگیرد، فاصله این چهار شاخص از یکدیگر است، و این فاصله همیشه کم نیست.
هفته در برابر سال گذشته
عدد یک هفته بدون توزیع پشت آن معنای چندانی ندارد. این پنل هر هفته گذشته را با منطق یکسان، از باز تا بسته در جلسه عادی، دوباره محاسبه میکند و این هفته را در میان آنها رتبهبندی میکند.
کد دقیق SQL پشت هر عدد
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
)با این روش اندازهگیری، SPY بازدهی -1.1% داشته و رتبه 43 از 53 هفته گذشته تا 2025-07-21 را کسب کرده است. به شکاف تعریفی توجه کنید: این رقم از اولین باز جلسه عادی هفته شروع میشود، در حالی که جدول امتیازات بالا از بسته هفته قبل آغاز میشود. هر دو در هر جایی که ظاهر میشوند برچسبگذاری شدهاند.
پنج جلسه، یک روند
کد دقیق SQL پشت هر عدد
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جلسه به جلسه، تغییرات SPY به ترتیب -0.15% در دوشنبه، 0.84% در سهشنبه، -0.12% در چهارشنبه، -1.22% در پنجشنبه و 0.08% در جمعه ثبت شد و در نهایت با قیمت 738.85 دلار و حجم 40.1 میلیون سهم بسته شد. رقم دوشنبه نسبت به بسته شدن 17 ژوئیه، یعنی آخرین جلسه قبل از این دوره، سنجیده شده است.
گستردگی بازار، جلسه به جلسه
یک شاخص تنها یک عدد است. گستردگی بازار تعداد سهامی را میسنجد که با آن شاخص حرکت کردهاند و این عدد تعیین میکند که یک هفته سبز، گسترده بوده یا محدود.
کد دقیق SQL پشت هر عدد
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روز دوشنبه، 1268 از 3945 نامِ اندازهگیریشده افزایش یافت و 2632 کاهش داشت. تا روز جمعه، تقسیمبندی به 2273 سهم صعودی در برابر 1635 سهم نزولی از مجموع 3950 رسید. نامهایی که در هر دو سوی یک جلسه معاملاتی بسته نشدهاند، حذف میشوند؛ به همین دلیل تعداد اندازهگیریشده روزبهروز اندکی تغییر میکند.
همین پرسش، یکبار در کل هفته:
کد دقیق SQL پشت هر عدد
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
)
)از میان 6100 نامی که از سقف گردش مالی پنج میلیون دلاری در ساعات عادی معامله عبور کردهاند، 2437 بالاتر از بسته شدن 17 ژوئیه بسته شدند و 3630 پایینتر از آن بسته شدند؛ سهم صعودیها 40% بود. فیلتر نقدشوندگی 5099 نام دیگر را که در طول هفته زیر این سقف معامله کردهاند، کنار گذاشت. این نامها در اینجا شمارش میشوند، نه اینکه بیصدا حذف شوند.
جدول امتیازدهی بخشها
یازده ETF بخشی اسپیدیآر، از بسته شدن 17 ژوئیه تا 24 ژوئیه، به ترتیب از بهترین به بدترین رتبهبندی شدهاند.
کد دقیق SQL پشت هر عدد
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 DESCEnergy در صدر جدول با 3.33% قرار داشت. Consumer Discretionary در پایین جدول با -5.2%، 8.53 واحد درصد عقبتر از آن. این شکاف، پراکندگی بخشی هفته است و به خودی خود ارزش خواندن دارد: هفتهای که هر یازده بخش در فاصله یک واحد درصد از یکدیگر قرار میگیرند، بازاری بسیار متفاوت از بازاری است که دامنه اختلاف به دو رقم میرسد.
دلارها کجا رفتند
کد دقیق SQL پشت هر عدد
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 DESCMU در پنج جلسه معاملاتی، 158.1 میلیارد دلار گردش مالی در ساعات عادی ثبت کرد که از SPY با 133.9 میلیارد دلار و QQQ با 101.5 میلیارد دلار پیشی گرفت. AAPL با رتبه هشتم، معادل 34.5% از دلارهای رهبر بازار را معامله کرد. رکوردهای گردش مالی نشان میدهند که بازار هفته خود را صرف چه موضوعاتی کرده است و لزوماً با قیمت همراستا نیستند. نسخهٔ هر سهم از این معیار حجم نسبی نام دارد.
بزرگترین تغییردهندههای هفته
تقسیم سهم، رقم را تغییر میدهد بدون آنکه ارزش را جابهجا کند: یک تقسیم معکوس یک افزایش ساختگی چهاررقمی ایجاد میکند و یک تقسیم عادی یک سقوط ساختگی به همان اندازه. در این هفته 25 تقسیم معکوس و 11 تقسیم عادی انجام شد و هر دو جدول زیر هر سهمی را که تقسیم آن بین بسته شدن 17 ژوئیه و بسته شدن 24 ژوئیه اجرا شده باشد (دقیقاً همان بازهای که تغییر در آن اندازهگیری میشود) حذف میکنند. همچنین هر دو به پنج میلیون دلار گردش مالی در ساعات عادی نیاز دارند.
کد دقیق SQL پشت هر عدد
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راه یافتن به هر یک از این جدولها نیازمند یک حرکت واقعی بود. ملایمترین افزایشیافته نشاندادهشده 92.3% رشد کرد و ملایمترین کاهشیافته -47.8% ثبت کرد. در نقاط افراطی، STAK به میزان 383.7% با 251.6 میلیون دلار معامله جابهجا شد و LBGJ به میزان -98.8% با 47.7 میلیون دلار. این کاهش نزدیک به کل ارزش اعلامشده آن سهم است، بنابراین جدول رسید خود را نیز دارد: LBGJ در 5 از پنج جلسه، میلههای ساعات عادی ثبت کرد و هیچ تقسیمی بین دو بستهشدنی که جدول اندازهگیری میکند علیه آن اجرا نشد.
اسپرد اعلامی، جلسه به جلسه
قیمت، عنوان اصلی است. هزینهٔ انجام معامله، اسپرد اعلامی است که در اینجا روی SPY و به صورت جلسهای اندازهگیری شده، مستقیماً از نوار خام NBBO و نه از هیچ خلاصهای.
کد دقیق SQL پشت هر عدد
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)میانهٔ اسپرد اعلامی SPY در روز دوشنبه 0.27 واحد پایه از قیمت میانی و در روز جمعه 0.27 واحد پایه بود، بر روی 3.89 میلیون و 4.4 میلیون بهروزرسانی NBBO. دو ستون آخر افشا هستند نه یافته: 0 قیمتگذاری یکطرفه و 1084 قیمتگذاری متقاطع از میانهٔ دوشنبه شمارش شدند، نه اینکه بیصدا حذف شوند. قیمتگذاری متقاطع، یعنی پیشنهاد خرید بالاتر از پیشنهاد فروش، یک مصنوع معمولی از فید تلفیقی است که از مکانهای متعدد با وضوح نانوثانیه به هم دوخته شده است.
هفتهی آپشنها پس از انقضای ماهانه
انقضای ماه جولای در جمعهای رخ داد که پیش از شروع این هفته بود، بنابراین هر قراردادی که در این پنج جلسه معامله میشود، بازماندهی آن انقضا است. زمانبندی انقضا ریتمی را تعیین میکند که معاملهگران همان روز بر اساس آن کار میکنند.
کد دقیق SQL پشت هر عدد
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)حجم قراردادها در روز دوشنبه 64 میلیون و در روز جمعه 71.1 میلیون بود. سهم همان روز، یعنی قراردادهایی که در همان جلسهای که معامله میشوند منقضی میشوند، در دوشنبه 40.2% و در برابر جمعه 49%، جلسهی انقضای هفته، ثبت شد. تماسها 53.5% از حجم قراردادهای جمعه را به خود اختصاص دادند. و جاذبهی آن جمعه از همان جلسهی آغازین قابل مشاهده بود: 15.1% از حجم دوشنبه در قراردادهایی قرار داشت که برای انقضا در آن تاریخ تعیین شده بودند.
نرخها در طول هفته
کد دقیق SQL پشت هر عدد
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از انتشار 17 ژوئیه اندازهگیری شده، نرخ دهساله به میزان 16 واحد پایه تغییر کرد و در آخرین انتشار ثبتشده به 4.71% رسید. نرخ دوساله 4.37% و نرخ سیساله 5.17% بود. شکاف دو تا دهساله در پایان این سری در 34 واحد پایه قرار گرفت. فایل خزانهداری تقریباً یک جلسه از دادههای لحظهای عقبتر است، بنابراین این بخش شامل 5 انتشار است که هر یک در جدول تاریخگذاری شدهاند.
فروشندگان استقراضی: پروندههای روزانه
FINRA پرونده روزانه حجم فروش استقراضی را منتشر میکند. حجم فروش استقراضی یک جریان ناخالص روزانه است، نه یک موقعیت، و گاهی این پروندهها بهصورت ناقص بارگذاری میشوند؛ بنابراین پوشش پیش از استناد به هر نسبتی از آنها اندازهگیری میشود.
کد دقیق SQL پشت هر عدد
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 date5 پرونده روزانه برای هفته در دسترس است. اولین پرونده شامل 15098 نماد و 4.71 میلیارد سهم با برچسب فروش استقراضی است؛ آخرین پرونده شامل 15062 نماد، یا 99.7% از تعداد نمادهای کاملترین پرونده است. هر ادعایی درباره حجم فروش استقراضی یک نام خاص که از پروندهای با حجم بسیار کمتر از پروندههای مجاور استخراج شده باشد، تا زمانی که آن پرونده دوباره بارگذاری نشود، قابل تأیید نیست.
تقویم پشت هفته
کد دقیق SQL پشت هر عدد
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نخستین جلسه در پرونده شامل 3012 پرونده بود که 632 مورد از آنها گزارشهای فرم 4 داخلی و 166 مورد از آنها 8-K بودند. آخرین جلسه شامل 3814 پرونده بود که 644 مورد فرم 4 و 223 مورد 8-K داشتند. 5 از جلسات هفته دارای شاخص روزانه EDGAR در پرونده هستند؛ این شاخص طبق برنامه زمانی خود منتشر میشود که گاهی از نوار عقب میماند.
کد دقیق SQL پشت هر عدد
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بقیه مدارک هفته: 17106 پرونده SEC در 5 روز نمایهشده، 592 رکورد بدون سود نقدی، 1 مورد از آنها از ده نام خانوادگی که این پنل بررسی میکند، 25 تقسیم سهم معکوس و 11 مستقیم، 4 فهرستبندی جدید، و 1704 مقاله از 2 ناشر. این جفت آخر توجه یک خوراک خبری را اندازه میگیرد، نه رسانههای جهان را.
جلسات تأیید شده
کد دقیق SQL پشت هر عدد
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 11995 جلسه، از 2026-07-20 تا 2026-07-24، با 0 ردیف تعطیلات در هر نقطه از بازه. اسپیوای در این جلسات 1950 کندل دقیقهای جلسه عادی چاپ کرد. 2 جلسه بالاتر از بسته قبلی بسته شدند و 3 جلسه پایینتر بسته شدند. بسته شدن برنامهریزیشده بعدی Labor Day در 2026-09-07 است.
در پیش رو
در هفته آینده، از جداول خود ما بخوانید:
کد دقیق SQL پشت هر عدد
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جدول تعطیلات نشاندهنده 0 تعطیلی در هفته آینده است. 368 تاریخ بدون-سود-نقدی (ex-dividend) در این بازه قرار میگیرد که 0 آن از مجموعه خانوارهاست، در کنار 15 تقسیم سهم برنامهریزیشده. از حجم اختیار معامله (options) روز جمعه، 14.2% پیشتر در قراردادهایی بود که جمعه آینده منقضی میشوند. جدیدترین تاریخ تسویه بهرهی کوتاهمدت (short interest) در پرونده 2026-07-15 است؛ پروندهای که با تأخیری بهاندازهی کافی برای توضیح جداگانه خود منتشر میشود.
پرسشهای متداول
بازار سهام در هفته 20 ژوئیه 2026 چگونه عمل کرد؟
شاخص SPY در بازه 17 تا 24 ژوئیه، نسبت به بسته شدن قبلی، -0.59% درصد تغییر کرد. شاخص QQQ با -1.59% درصد، DIA با -0.38% درصد و IWM با -0.98% درصد همراه بودند. در میان نامهای نقدشونده، 2437 افزایش یافت و 3630 کاهش داشت.
کدام بخش در هفته 20 ژوئیه 2026 پیشتاز بود؟
Energy با 3.33% درصد. ضعیفترین بخش از میان یازده صندوق قابل معامله بخشی (ETF) اسپیدیآر، Consumer Discretionary با -5.2% درصد بود که 8.53 واحد درصد عقبتر قرار داشت.
در هفته 20 ژوئیه 2026 چند جلسه معاملاتی برگزار شد؟
5 جلسه، از 2026-07-20 تا 2026-07-24، با 0 ردیف تعطیلات در این بازه. تعطیلی برنامهریزیشده بعدی Labor Day است.
کدام نماد در هفته 20 ژوئیه 2026 بیشترین حجم معاملات دلاری را داشت؟
MU با 158.1 میلیارد دلار گردش مالی در ساعات عادی معاملات، پیش از SPY با 133.9 میلیارد دلار.
یادداشتهای دادهها
تمام برچسبهای زمانی ذخیرهشده به UTC هستند. ساعات عادی هر جلسه 13:30-20:00 UTC دقیقه است و مرزهای هفته از بسته شدن عادی 17 ژوئیه تا 24 ژوئیه تعیین میشوند. هر پنل مقایسه پایانیبهپایانی در اینجا آخرین میله یکدقیقهای ساعات عادی را در هر طرف مقایسه میخواند، بنابراین یک چاپ خارج از ساعات عادی هرگز نمیتواند بسته شدن هفتگی را تعیین کند. رتبهبندی سال گذشته از بازده هفتگی بازتابسته استفاده میکند، بنابراین با جدول امتیازات پایانیبهپایانی مطابقت نخواهد داشت؛ هر دو تعریف در جایی که ظاهر میشوند برچسبگذاری شدهاند. پهنای هفتگی و تابلوهای نوساندهنده یک فیلتر گردش مالی پنج میلیون دلاری ساعات عادی را اعمال میکنند و پهنای هفتگی تعداد نامهایی را که این فیلتر کنار گذاشته منتشر میکند. تابلوهای نوساندهنده هر نامی را که تقسیم سهام آن پس از بسته شدن 17 ژوئیه و تا 24 ژوئیه اجرا شده باشد، حذف میکنند، یعنی دقیقاً بازهای که تغییر در آن اندازهگیری میشود، که هم تقسیم سهام ثبتشده در آخر هفته میانی و هم تقسیم ثبتشده در یک جلسه معاملاتی را شامل میشود. این تابلوها صندوقهای اهرمی و معکوس را حذف نمیکنند، که میتوانند در یک هفته جهتدار بر یک تابلوی نوساندهنده غالب شوند. پایین تابلوی کاهشیافته میتواند نزدیک به از دست رفتن کامل ارزش قیمتگذاریشده برای هفته باشد و آن تابلو منتشر میکند که هر نام در چند جلسه از پنج جلسه چاپ شده است. پنل اسپرد SPY نقلقولهای یکطرفه و متقاطع را بهجای حذف بیصدا، شمارش میکند و میانه از روی نقلقولهای معتبر باقیمانده گرفته میشود. فایل خزانهداری حدود یک جلسه از نوار عقبتر است و شاخص روزانه EDGAR طبق برنامه خودش منتشر میشود، بنابراین پنلهای نرخها و پروندهها گزارش میدهند که در واقع چند روز را پوشش میدهند. هیچ شاخص تلویحی نوسانی در اینجا ظاهر نمیشود: آن سریها برای این انبار داده مجوز ندارند، بنابراین نوسان از طریق دامنهها، سهم آپشنهای همان روز و رفتار نقلقول از نوار خوانده میشود.
روششناسی
- منبع دادههای بازار: نوار تلفیقی.
delayed_stocks_minute_aggsبرای قیمتها و حجمها،cache_stocks_quotesبرای پنل NBBO،options_tradesبرای هفته آپشنها. - قیمت بسته شدن: آخرین میله دقیقهای جلسه معاملاتی عادی، نه چاپ فرضی ساعت 16:00 و نه چاپ خارج از ساعات عادی.
- جلسات معاملاتی: با استفاده از جدول تعطیلات و میلههای مشاهدهشده تأیید شده، نه با فرض از روی تقویم.
- مدیریت منطقه زمانی: بندهای WHERE از حروف UTC خام استفاده میکنند و
toTimeZoneتنها در فهرستهای SELECT برای برچسبهای ET ظاهر میشود. - اعداد اعشاری: ستونهای قیمت، اندازه و حجم قبل از هر تقسیم یا ضرب به Float64 تبدیل میشوند.
- تجمیعهای قطعی: چندکهای دقیق در سراسر متن، و هر ادعای ترتیب یا علامت در نثر به عنوان یک کران اطمینان رمزگذاری شده است.
- تاریخ پایه انبار داده: 26 ژوئیه 2026.
پیوندهای متقابل: نسخه قبلی این مجموعه هفتگی، تعریف اسپرد خرید-فروش، زمان انقضای آپشنها، تفاوت بهره کوتاهمدت و حجم کوتاهمدت، و اسپرد دو تا ده ساله.
هر یک از پرسوجوهای بالا بدون تغییر در ترمینال استراسمور اجرا میشود، اگر بخواهید یک پنجره را به هفته دیگری هدایت کنید.