هفته آخر ژوئن شامل چهار جلسه معاملاتی بود: بازار از دوشنبه 29 ژوئن تا پنجشنبه 2 جولای معامله کرد و سپس به دلیل تعطیلات روز استقلال در جمعه 3 جولای بسته شد — از آنجایی که 4 جولای مصادف با شنبه بود، تعطیلات در جمعه قبل از آن رعایت شد. جزئیات مربوط به این تعطیلات و سایر موارد در جداول موجود است. برجستهترین واقعیت آماری این هفته در جدول حجم معاملات دیده میشود: یک تولیدکننده تراشه حافظه، مبلغ 190.2 میلیارد دلار را در چهار روز معامله کرد — یعنی یک و نیم برابر حجم معاملات SPY. تمام اعداد در این صفحه نتیجه یک پرسوجوی ذخیرهشده هستند؛ برای مشاهده دستور دقیق SQL، هر پنل را باز کنید.
وضعیت بازار در هفته جاری
آیا بازار توانست ریزش هفته گذشته را جبران کند یا روند نزولی ادامه یافت؟ نتایج نشان میدهد که بازار بازگشت داشت: این بخش، تغییرات هفتگی هر ETF شاخص را در مقایسه با هفته قبل محاسبه میکند.
کد دقیق SQL پشت هر عدد
SELECT ticker,
round(argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-26') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS prior_friday_close,
round(argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-06-29') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS week_close,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-06-29') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)
/ argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-26') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100, 1) AS week_change_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-26') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)
/ argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-18') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100, 1) AS prior_week_change_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= toDateTime('2026-06-15 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
GROUP BY ticker
ORDER BY tickerشاخص SPY هفته را در سطح $744.8 به پایان رساند که نسبت به جمعه گذشته 2.2% رشد داشت؛ این در حالی است که هفته قبل از آن، شاهد -2.3% افت بود. شاخص QQQ پس از یک هفته -4.6%، با 1% رشد مواجه شد، DIA میزان 2% افزایش را ثبت کرد و IWM در سطح 297.53 بسته شد که نشاندهنده 0% در این هفته است؛ در حالی که شاخصهای با ارزش بازار بالا رشد داشتند، این شاخص بدون تغییر باقی ماند.
هفته در برابر بازه یکسالهی گذشته
کد دقیق SQL پشت هر عدد
SELECT round(anyIf(ret, wk = toDate('2026-06-29')), 2) AS week_2026_pct,
arrayCount(x -> x > anyIf(ret, wk = toDate('2026-06-29')), groupArrayIf(ret, wk != toDate('2026-06-29'))) + 1 AS rank_best,
count() AS weeks_compared,
toString(min(wk)) AS first_week,
anyIf(sessions, wk = toDate('2026-06-29')) 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,
(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-06-29 00:00:00')
AND window_start < toDateTime('2026-07-03 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 >= 3
)تغییرات قیمت از زمان بازگشایی تا بستهشدن در طول هفته — از اولین کندل ساعات عادی در روز دوشنبه تا آخرین کندل در روز پنجشنبه — با شاخص بستهشدن روز جمعه که در بالا آمده است، تفاوت اندکی دارد. طبق این دادهها، عملکرد هفتگی SPY در میان 53 هفتهی گذشته، در رتبه 14 قرار دارد (رتبه 1 بهترین است): عملکردی متوسط در یک سال گذشته که هم شاهد ریزشها و هم شاهد بازیابیها بوده است. هفتههایی که کمتر از سه جلسه معاملاتی دارند، طبق ضوابط از محاسبات حذف میشوند؛ این هفته دارای 4 جلسه بود. با تغییر بازه زمانی، بافت تاریخی نیز تغییر میکند؛ خلاصههای ماه، سه ماهه و شش ماهه، دورههای خود را در مقایسه با تمام سالهای موجود در دادههای دقیق معاملاتی رتبهبندی میکنند.
چهار جلسه معاملاتی و سپس تعطیلات
هفته معاملاتی پنجروزه یک فرض است و نه یک واقعیت؛ این هفته تنها چهار جلسه داشت. پنل رسید (receipt panel) وضعیت بسته شدن بازار را مستقیماً از نوار قیمت بررسی میکند: در تاریخ 3 جولای، هیچ کندل SPY در برابر 1560 کندل جلسات عادی در طول چهار روز معاملاتی ثبت نشد.
کد دقیق SQL پشت هر عدد
SELECT
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-29 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')) AS sessions_in_week,
(SELECT countIf((toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-29 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')) AS regular_bars_week,
(SELECT count() FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-07-03 00:00:00') AND window_start < toDateTime('2026-07-04 00:00:00')) AS jul3_spy_barsکد دقیق SQL پشت هر عدد
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
round(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS spy_close,
round((argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / any(prev) - 1) * 100, 1) AS change_pct,
round(toFloat64(sum(volume)) / 1e6, 1) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
INNER JOIN (
SELECT d, lagInFrame(c) OVER (ORDER BY d ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d, argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-26 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
GROUP BY d
)
) AS p ON toDate(toTimeZone(window_start, 'America/New_York')) = p.d
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-29 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
GROUP BY et_date
ORDER BY et_dateهر چهار جلسه طبق برنامه عادی کامل برگزار شدند؛ کندلهای عادی 1560 دقیقاً معادل چهار جلسه 390 دقیقهای هستند. هفته در تاریخ 2026-07-02، درست پیش از تعطیلات، تقریباً بدون تغییر (-0.1%) بسته شد؛ تمام سودهای این هفته در سه جلسه نخست حاصل شد.
وسعت بازار: میزان رشد بازار
صعود یک شاخص میتواند سقوط بازار را پنهان کند. این بخش، تمام نمادهایی را که قیمت بستهشدن آنها در هر دو سوی هفته تغییر کرده است، شمارش میکند؛ همچنین لیست نمادهای حذفشده به جای پنهانسازی، مشخص شده است.
کد دقیق SQL پشت هر عدد
SELECT
countIf(chg > 0 AND NOT dropped) AS advancers,
countIf(chg < 0 AND NOT dropped) AS decliners,
countIf(chg = 0 AND NOT dropped) AS unchanged,
countIf(dropped) AS dropped_by_liquidity_filter,
count() AS tickers_with_both_closes
FROM (
SELECT ticker,
argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-06-29') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)
- argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-26') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) AS chg,
sumIf(toFloat64(close) * toFloat64(volume), toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-06-29')) < 1e6 AS dropped
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-06-26 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
GROUP BY ticker
HAVING countIf(toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-26') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) > 0
AND countIf(toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-06-29') AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) > 0
)5047 نماد در هفته جاری رشد داشتند، در حالی که 3525 نماد کاهش قیمت داشتند (39 بدون تغییر ماندند)؛ این صعود گسترده بود و تنها محدود به سطح شاخصها نبود. فیلتر نقدینگی، 3163 نماد را که در کل هفته معاملاتی زیر 1 میلیون دلار داشتند، کنار گذاشت؛ این نمادها در اینجا شمارش شدهاند و پنهان نشدهاند.
پیشتازان بازار: سهامی فراتر از ETFها
کد دقیق SQL پشت هر عدد
SELECT ticker,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 1) AS dollar_bn,
round(100 * sum(toFloat64(close) * toFloat64(volume)) / max(sum(toFloat64(close) * toFloat64(volume))) OVER (), 1) AS pct_of_leader
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-06-29 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY dollar_bn DESC
LIMIT 8MU با حجم معاملات دلاری 190.2 میلیارد دلاری در ساعات معاملاتی عادی، کل بازار را رهبری کرد؛ SPY، بزرگترین ETF، تنها 66.4% از این حجم را به خود اختصاص داد. اینکه حجم معاملات یک شرکت واحد در یک هفته کامل از صندوق شاخص پیشفرض بازار فراتر رود، برجستهترین واقعیت آماری این هفته است؛ این صفحه حجم جریان سرمایه را گزارش میکند، نه علت آن را. منبع: 29 ژوئن تا 2 جولای در ساعات معاملاتی عادی؛ یک مورد از نمادهای تکراری در لیست ژوئن، تا زمان تأیید هویت شرکت، از محاسبات حذف شده است — جزئیات آن در تحلیل اختصاصی موجود است.
تعطیلات باعث جابهجایی سررسیدهای هفتگی شد
وقتی جمعه تعطیل است، سررسید هفتگی چه میشود؟ پاسخ در دادههای بازار گزینهها (options) نهفته است: این پنل تاریخ سررسید را از تمام قراردادهای معامله شده در طول هفته استخراج و آنها را رتبهبندی میکند.
کد دقیق SQL پشت هر عدد
SELECT concat('20', substring(expiry_raw, 1, 2), '-', substring(expiry_raw, 3, 2), '-', substring(expiry_raw, 5, 2)) AS expiry,
round(sum(size) / 1e6, 1) AS contracts_m,
round(100 * sum(size) / max(sum(size)) OVER (), 1) AS pct_of_biggest
FROM (
SELECT substring(ticker, length(ticker) - 14, 6) AS expiry_raw, size
FROM global_markets.options_trades
WHERE sip_timestamp >= toDateTime64('2026-06-29 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-03 00:00:00', 9)
)
GROUP BY expiry
ORDER BY contracts_m DESC
LIMIT 6پراکنونترین سررسید هفته مربوط به 2026-07-02 — یعنی یک پنجشنبه — با 74.1 میلیون قرارداد بود که 42.2% از تاریخ بعدی جلوتر است. با توجه به تعطیل بودن 3 جولای، سررسید «جمعه» این هفته به پنجشنبه موکول شد؛ سررسیدهای روزانه از دوشنبه تا چهارشنبه و سررسید ماهانه 17 جولای این جدول را تکمیل میکنند. تاریخهای سررسید از نماد OCC هر قرارداد بازخوانی میشوند (ستون سررسید خودِ این پنل قابل اعتماد نیست)؛ جزئیات مکانیسم هفتههای سررسید مشابه این هفته در توضیحات تعطیلات آمده است.
نرخها: بازگشت صعودی اوراق 10 ساله
کد دقیق SQL پشت هر عدد
SELECT toString(date) AS d,
round(yield_10_year, 2) AS y10,
round(yield_2_year, 2) AS y2,
round((yield_10_year - yield_2_year) * 100, 0) AS spread_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-06-26') AND date <= toDate('2026-07-02')
ORDER BY dateبازدهی اوراق 10 ساله از 4.38% در جمعه گذشته به 4.48% در 2026-07-01 رسید، در حالی که spread 2s10s در نزدیکی 31 واحد پایه حفظ شد. یک نکته: دادههای بازدهی 2 ساله در ماه جولای، هنگام تولید این صفحه، هنوز وارد سیستم نشده بودند (از 4 تا 1 جولای)؛ این پنل در بازسازی بعدی، دادهها را نمایش خواهد داد.
تقویم: پایان یک فصل و نبودِ یک روز ثبت اسناد
کد دقیق SQL پشت هر عدد
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-06-29') AND ex_dividend_date <= toDate('2026-07-02')) AS ex_div_events,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-06-29') AND execution_date <= toDate('2026-07-02')) AS splits,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-06-29') AND listing_date <= toDate('2026-07-02')) AS ipos,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-29')) AS filings_jun29,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS filings_jun30,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-07-01')) AS filings_jul1,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-07-02')) AS filings_jul2,
(SELECT count() FROM global_markets.stocks_news WHERE published_utc >= toDateTime('2026-06-29 00:00:00') AND published_utc < toDateTime('2026-07-03 00:00:00')) AS news_articlesهفته جاری با رویدادهای بدون سود نقدی 2217، تجزیه سهام 48 و لیست شدن واحدهای جدید 7 در آستانه پایان فصل همراه بود. ستونهای ثبت اسناد، یک نقص در کیفیت دادههای هفته را نشان میدهند: شاخص ثبت اسناد SEC نشاندهنده 4439 ثبت در 29 ژوئن و 4282 ثبت در 1 جولای است، اما در 30 ژوئن — آخرین روز فصل — تنها 31 ثبت وجود دارد. پایان فصل در سال گذشته، هزاران ثبت اسناد را شامل میشد. این شکاف مربوط به فید دادههاست، نه آنچه شرکتها ثبت کردهاند؛ هرگونه شمارش ثبت اسناد ماه ژوئن یا Q2 که شامل 30 ژوئن باشد، تا زمانی که شاخص دادهها را بازسازی نکند، کمتر از مقدار واقعی است. این بخشی از یک الگوی پایان ماه در سال 2026 است — یادداشت تشخیصی مدارک مربوطه را ارائه میدهد — که در اینجا و در خلاصههای ژوئن و Q2 منتشر شده است.
معاملات فروش استقراضی: یک فایل ناقص و سه فایل کامل
کد دقیق SQL پشت هر عدد
SELECT toString(date) AS d,
uniqExact(ticker) AS tickers_on_file,
max(ticker) AS alphabetical_end,
round(100 * sum(toFloat64(short_volume)) / sum(toFloat64(total_volume)), 1) AS marked_short_pct
FROM (
SELECT date, ticker, any(short_volume) AS short_volume, any(total_volume) AS total_volume
FROM global_markets.stocks_short_volume
WHERE date >= toDate('2026-06-29') AND date <= toDate('2026-07-02')
GROUP BY date, ticker
)
GROUP BY date
ORDER BY dateحجم معاملات خارج از بورس در اواسط هفته در سطح حدود 48.8% ثبت شد که نشاندهنده ساختار زیرساختی بازارسازها است و نه سیگنالی برای فشار خرید (squeeze). در ستونهای پوشش معاملات (coverage) ذکر شده است که فایل مربوط به 29 ژوئن در سطح کل بازار ناقص است (5489 نماد که با "SSUS" پایان مییابد در مقابل حدود 15,000 نماد که در روزهای کامل با "ZYME" پایان مییابند)؛ بنابراین 45.8% مربوط به 29 ژوئن از روی یک فایل ناقص محاسبه شده است. تحلیل عمیق 29 ژوئن شامل بررسی کامل در سطح کل بازار است.
یادداشتهای دادهها
یادداشتهای کامل دادهها
- 3 جولای یک تعطیلی کامل بود، نه بستن زودهنگام بازار. 4 جولای 2026 مصادف با شنبه بود؛ NYSE و Nasdaq تعطیلات را در جمعه 3 جولای رعایت کردند — در آن روز کندلهای SPY چاپ شدند — 0. یک نکته در مجموعه داده هنگام بازسازی این صفحه کشف شد: جدول تقویم بورس یک فید متحرک از تعطیلات آتی است و ردیف 3 جولای پس از گذشت تعطیلات از آن خارج شد (در نسخه اول این صفحه موجود بود)، بنابراین ثبت تعطیلی، روز بدون کندل در نوار قیمت است؛ جزئیات این مکانیسم در توضیحات تعطیلات آمده است.
- وضعیت Short interest در تسویه حساب 15 ژوئن پایان مییابد. زمان تولید این صفحه، گزارش تسویه حساب دوماهه پایان ژوئن منتشر نشده بود؛ هیچ دادهای در اینجا از آن استفاده نمیکند و مرور ژوئن شامل جزئیات کامل آن است. این پست پس از انتشار گزارش مذکور، بازسازی خواهد شد.
- اختلاف شاخص گزارش 30 ژوئن در بالا به صورت درونمتنی اعلام شده است؛ دادههای خزانهداری 2 جولای در انتظار ورود به سیستم هستند.
- فایل حجم معاملات Short-volume مربوط به FINRA در تاریخ 29 ژوئن در سطح کل بازار ناقص است؛ نسبت آن همراه با میزان پوشش آن نمایش داده شده است.
- استثنای پیشرو از نظر حجم معاملات: یکی از لیستهای ژوئن با نماد تکراری معامله میشود و تا زمان تأیید هویت شرکت از جدول پیشروها حذف شده است (گواهیهای مربوطه در پست اختصاصی خود آن موجود است).
روششناسی
- بازه زمانی از 29 ژوئن تا 2 جولای 2026 است که شامل چهار جلسه معاملاتی هفته میباشد؛ 3 جولای تعطیل رسمی بازار بود. محدوده جلسات بر اساس کندلهای مشاهدهشده تایید میشود و هرگز بر اساس فرض تعیین نمیشود (مجموعه داده تقویم بورس فقط تعطیلات آتی را شامل میشود — به یادداشت دادهها مراجعه کنید).
- برچسبهای زمانی در قالب UTC ذخیره شده و با محدودههای خام UTC فیلتر میشوند؛ ساعات معاملاتی عادی در این هفته (EDT) بین 13:30 تا 20:00 UTC است. قیمت بستهشدن، آخرین کندل دقیقهای در ساعات عادی است؛ حجم دلاری نیز حاصل حاصلضرب قیمت بستهشدن دقیقهای در حجم دقیقهای و مجموع آنها در طول ساعات عادی است.
- ارقام هفتهبههفته در مقایسه با قیمت بستهشدن جمعه قبل محاسبه میشوند که در همان پرسوجوی مربوط به این هفته، مجدداً محاسبه میگردند و هرگز از مقادیر ذخیرهشده خوانده نمیشوند. رتبه سالانه نیز هر هفته به صورت یکسان بازمحاسوبه میشود (ساعات معاملاتی عادی به وقت Eastern، با رعایت حداقل جلسات و محدودهی بالایی ثابت در پایان این هفته).
- فرآیند تولید دادهها از طریق مسیر محدود و فقطخواندنی انجام میشود؛ صفحه عمومی هرگز از دادههای زنده پرسوجو نمیکند. وضعیت انبار دادهها مربوط به 5 جولای 2026 است.
این اولین نسخه از گزارش هفتگی ثابت است — نسخه هفته آینده بازه 6 تا 10 جولای را پوشش داده و به اینجا لینک خواهد شد. خلاصهی روزانه 29 ژوئن جزئیات روز دوشنبه را ارائه میدهد.