Strasmore Research
تحلیل بازار Matt Connorتوسط Matt Connor · به‌روزرسانی شده در 2026-09-28

گزارش بازار 2 ژوئیه 2026: چرخش دارایی‌ها پیش از تعطیلات

در آخرین جلسه معاملاتی پیش از تعطیلات، شاخص Nasdaq با افت مواجه شد اما گستره بازار مثبت ماند. بخش فناوری و تولیدکنندگان حافظه بیشترین فشار فروش را در میان یازده صندوق بخشی تجربه کردند.

پنجشنبه، 2 ژوئیه 2026، آخرین جلسه معاملاتی پیش از تعطیلات روز استقلال، روزی با چرخش در ترکیب دارایی‌ها بود که در ظاهر با فشار فروش همراه شد. شاخص QQQ در سطح -1.71% معامله شد، در حالی که DIA رشدی 1.04% را ثبت کرد. گستره بازار مثبت بود: 3398 نماد نقدشونده رشد کردند و در مقابل 2758 نماد کاهش یافتند؛ 54.6% از کل بازار در محدوده سبز قرار داشت، اگرچه شاخص رشد (Growth Index) با افت مواجه شد. هشت صندوق از یازده صندوق بخشی، معاملات را با رشد به پایان رساندند؛ فشار فروش در بخش فناوری و حوزه حافظه‌ها متمرکز بود که روز پیش از آن شکسته شده بود.

تابلو نتایج

پرس‌وجوSPY / QQQ / DIA / IWM: مقایسه ۲ ژوئیه با قیمت پایانی ۱ ژوئیه، ساعات عادی معاملات
نمادبسته قبلیآغاز روزپایان روزتغییر درصدسقف روزانهکف روزانهحجم معاملات (میلیون)
DIA522.41525.49527.831.04528.26523.733
IWM299.31300.54297.53-0.59302.23294.9818.5
QQQ725.16725.58712.74-1.71730.83707.5643.7
SPY745.69747.4744.8-0.12751.31740.0343.9
کد دقیق 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-07-01 13:30:00' AND window_start < '2026-07-01 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-02 13:30:00' AND window_start < '2026-07-02 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
خودتان اجرا کنید

عملکرد DIA با 1.04% در مقابل QQQ با -1.71%، خلاصه وضعیت بازار در یک نگاه است؛ به‌طوری که بازدهی روزانه شاخص صنایع و سهام رشد‌محور نزدیک به سه واحد با یکدیگر فاصله داشتند. SPY با ثبت -0.12% در میانه این دو قرار گرفت و IWM با -0.59% بسته شد.

آیا روز غیرعادی بود؟

دو لنز در یک قاب: حرکت قیمت SPY از زمان بازگشایی تا بسته شدن و حرکت قیمت QQQ از زمان بسته شدن تا بسته شدن روز بعد، که هر کدام بر اساس اندازه مطلق نسبت به ماه گذشته رتبه‌بندی شده‌اند (رتبه 1 = بزرگ‌ترین).

پرس‌وجورتبه‌بندی SPY و QQQ نسبت به جلسات معاملاتی ماه گذشته (رتبه ۱ = بزرگترین تغییر مطلق)
درصد باز تا بسته SPYرتبه حرکت مطلق SPYجلسات مقایسه‌شده SPYدرصد بسته تا بسته QQQرتبه حرکت مطلق QQQجلسات مقایسه‌شده QQQنخستین جلسه
-0.351522-1.719212026-06-02
کد دقیق SQL پشت هر عدد
WITH per_day AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           (argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS oc_pct,
           argMax(toFloat64(close), window_start) AS rth_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ')
      AND window_start >= toDateTime('2026-06-02 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
    GROUP BY ticker, d
),
with_prev AS (
    SELECT ticker, d, oc_pct,
           lagInFrame(rth_close) OVER (PARTITION BY ticker ORDER BY d) AS prev_close,
           (rth_close / lagInFrame(rth_close) OVER (PARTITION BY ticker ORDER BY d) - 1) * 100 AS cc_pct
    FROM per_day
)
SELECT
    round(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-02')), 2) AS spy_open_to_close_pct,
    arrayCount(x -> x > abs(anyIf(oc_pct, ticker = 'SPY' AND d = toDate('2026-07-02'))),
               groupArrayIf(abs(oc_pct), ticker = 'SPY' AND d != toDate('2026-07-02'))) + 1 AS spy_abs_move_rank,
    countIf(ticker = 'SPY') AS spy_sessions_compared,
    round(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-02')), 2) AS qqq_close_over_close_pct,
    arrayCount(x -> x > abs(anyIf(cc_pct, ticker = 'QQQ' AND d = toDate('2026-07-02'))),
               groupArrayIf(abs(cc_pct), ticker = 'QQQ' AND d != toDate('2026-07-02') AND isFinite(cc_pct) AND prev_close > 0)) + 1 AS qqq_abs_move_rank,
    countIf(ticker = 'QQQ' AND isFinite(cc_pct) AND prev_close > 0) AS qqq_sessions_compared,
    toString(minIf(d, ticker = 'SPY')) AS first_session
FROM with_prev
خودتان اجرا کنید

در سطح شاخص، خیر. حرکت -0.35% قیمت SPY از بازگشایی تا بسته شدن، رتبه 15 را از میان 22 جلسه معاملاتی اخیر کسب کرده که در نیمه پایینی قرار می‌گیرد. QQQ پرنوسان‌تر بود اما همچنان در محدوده غیرعادی قرار نداشت: حرکت -1.71% آن از بسته شدن تا بسته شدن، رتبه 9 را از میان 21 جلسه معاملاتی با قیمت بسته شدن مشخص قبلی، از تاریخ 2026-06-02 به دست آورد که یک روز منفی در میانه رتبه‌بندی برای شاخص رشد محسوب می‌شود. نوار معاملات تک‌سهم‌ها جایی بود که روز 2 ژوئیه در آن پرنوسان ظاهر شد.

عرضه بازار: نوار سبز، شاخص رشد قرمز

پرس‌وجوتعداد نمادهای صعودی در برابر نزولی برای نمادهایی با حداقل ۱ میلیون دلار حجم معاملات در ۲ ژوئیه
صعودی‌هانزولی‌هابدون تغییرنمادهای نقدشوندهنمادهای معامله‌شده در هر دو جلسهحذف‌شده با فیلتر نقدینگیدرصد صعودی‌هاصعودی‌ها (فرمت)نزولی‌ها (فرمت)حذف‌شده با فیلتر نقدینگی (فرمت)نمادهای معامله‌شده در هر دو جلسه (فرمت)
3398275863621911536531754.63,3982,7585,31711,536
کد دقیق SQL پشت هر عدد
WITH per_ticker AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') AS day_dollar_volume
    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')
       OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00')
    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,
    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,
    round(100.0 * countIf(day_close > prior_close AND day_dollar_volume >= 1000000)
        / countIf(day_dollar_volume >= 1000000), 1) AS advancer_pct,
    reverse(arrayStringConcat(extractAll(reverse(toString(countIf(day_close > prior_close AND day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS advancers_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(countIf(day_close < prior_close AND day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS decliners_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(count() - countIf(day_dollar_volume >= 1000000))), '[0-9]{1,3}'), ',')) AS dropped_by_liquidity_filter_fmt,
    reverse(arrayStringConcat(extractAll(reverse(toString(count())), '[0-9]{1,3}'), ',')) AS tickers_traded_both_sessions_fmt
FROM per_ticker
WHERE prior_close > 0 AND day_close > 0
خودتان اجرا کنید

3,398 نماد صعودی، 2,758 نماد نزولی، 63 نماد بدون تغییر، 54.6% از معاملات نقد در حالی رشد کردند که QQQ افت کرد. شاخص‌های وزنی بر اساس ارزش بازار و شاخص‌های عرضه‌ بازار با تعداد برابر، واکنش‌های متفاوتی نشان دادند؛ روزهایی از این دست دلیل اصلی ضرورت استفاده از هر دو پنل تحلیلی است. این فیلتر 5,317 از 11,536 نمادهای دارای دو جلسه معاملاتی با حجم معاملات کمتر از 1 میلیون دلار را حذف می‌کند.

بخش به بخش: نوار سبز کجا قرار گرفت

عرض بازار، تعداد نام‌ها را می‌شمارد؛ اما نوع آن‌ها را مشخص نمی‌کند. یازده صندوق بخشی SPDR، جلسه معاملاتی را بر اساس صنعت تفکیک می‌کنند و شکاف میان بهترین و بدترین عملکرد، پراکندگی روز را در یک عدد نشان می‌دهد.

پرس‌وجویازده ETF بخش SPDR: مقایسه قیمت پایانی ۲ ژوئیه با ۱ ژوئیه، ساعات عادی معاملات
نمادبسته قبلیپایان روزتغییر درصدامتیاز بالاتر از ضعیف‌ترین بخشارزش دلاری روزانه (میلیارد)
XLB5151.991.944.650.57
XLC109.74109.6-0.132.580.83
XLE52.8253.230.783.481.46
XLF54.7955.611.54.22.36
XLI183.41183.910.272.981.15
XLK185.54180.52-2.7102.43
XLP83.338524.711.33
XLRE44.1844.691.153.860.22
XLU44.7645.762.234.941.05
XLV159.57163.772.635.342.01
XLY118.07117.11-0.811.891.2
کد دقیق SQL پشت هر عدد
WITH per_etf AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 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-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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 pts_above_worst_sector,
    day_dollar_bn
FROM per_etf
ORDER BY ticker
خودتان اجرا کنید

بخش مراقبت‌های بهداشتی (XLV) با 2.63% در صدر جدول قرار گرفت و پس از آن خدمات شهری 2.23%، کالاهای اساسی 2% و مواد اولیه 1.94% جای گرفتند. بخش فناوری (XLK) با -2.71% در رتبه آخر ایستاد و تنها بخشی بود که بیش از یک واحد افت داشت؛ بخش‌های کالاهای مصرفی اختیاری (-0.81%) و خدمات ارتباطی (-0.13%) دیگر صندوق‌های قرمز بودند و هشت بخش باقی‌مانده سبز ماندند. پراکندگی بهترین تا بدترین عملکرد: 5.34 واحد درصد. شکاف میان رشد DIA و افت QQQ در سراسر بازار جریان داشت و تنها محدود به چهار شرکت بزرگ نبود؛ به همین دلیل است که وجود یک خط پیشروی-کاهش سبز در زیر شاخص نزولی Nasdaq تناقضی در خود ندارد.

رویداد برجسته روز: دومین روز سقوط سهام حوزه حافظه

مجموعه سهامی که روز چهارشنبه دچار ریزش شد، روز پنجشنبه با شدت و همبستگی بیشتری سقوط کرد؛ این سقوط نه به دلیل یک عامل واحد، بلکه ناشی از ابعاد و حرکت هماهنگ بازار بود.

پرس‌وجونمادهای حوزه حافظه و ذخیره‌سازی: تغییر نسبت به قیمت پایانی چهارشنبه، زمان‌بندی محدوده نوسان و حجم دلاری
نمادبسته قبلیپایان روزتغییر درصدسقف روزانهسقف روزانه (ET)کف روزانهکف روزانه (ET)درصد دامنه نوسانارزش دلاری روزانه (میلیارد)
MU1033.29975.77-5.571064.6410:03950.2815:2612.0351.4
SNDK2035.071743.59-14.322052.5409:35169315:2621.2426.57
STX915.25820.25-10.38923.0609:53795.6614:2316.014.74
WDC598.37538.99-9.92609.4609:35525.8413:5915.94.31
کد دقیق SQL پشت هر عدد
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-02 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-02 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-02 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-02 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('MU', 'SNDK', 'STX', 'WDC')
      AND ((window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker
خودتان اجرا کنید

معاملات SanDisk در قیمت -14.32%، Seagate در -10.38%، Western Digital در -9.92% و MU در -5.57% ثبت شد. حجم معاملات MU به 51.4 میلیارد دلار رسید که تقریباً یک‌ونیم برابر حجم معاملات SPY بود. پایین‌ترین قیمت‌های MU و SanDisk در ساعات پایانی (15:26 و 15:26 به وقت شرقی) و پایین‌ترین قیمت‌های Seagate و Western Digital در ساعات زودتر (14:23 و 13:59) ثبت شدند. زمینه بحث: چهارشنبه و تحلیل عمیق MU.

نیمه دیگر چرخش سرمایه در سهام‌های بزرگ (Megacaps):

پرس‌وجوچرخش در مگاکپ‌ها: تغییر نسبت به قیمت پایانی چهارشنبه، زمان‌بندی محدوده نوسان و حجم دلاری
نمادبسته قبلیپایان روزتغییر درصدسقف روزانهسقف روزانه (ET)کف روزانهکف روزانه (ET)درصد دامنه نوسانارزش دلاری روزانه (میلیارد)
AAPL294.25308.224.75309.4215:57293.6809:305.3618.36
MSFT384.22389.621.41392.215:11383.709:352.2212.58
NVDA197.58194.51-1.55200.0610:03192.3513:404.0121.18
TSLA425.34392.81-7.65432.3509:31389.315:2311.0625.41
کد دقیق SQL پشت هر عدد
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-02 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-02 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-02 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-02 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-02 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-02 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-02 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'TSLA')
      AND ((window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00')
        OR (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 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, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker
خودتان اجرا کنید

AAPL با یک روند یک‌سویه 4.75% رشد کرد؛ کف قیمت آن در ساعت 09:30 به وقت شرقی و سقف آن در ساعت 15:57، یعنی سه دقیقه پیش از پایان معاملات ثبت شد. در مقابل، TSLA روند معکوسی را در ساعت -7.65% طی کرد. MSFT به میزان 1.41% افزایش یافت و NVDA با -1.55% تغییر بسته شد. همان شاخص، روزهایی کاملاً متفاوت.

Where the money traded

پرس‌وجوپیشتازان حجم معاملات به دو روش: ۶ نماد برتر بر اساس ارزش دلاری، ۴ نماد برتر بر اساس تعداد سهام (یک نماد تکراری تا زمان تایید هویت حذف شده است)
نمادجدول پیشتازانحجم دلاری (میلیارد)ارزش دلاری (میلیون)تعداد سهام (میلیون)درصد از رهبر جدول
MUby dollars traded51.4None51.9100
SPYby dollars traded32.7None43.963.6
QQQby dollars traded31.3None43.760.9
SNDKby dollars traded26.57None14.651.7
TSLAby dollars traded25.41None63.649.4
NVDAby dollars traded21.18None108.641.2
SOXSby shares traded3.24None748.2100
TZAby shares traded1.27None325.743.5
LIMNby shares traded0.0442245.732.8
BITOby shares traded1.71None204.927.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-02 13:30:00' AND window_start < '2026-07-02 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-02 13:30:00' AND window_start < '2026-07-02 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
خودتان اجرا کنید

MU's $51.4 billion led the tape for a fourth straight session (Monday, Tuesday, Wednesday) against SPY's $32.7 billion, and SanDisk's $26.57 billion put a second memory name in the top four. SOXS, the 3x-inverse semiconductor ETF, topped the share board at 748.2 million: cheap shares dominate a share count, expensive ones a dollar count, and relative volume compares either against a name's own norm. Basis: July 2 regular hours, one reused-symbol listing excluded (receipts).

پرس‌وجوتعداد سهام معامله‌شده در بازه‌های ۳۰ دقیقه‌ای، ساعات عادی معاملات، معاملات حراج پایانی در آخرین بازه (به میلیارد)
زمان ETتعداد سهام (میلیارد)درصد از بزرگ‌ترین سبد
09:302.1360.5
10:001.6446.4
10:301.6446.5
11:001.4140
11:301.0529.7
12:001.0329.2
12:300.9627.3
13:000.8724.7
13:300.8524.2
14:000.8925.3
14:300.8123.1
15:001.0529.8
15:303.53100
کد دقیق SQL پشت هر عدد
SELECT
    et_time,
    round(sum(shares) / 1e9, 2) AS shares_bn,
    round(100 * sum(shares) / max(sum(shares)) OVER (), 1) AS pct_of_biggest_bucket
FROM
(
    SELECT
        formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
        toFloat64(volume) AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
    UNION ALL
    SELECT
        '15:30' AS et_time,
        toFloat64(size) AS shares
    FROM global_markets.stocks_trades
    WHERE sip_timestamp >= '2026-07-02 20:00:00' AND sip_timestamp < '2026-07-02 20:15:00'
      AND has(conditions, 8)
)
GROUP BY et_time
ORDER BY et_time
خودتان اجرا کنید

2.13 billion shares in the opening half hour, a 0.81 billion trough at 14:30, 3.53 billion into the holiday-eve close, the final bucket the day's biggest, as the closing auction pulls resting orders into one print.

نوار معاملات اختیار: سررسیدهای هفتگی جابه‌جاشده

پرس‌وجوخلاصه جریان آپشن‌ها در یک روز: حجم معاملات، سررسیدهای روزانه، هفته تغییریافته به دلیل تعطیلات و سررسید ماهانه ژوئیه
تعداد معاملات آپشن (میلیون)تعداد قراردادها (میلیون)درصد Call از حجمدرصد انقضای روزانهقراردادهای منقضی ۲ ژوئیه (میلیون)معاملات منقضی ۳ ژوئیهقراردادهای هفتگی ۱۰ ژوئیه (میلیون)قراردادهای ماهانه ۱۷ ژوئیه (میلیون)قراردادهای SPY (میلیون)قراردادهای QQQ (میلیون)دارایی پایه قرارداد برترقیمت اعمال قرارداد برترنوع قرارداد برترتاریخ انقضای قرارداد برترحجم قرارداد برترحجم فرمت‌شده قرارداد برترمیانگین قیمت قرارداد برتراختلاف قیمت اعمال و بسته شدن SPYاختلاف بسته شدن SPY و قیمت اعمال
13.1580.9658.447.438.3809.648.8213.968.5SPY740P2026-07-02540403540,4030.499-4.84.8
کد دقیق SQL پشت هر عدد
WITH
    (
        SELECT (any(underlying_symbol), any(toFloat64(strike_price)), any(option_type),
                any(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))),
                sum(size), count(), round(avg(toFloat64(price)), 3))
        FROM global_markets.options_trades
        WHERE sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
        GROUP BY ticker
        ORDER BY sum(size) DESC
        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-02 13:30:00' AND window_start < '2026-07-02 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(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260702') / 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, substring(ticker, length(ticker) - 14, 6) = '260710')) / 1e6, 2) AS jul10_weekly_contracts_m,
    round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260717')) / 1e6, 2) AS jul17_monthly_contracts_m,
    round(toFloat64(sumIf(size, underlying_symbol = 'SPY')) / 1e6, 2) AS spy_contracts_m,
    round(toFloat64(sumIf(size, underlying_symbol = 'QQQ')) / 1e6, 2) AS qqq_contracts_m,
    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_expiry,
    top_contract.5 AS top_contract_volume,
    reverse(arrayStringConcat(extractAll(reverse(toString(assumeNotNull(top_contract.5))), '[0-9]{1,3}'), ',')) AS top_contract_volume_fmt,
    round(top_contract.7, 3) AS top_contract_avg_price,
    round(top_contract.2 - spy_regular_close, 2) AS top_strike_minus_spy_close,
    round(spy_regular_close - top_contract.2, 2) AS spy_close_minus_strike
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
خودتان اجرا کنید

در مجموع 80.96 میلیون قرارداد در قالب 13.15 میلیون معامله (print) در بازار اختیار معامله شد و 47.4% از این حجم در همان روز پنجشنبه منقضی شد. هیچ قراردادی با کد سررسید 3 ژوئیه در تمام طول روز معامله نشد (0 معامله)، بنابراین پنجشنبه همزمان بارِ سررسید روزانه و سررسید هفتگی جابه‌جاشده هفته را به دوش کشید. پرمعامله‌ترین قرارداد، اختیار فروش (put) نماد SPY با قیمت اعمال 740 دلار در همان روز بود که با 540,403 قرارداد و میانگین حق‌بیمه (premium) 0.499 دلار معامله شد؛ در حالی که SPY با 4.8 دلار بالاتر از قیمت اعمال بسته شد: خارج از سود (out of the money) و یک اختیار فروش در صدر تابلویی که در آن سه‌شنبه و چهارشنبه شاهد معاملات اختیار خرید (call) بودیم. اختیار خریدها همچنان 58.4% از حجم معاملات را به خود اختصاص دادند؛ سررسید هفتگی بعدی 9.64 میلیون قرارداد و سررسید ماهانه ژوئیه 8.82 میلیون قرارداد را جذب کرد (مکانیسم‌های انقضا).

نوار قیمت: هزینه معاملات

قیمت‌ها نشان می‌دهند چه اتفاقی افتاده است؛ اما مظنه‌ها (Quotes) نشان می‌دهند هزینه آن چقدر بوده است. اسپرد خریدوفروش (bid-ask spread) عوارض هر معامله رفت‌وبرگشتی است که بر حسب واحد پایه (basis point) از قیمت میانه محاسبه می‌شود (هر واحد پایه یک‌صدم درصد است). ما این شاخص را در هر جلسه معاملاتی، چه عادی و چه غیرعادی، اندازه‌گیری می‌کنیم؛ همین امر باعث می‌شود ادعای «گسترش شدید اسپردها» (spreads blew out) یک ادعای قابل‌سنجش و اثبات باشد.

پرس‌وجوتعداد به‌روزرسانی‌های NBBO سهام: ۲ ژوئیه در مقایسه با ۱ ژوئیه، به همراه به‌روزرسانی نمادهای منتخب (به میلیون)
به‌روزرسانی‌های ۲ ژوئیه (میلیون)به‌روزرسانی‌های ۱ ژوئیه (میلیون)درصد تغییر روزانهبه‌روزرسانی‌های SPY در ۲ ژوئیه (میلیون)به‌روزرسانی‌های QQQ در ۲ ژوئیه (میلیون)به‌روزرسانی‌های MU در ۲ ژوئیه (میلیون)
597.22449.15335.427.561.01
کد دقیق SQL پشت هر عدد
SELECT
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02')) / 1e6, 2) AS jul2_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-01')) / 1e6, 2) AS jul1_updates_m,
    round((countIf(toDate(sip_timestamp) = toDate('2026-07-02')) / countIf(toDate(sip_timestamp) = toDate('2026-07-01')) - 1) * 100, 1) AS day_over_day_pct,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'SPY') / 1e6, 2) AS jul2_spy_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'QQQ') / 1e6, 2) AS jul2_qqq_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02') AND ticker = 'MU') / 1e6, 2) AS jul2_mu_updates_m
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
خودتان اجرا کنید

بهترین مظنه خرید و فروش ملی (NBBO)، که نشان‌دهنده بالاترین سطح دفتر سفارشات تجمیعی است، در تاریخ 2 ژوئیه 597.22 میلیون بار بازنویسی شد، در حالی که این رقم در 1 ژوئیه 449.15 میلیون بار بود: جهشی 33% درصدی تا زمان بسته شدن بازار. نماد QQQ با 7.56 میلیون بار، بالاتر از SPY با 5.42 میلیون بار قرار گرفت؛ نماد MU نیز 1.01 میلیون بار ثبت شد.

پرس‌وجومیانه اسپرد مظنه به واحد پایه (bps)، ساعات عادی معاملات: ETFهای شاخص، مگاکپ‌ها و نمادهای حوزه حافظه
نمادمیانه اسپرد (bps)میانه اسپرد (سنت)ضریب اسپرد SPYبه‌روزرسانی‌های RTH (میلیون)مظنه‌های نامعتبر حذف‌شده
SPY0.27214.9819064
QQQ0.8363.16.035934
NVDA1.0323.82.5520398
AAPL1.62561.915193
TSLA2.2998.50.852699
MU5.525520.40.922442
SNDK10.418938.50.26163
WDC10.7960400.1483
کد دقیق SQL پشت هر عدد
SELECT
    ticker,
    round(med_bps, 2) AS median_spread_bps,
    round(med_dollars * 100, 1) AS median_spread_cents,
    round(med_bps / min(med_bps) OVER (), 1) AS times_the_spy_spread,
    round(quote_updates / 1e6, 2) AS rth_updates_m,
    invalid_quotes_dropped
FROM (
    SELECT
        ticker,
        quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000,
                             toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)) AS med_bps,
        quantileExactIf(0.5)(toFloat64(ask_price) - toFloat64(bid_price),
                             toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)) AS med_dollars,
        count() AS quote_updates,
        countIf(NOT (toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price))) AS invalid_quotes_dropped
    FROM global_markets.cache_stocks_quotes
    WHERE ticker IN ('SPY', 'QQQ', 'AAPL', 'TSLA', 'NVDA', 'MU', 'SNDK', 'WDC')
      AND sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
    GROUP BY ticker
)
ORDER BY median_spread_bps ASC
خودتان اجرا کنید

میانه اسپرد SPY حدود 0.27 واحد پایه بود: تقریباً 2 سنت برای یک ETF با قیمت $744.8. نماد QQQ در سطح 0.83 واحد پایه و NVDA در سطح 1.03 واحد پایه قرار گرفتند. نمادهایی که با افت قیمت مواجه بودند، هزینه‌های معاملاتی بالایی داشتند: MU با 5.52 واحد پایه، SanDisk با 10.4، وسترن دیجیتال با 10.79، یعنی 40 برابر اسپرد SPY. معامله سبدی از سهام حوزه حافظه، پیش از در نظر گرفتن هرگونه تأثیر قیمتی، چندین برابرِ معامله شاخص هزینه داشت. مظنه‌های نامعتبر (یک‌طرفه یا متقاطع) برای هر نماد به‌صورت جداگانه شمارش می‌شوند و پنهان نمی‌مانند.

پرس‌وجوآیا نقدینگی غیرعادی بود؟ مقایسه میانه اسپرد ساعات عادی SPY با جلسات معاملاتی ماه گذشته
میانه اسپرد ۲ ژوئیه (bps)میانه متحرک (bps)تفاضل ۲ ژوئیه از متحرک (bps)رتبه عریض‌ترجلسات مقایسه‌شدهعریض‌ترین جلسه (bps)
0.270.27011220.409
کد دقیق SQL پشت هر عدد
WITH per_day AS (
    SELECT toDate(sip_timestamp) AS d,
           quantileExact(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000) AS med_bps
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'SPY'
      AND sip_timestamp >= '2026-06-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
      AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
      AND toFloat64(bid_price) > 0 AND toFloat64(ask_price) > toFloat64(bid_price)
    GROUP BY d
)
SELECT
    round(anyIf(med_bps, d = toDate('2026-07-02')), 3) AS jul2_median_spread_bps,
    round(quantileExact(0.5)(med_bps), 3) AS trailing_median_bps,
    round(anyIf(med_bps, d = toDate('2026-07-02')) - quantileExact(0.5)(med_bps), 3) AS jul2_minus_trailing_bps,
    arrayCount(x -> x > anyIf(med_bps, d = toDate('2026-07-02')), groupArrayIf(med_bps, d != toDate('2026-07-02'))) + 1 AS wider_rank,
    count() AS sessions_compared,
    round(max(med_bps), 3) AS widest_session_bps
FROM per_day
خودتان اجرا کنید

این یک روز عادی از نظر نقدینگی بود و یافته‌ها نیز همین را تأیید می‌کنند: میانه اسپرد SPY که 0.27 واحد پایه بود، تنها 0 واحد پایه با میانه ماه گذشته (0.27 واحد پایه) فاصله داشت و از نظر میزان گستردگی، رتبه 11 را در میان 22 جلسه معاملاتی کسب کرد که با عریض‌ترین اسپرد ماه یعنی 0.409 واحد پایه فاصله زیادی دارد. یک ریزش متمرکز در بازاری که در مجموع سبز بود، فشاری بر زیرساخت‌های معاملاتی وارد نکرد.

نرخ‌ها: ثبت داده‌های 2 ژوئیه

پرس‌وجوگزارش خزانه‌داری: ثبت داده‌های خزانه‌داری برای ۲ ژوئیه
تعداد ردیف‌های ۲ ژوئیهتعداد ردیف‌های ۱ ژوئیه
11
کد دقیق SQL پشت هر عدد
SELECT
    (SELECT count() FROM global_markets.treasury_yields WHERE date = '2026-07-02') AS jul2_rows,
    (SELECT count() FROM global_markets.treasury_yields WHERE date = '2026-07-01') AS jul1_rows
خودتان اجرا کنید

خوراک داده‌های خزانه‌داری با تأخیری یک یا دو روزه نسبت به نوار قیمت‌ها به‌روزرسانی می‌شود: در زمان انتشار اولیه، داده‌های مربوط به پایان روز 2 ژوئیه در پرونده موجود نبود و این صفحه به‌جای گمانه‌زنی، این موضوع را اعلام کرد. اکنون این داده‌ها ثبت شده‌اند؛ 1 ردیف برای 2 ژوئیه و 1 برای 1 ژوئیه، بنابراین جدول زیر منحنی بازدهی همان جلسه معاملاتی را نشان می‌دهد.

پرس‌وجومنحنی بازده جلسه معاملاتی: ۲ ژوئیه در مقایسه با ۱ ژوئیه (فقط سررسیدهای موجود)
نقطه منحنیبازده ۲ ژوئیه (%)تغییر روزانه (bp)
1 month3.73
3 month3.82-3
1 year3.96-4
2 year4.14-3
5 year4.23-1
10 year4.491
30 year4.981
2s10s spread0.354
کد دقیق SQL پشت هر عدد
SELECT
    t.1 AS curve_point,
    round(t.2, 2) AS jul2_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-02') AS d,
         (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-01') AS p
)
خودتان اجرا کنید

در پایان معاملات، بازدهی اوراق 10 ساله در سطح 4.49% قرار گرفت و اسپرد 2 ساله به 10 ساله در سطح 0.35 واحد ایستاد.

تقویم پشت پرده روز

پرس‌وجوتقویم شرکتی و جریان اطلاعات ۲ ژوئیه در یک نگاه (شامل هشت مورد تقسیم سهام ناشی از یک خطای غربالگری)
سوابق سود نقدی (Ex-Dividend)شکست‌های اجراشدهشکست مستقیمشکست معکوسسوابق شکست سهامعرضه‌های اولیه (IPO) ثبت‌شدهگزارش‌های SECگزارش‌های Form 4 (خودی‌ها)گزارش‌های 8-Kنام‌های IPOمقاله‌های خبریناشران خبرنماد (Ticker) پربازتابتعداد مقالات پربازتابنسبت شکست CRWD (از)نسبت شکست CRWD (به)قیمت بسته قبلی CRWDقیمت بسته روزانه CRWDارزش دلاری CRWD (میلیون)نام‌های تفکیک‌شده با خط عمودی
322853CRWD 4-for-1; FBIP 4-for-1; FNCSF 110-for-100; GMEX 1-for-9; GTCDF 1-for-5; SMTOY 8-for-1; UBYH 1-for-10; VLNT 10-for-1252032109258MIACU — Meridian3 Industrials Acquisition Corp.; VIIU — Viking Acquisition Corp. II2013NVDA1814772.45193.671473.512
کد دقیق SQL پشت هر عدد
WITH
    (
        SELECT (count(), uniqExact(publisher))
        FROM global_markets.stocks_news
        WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-02'
    ) 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-02'
            )
            WHERE t != 'SPCX'
            GROUP BY t
        )
    ) AS top_news,
    (
        SELECT (count(), countIf(split_to > split_from), countIf(split_to < split_from),
                arrayStringConcat(groupArray(concat(ticker, ' ', toString(split_to), '-for-', toString(split_from))), '; '))
        FROM global_markets.stocks_splits
        WHERE execution_date = '2026-07-02' AND ticker NOT IN ('SPCX')
    ) AS splits
SELECT
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-02') AS ex_dividend_records,
    splits.1 AS splits_executed,
    splits.2 AS forward_splits,
    splits.3 AS reverse_splits,
    splits.4 AS split_records,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-02') AS ipos_listed,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') AS sec_filings,
    (SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') AS insider_form4_filings,
    (SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-02') 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-02' 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,
    (SELECT any(split_from) FROM global_markets.stocks_splits WHERE ticker = 'CRWD' AND execution_date = '2026-07-02') AS crwd_split_from,
    (SELECT any(split_to) FROM global_markets.stocks_splits WHERE ticker = 'CRWD' AND execution_date = '2026-07-02') AS crwd_split_to,
    (SELECT round(toFloat64(argMax(close, window_start)), 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-01 13:30:00' AND window_start < '2026-07-01 20:00:00') AS crwd_prev_close,
    (SELECT round(toFloat64(argMax(close, window_start)), 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS crwd_day_close,
    (SELECT round(sum(toFloat64(close) * toFloat64(volume)) / 1e6, 2) FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'CRWD' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS crwd_dollar_m,
    (SELECT count() FROM (
        SELECT ticker FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date = '2026-07-02')
          AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
        GROUP BY ticker
    )) AS split_names_with_bars
خودتان اجرا کنید

322 سوابق سود سهام به وضعیت ex-dividend رسیدند، 2 عرضه اولیه جدید ثبت شد (MIACU — Meridian3 Industrials Acquisition Corp.; VIIU — Viking Acquisition Corp. II)، و شاخص SEC تعداد 5203 پرونده را تا پیش از تعطیلات به ثبت رساند که شامل 2109 فرم 4 و 258 گزارش 8-K بود. جریان اخبار شامل 201 مقاله از 3 ناشر بود (NVDA مورد بیشترین پوشش را داشتند، که 18 مورد از آن‌ها بودند).

شکست‌های سهام (splits) هر کسی را که قیمت‌های پایانی خام را می‌خواند، به اشتباه می‌اندازد. نماد CRWD یک شکست رو به جلو به نسبت 4 به 1 را اجرا کرد، بنابراین نوار قیمت تعدیل‌نشده در روز چهارشنبه عدد 772.45 دلار و در روز پنجشنبه عدد 193.67 دلار را نشان می‌دهد؛ یک کاهش کاذب که در واقع به معنای چهار سهم جدید در ازای هر سهم قدیمی است. این نماد تنها نبود: 8 سابقه شکست سهام اجرا شد، 5 مورد رو به جلو و 3 مورد معکوس (ستون split_records آن‌ها را فهرست می‌کند)، و یک شکست معکوس اثر متضادی ایجاد می‌کند؛ یعنی قیمت خامی که یک‌شبه جهش می‌کند. تنها 2 مورد از این نام‌ها در نوار معاملاتی ما معامله شدند؛ گردش مالی 1473.51 میلیون دلاری CRWD تنها موردی است که به اندازه کافی بزرگ است تا یک صفحه نمایش را تحت تأثیر قرار دهد، و تمام نمایشگرهای تغییرات قیمت در اینجا آن را حذف کرده‌اند.

در دستور کار

تقویم رویدادها، نه پیش‌بینی؛ آنچه جداول برای جلسات معاملاتی پیش رو در نظر دارند.

پرس‌وجوپس از تعطیلات: جلسه معاملاتی بعدی، تاریخ‌های سود نقدی و تقسیم سهام، تعطیلی برنامه‌ریزی‌شده بعدی و تاخیر در گزارش سود کوتاه (Short Interest)
نمودار میله‌ای عادی SPY - ۶ ژوئیهسوابق سود نقدی (Ex-Div) - ۶ ژوئیهسود نقدی خانوارها - ۶ ژوئیهتجزیه سهام - ۶ ژوئیهتعطیلی برنامه‌ریزی‌شده بعدینام تعطیلی بعدیوضعیت تعطیلی بعدیآخرین تسویه سود کوتاه‌مدت (SI)عمر تسویه SI (روز)
390119JPM152026-09-07Labor Dayclosed2026-06-302
کد دقیق SQL پشت هر عدد
SELECT
    (SELECT count() FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'SPY' AND window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00') AS jul6_spy_regular_bars,
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-06') AS exdiv_records_jul6,
    (SELECT arrayStringConcat(groupArray(ticker), ', ') FROM global_markets.stocks_dividends
     WHERE ex_dividend_date = '2026-07-06'
       AND ticker IN ('AAPL', 'MSFT', 'JPM', 'JNJ', 'XOM', 'KO', 'PG', 'WMT', 'CVX', 'HD')) AS household_exdivs_jul6,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06') AS splits_jul6,
    (SELECT toString(min(date)) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02') AS next_scheduled_closure,
    (SELECT any(name) FROM global_markets.stocks_market_holidays
     WHERE date = (SELECT min(date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02')) AS next_closure_name,
    (SELECT any(status) FROM global_markets.stocks_market_holidays
     WHERE date = (SELECT min(date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-02')) AS next_closure_status,
    (SELECT toString(max(settlement_date)) FROM global_markets.stocks_short_interest
     WHERE settlement_date <= '2026-07-02') AS latest_si_settlement,
    (SELECT dateDiff('day', max(settlement_date), toDate('2026-07-02')) FROM global_markets.stocks_short_interest
     WHERE settlement_date <= '2026-07-02') AS si_settlement_age_days
خودتان اجرا کنید

دوشنبه 6 ژوئیه با یک جلسه معاملاتی کامل 390-میله‌ای بازگشایی شد که از طریق میله‌های اختصاصی خود تأیید شده است. این جلسه شامل 119 رکورد تاریخ بدون سود (ex-dividend) بود که یکی از نام‌های تجاری شناخته‌شده در میان ده موردی است که بررسی می‌کنیم (JPM)، و همچنین 15 اجرای تقسیم سهام (split) را در بر داشت. تعطیلی برنامه‌ریزی‌شده بعدی: Labor Day، 2026-09-07 (closed). سود کوتاه (Short interest) طبق معمول خبری قدیمی بود؛ جدیدترین تسویه ثبت‌شده مربوط به 2026-06-30، یعنی 2 روز پیش است و انتشار آن حدود دو هفته پس از تاریخ تسویه صورت می‌گیرد (دلیل).

جلسه معاملاتی، تأییدشده و جمعه‌ای که نبود

پرس‌وجوبررسی جلسه معاملاتی: بازه زمانی نمودارهای دقیقه‌ای SPY و ثبت تعطیلی ۳ ژوئیه در نوار معاملات
اولین میله SPY (به وقت ET)آخرین میله SPY (به وقت ET)نمودار دقیقه‌ای SPYنمودار جلسات معاملاتی عادیجلسات روزانهنمودار میله‌ای SPY - ۳ ژوئیه
04:0019:5988639010
کد دقیق 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-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS regular_session_bars,
    uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00') AS day_sessions,
    (SELECT count() FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'SPY' AND window_start >= '2026-07-03 00:00:00' AND window_start < '2026-07-04 00:00:00') AS jul3_spy_bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-02 00:00:00' AND window_start < '2026-07-03 00:00:00'
خودتان اجرا کنید

2 ژوئیه یک جلسه معاملاتی کامل بود، نه تعطیلی زودهنگام: نمودارهای SPY از 04:00 تا 19:59 به وقت نیویورک (شامل نمودارهای پیش‌از‌بازار و پس‌از‌بازار) امتداد دارند و دقیقاً شامل 390 نمودار در بازه زمانی عادی هستند. روز جمعه 3 ژوئیه، 0 نمودار SPY ثبت شد که نشان‌دهنده تعطیلی کامل به مناسبت روز استقلال است، چرا که 4 ژوئیه در روز شنبه قرار داشت. هفته چهارجلسه‌ای: خلاصه هفته.

پرسش‌های متداول

چرا در 2 ژوئیه 2026، شاخص Dow رشد کرد اما Nasdaq کاهش یافت؟

این دو شاخص شامل شرکت‌های متفاوتی هستند: DIA با قیمت 1.04% بسته شد و QQQ با قیمت -1.71%. تابلوی بخش‌ها نیز همین شکاف را نشان می‌دهد؛ بخش‌های مراقبت‌های بهداشتی، خدمات عمومی و کالاهای اساسی در صدر قرار دارند و فناوری با -2.71% در انتهای فهرست است که نشان‌دهنده شکافی 5.34 واحدی میان بهترین و بدترین عملکرد است.

آیا بازار سهام در جمعه هفته روز استقلال باز بود؟

خیر. روز استقلال در روز شنبه واقع شد و بورس‌ها این مناسبت را با تعطیلی کامل در روز جمعه، یعنی یک روز پس از این جلسه معاملاتی، گرامی داشتند: نوار معاملاتی ما برای آن روز، 0 کندل یک‌دقیقه‌ای برای SPY نشان می‌دهد.

تقسیم سهام (Forward Stock Split) چه تأثیری بر قیمت سهم دارد؟

این اقدام تعداد سهام را چهار برابر و قیمت را چهار برابر کاهش می‌دهد؛ ارزش موقعیت معاملاتی بدون تغییر باقی می‌ماند. در مورد CRWD در 2 ژوئیه: قیمت بسته شدن تعدیل‌نشده در چهارشنبه 772.45 دلار و در پنجشنبه 193.67 دلار بود؛ هر غربالگری که این تقسیم را نادیده بگیرد، کاهشی کاذب را نمایش می‌دهد.

عرض اسپرد خریدوفروش (bid-ask spread) در 2 ژوئیه 2026 چقدر بود؟

میانه اسپرد اعلام‌شده برای SPY در ساعات عادی معاملات 0.27 واحد پایه (bps) نسبت به قیمت میانه بود، که از نظر پهنا، 11 از 22 جلسه معاملاتی گذشته را شامل می‌شود و یک روز عادی محسوب می‌شد. تک‌سهم‌ها اسپرد پهن‌تری داشتند: MU با 5.52 واحد پایه و WDC با 10.79 واحد پایه.

یادداشت‌های داده‌ها

  • حجم دلاری یک شاخص جایگزین برای هر دقیقه است که از حاصل‌ضرب قیمت پایانی در حجم و مجموع آن در هر بازه زمانی به‌دست می‌آید.
  • نیم‌ساعت پایانی در پنل حجم، شامل معاملات حراج پایانی (closing auction prints) است. از آنجا که نمودارهای یک‌دقیقه‌ای معاملات حراج را لحاظ نمی‌کنند، پنل نیم‌ساعته، هر معامله‌ای را که دارای شرط فروش حراج پایانی باشد و در نوار تجمیعی (consolidated tape) با زمان 16:00 تا 16:15 به وقت شرقی ثبت شده باشد، به آخرین بازه زمانی خود می‌افزاید.
  • معامله اوراق خزانه در تاریخ 2 ژوئیه پس از انتشار اولیه ثبت شد؛ یادداشت اصلی عدم حضور آن را با رسید تعداد ردیف‌ها اعلام کرده بود. این نسخه اصلاح‌شده شامل آن معامله است و رسید مربوطه نمایش داده شده است.
  • تغییر قیمت پایانی خام در CRWD ناشی از شکسته شدن سهام (split) است و از فهرست‌های تغییرات قیمت حذف شده است.
یادداشت‌های کامل داده‌ها
  • تابلوی بخش‌ها شامل یازده صندوق SPDR Select Sector (شامل XLB، XLC، XLE، XLF، XLI، XLK، XLP، XLRE، XLU، XLV، XLY) است که یک سبد ثابت و مشخص است، نه فیلد بخشی ارائه‌شده توسط تامین‌کننده داده.
  • شمارش نوار مظنه‌ها بر اساس تاریخ UTC در برچسب زمانی SIP دسته‌بندی می‌شود؛ یک جلسه معاملاتی تابستانی در یک روز UTC قرار می‌گیرد.
  • یک نماد بازاستفاده‌شده در فهرست ژوئن از جدول‌های پیشرو حذف شده است (رسیدها)؛ تحلیل‌های دقیق تیک‌به‌تیک در بخش بررسی‌های عمیق (deep-dives) موجود است.

روش‌شناسی

  • بازه زمانی یک جلسه معاملاتی است (1 جلسه، که از نمودارهای میله‌ای مشاهده‌شده تأیید شده است). مُهرهای زمانی به وقت UTC ذخیره شده و در داخل پرس‌وجوها به وقت نیویورک تبدیل می‌شوند؛ «بسته شدن» به معنای آخرین میله دقیقه‌ای در جلسه عادی است و تغییرات روزانه، دوم ژوئیه را با یکم ژوئیه مقایسه می‌کند. بسته شدن سوم ژوئیه از روی نمودارها تأیید شده و هرگز فرض نشده است.
  • اسپردها (تفاضل قیمت فروش و خرید) بر حسب واحد پایه (basis points) از قیمت میانه، به صورت میانه در به‌روزرسانی‌های NBBO ساعات عادی و بر اساس یک چندک قطعی نقل می‌شوند. اعشارها پیش از محاسبات نسبت، به اعداد اعشاری (float) تبدیل می‌شوند؛ تاریخ انقضای اختیارها مجدداً از تیکر OCC تجزیه می‌شود. هر پنل در زمان نگارش، یک‌بار از طریق مسیر دسترسی محدود و فقط‌خواندنی خوانده می‌شود.

نمودار، جدول و SQL یک شیء واحد هستند. هر پنل را در ترمینال Strasmore کپی کنید و آن را شخصی‌سازی نمایید. جلسه پیشین: یکم ژوئیه. هفته جاری: هفته چهار جلسه‌ای تعطیلات.

#recap#daily#spy#qqq#market structure