Strasmore Research
Market Recap

H1 2026 مارکیٹ ریکیپ

Matt ConnorBy Matt Connor Updated 2026-07-25

2026 کا پہلا نصف دو مختلف مارکیٹوں کا ملغم تھا: پہلی سہ ماہی جس میں ہر بڑی انڈیکس ETF گر گئی یا یکجا رہی، اور دوسری سہ ماہی جس نے اسے مکمل طور پر پورا کر دیا۔ SPY نصف سال 8.8% کے اضافے پر ختم ہوا؛ QQQ میں 18.7% کا اضافہ ہوا؛ اور IWM کا 21.3% چھوٹی کمپنیوں کی ETF کا ٹیپ پر دستیاب بہترین پہلا نصف ہے — اس کی رسید نیچے دی گئی ہے، جسے ایک ہی query میں ہر پچھلے سال کے حساب سے دوبارہ محاسبہ کیا گیا ہے۔ شرح کی شرحوں کی مارکیٹ نے اپنی الگ کہانی سنائی: 2s10s spread نصف سال کے دوران 72 بنیاد پوائنٹس سے 30 تک سیدھا ہو گیا، بغیر کبھی الٹے ہوئے۔ یہ صفحہ نصف سال کا مکمل کھاتہ ہے — اسکور بورڈ، تاریخی درجہ بندی، ماہانہ سیڑھی، پوری ییلڈ کرود میعاد بہ میعاد، گیارہ شعبے، آپشنز ٹیپ کی ماہانہ ترقی، اور نصف سال کی نمایاں انفرادی اسٹاکس۔ یہاں ہر عدد ایک محفوظ شدہ query کا نتیجہ ہے؛ SQL کے لیے کسی بھی پینل کو کھولیں۔

بورڈ پر کا آدھا حصہ

استفسار کریںH1 2026: چار index ETFs کے لیے نصف سال، Q1 اور Q2 کے منافع — ایک query میں محاسوب
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-03-31') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q1_return_pct,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-04-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
    round(argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS h1_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
  AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY ticker

دو سہ ماہیوں میں تقسیم اس آدھے حصے کی تعریف کرنے والی شکل ہے: SPY -5.2% پھر 14.1%؛ QQQ -6.9% پھر 26.5%۔ IWM اس آدھے حصے کا خاموش لیڈر تھا جس کا حساب 21.3% تھا — چھ ماہ میں چھوٹی کمپنیوں نے ہر بڑی کمپنی کے انڈیکس کو پیچھے چھوڑا۔ سہ ماہی کی تفصیل دوسری سہ ماہی کا خلاصہ میں موجود ہے۔ آدھے حصوں کے حساب کتاب کے بارے میں ایک نوٹ: چھ ماہ کے لیے SPY کا 8.8% صرف دوسری سہ ماہی سے بہت کم ہے، کیونکہ آدھا حصہ ایک گراوٹ اور ایک بحالی کو جوڑتا ہے — -5.2% اور 14.1% کا مل کر حساب وہاں اترتا ہے جہاں ٹیبل کہتا ہے، اور کوئی بھی 'پہلے آدھے حصے کی منافع' والی سرخی خاموشی سے اس پورے سفر کو شامل کرتی ہے۔

The half against every first half on the tape

Is a 8.8% half unusual? The panels below recompute the SAME first-half return — first regular-hours open to last regular-hours close, January through June — for every year of minute history, in one query per ETF pair with identical arithmetic for every year, then rank this half against the rest. The minute tape's earliest date is verified in the methodology below; the first complete first half on file is the one the receipts name.

استفسار کریںٹیپ پر ہر پہلا نصف سال: SPY اور QQQ، سال در سال یکساں طریقے سے محاسوب (ہر سال کے session counts دکھائے گئے)
ہر عدد کے پیچھے موجود درست SQL
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
       ticker,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
       round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 1) AS h1_return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
  AND window_start >= toDateTime('2003-01-01 00:00:00')
  AND window_start < toDateTime('2026-07-01 00:00:00')
  AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
ORDER BY y ASC, ticker ASC
استفسار کریںدرجہ بندی کی رسید: اس نصف سال کا ہر پچھلے نصف سال کے مقابلے میں (SPY اور QQQ؛ rank 1 = بہترین؛ خود کو خارج کیا گیا)
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
       round(anyIf(ret, y = 2026), 1) AS h1_2026_pct,
       arrayCount(x -> x > anyIf(ret, y = 2026), groupArrayIf(ret, y != 2026)) + 1 AS rank_best,
       count() AS halves_compared,
       min(y) AS first_year,
       anyIf(sessions, y = 2026) AS sessions_2026
FROM (
    SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
           ticker,
           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 IN ('SPY', 'QQQ')
      AND window_start >= toDateTime('2003-01-01 00:00:00')
      AND window_start < toDateTime('2026-07-01 00:00:00')
      AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY y, ticker
    HAVING sessions >= 100
)
GROUP BY ticker
ORDER BY ticker ASC

SPY's 8.8% ranks 6 of 23 first halves since 2004 (rank 1 = best) — upper third, not a record. QQQ's 18.7% ranks 3 of 16 comparable halves — the QQQ series is shorter — the fund traded under a different root symbol for a stretch of years — and any year with fewer than one hundred first-half sessions for a symbol is excluded by a session-count guard shown in the table, so exclusions are visible rather than silent.

استفسار کریںٹیپ پر ہر پہلا نصف سال: DIA اور IWM، یکساں حساب
ہر عدد کے پیچھے موجود درست SQL
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
       ticker,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
       round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 1) AS h1_return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('DIA', 'IWM')
  AND window_start >= toDateTime('2003-01-01 00:00:00')
  AND window_start < toDateTime('2026-07-01 00:00:00')
  AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 100
ORDER BY y ASC, ticker ASC
استفسار کریںدرجہ بندی کی رسید: DIA اور IWM کا ہر پچھلے پہلے نصف سال کے مقابلے میں (rank 1 = بہترین؛ خود کو خارج کیا گیا)
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
       round(anyIf(ret, y = 2026), 1) AS h1_2026_pct,
       arrayCount(x -> x > anyIf(ret, y = 2026), groupArrayIf(ret, y != 2026)) + 1 AS rank_best,
       count() AS halves_compared,
       min(y) AS first_year,
       anyIf(sessions, y = 2026) AS sessions_2026
FROM (
    SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
           ticker,
           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 IN ('DIA', 'IWM')
      AND window_start >= toDateTime('2003-01-01 00:00:00')
      AND window_start < toDateTime('2026-07-01 00:00:00')
      AND toMonth(toTimeZone(window_start, 'America/New_York')) <= 6
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY y, ticker
    HAVING sessions >= 100
)
GROUP BY ticker
ORDER BY ticker ASC

The small-cap row is the half's headline: IWM ranks 1 of 23 first halves since 2004 — the best on record for the fund, ahead of every recovery half in the table. DIA's 8.4% ranks 4 of 23. Basis, stated plainly: regular-hours open-to-close within each calendar first half, identical arithmetic every year, upper bound pinned at this period's end so the comparison set cannot silently grow when later years are ingested.

ماہ بہ ماہ

استفسار کریںنصف سال، ماہ بہ ماہ (SPY اور QQQ، ایک query میں یکساں طریقے سے محاسوب)
ہر عدد کے پیچھے موجود درست SQL
SELECT toString(toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York')))) AS period_start, ticker,
    round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS month_return_pct,
    round(argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS month_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
  AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY period_start, ticker
ORDER BY period_start, ticker

سیڑھی تھوڑا اوپر، نیچے، نیچے، تیزی سے اوپر، اوپر، تھوڑا نیچے چلتی ہے: اپریل اس حصے کا محور تھا (SPY 9.9%، QQQ 14.8% — QQQ کا ان چھ میں سے بہترین مہینہ)، اور جون نے اس حصے کو SPY کے لیے -1.2% پر خاموشی سے بند کیا۔ جون کا اپنا جائزہ، اس خاموش عدد کے پیچھے پھیلاؤ کی تقسیم کے ساتھ، یہاں ہے۔ جدول کو ماہ بہ ماہ پڑھیں: سال تقریباً فلیٹ کھلا (جنوری میں SPY 0.9%)، فروری (-0.5%) اور مارچ (-4.2%) میں پھسلا، پھر اپریل نے ایک ہی مہینے میں اس سلسلے کو پلٹ دیا، مئی نے اسے آگے بڑھایا (4.9%)، اور جون میں نرمی آئی۔ چھ میں سے تین مہینے منفی تھے — ایک ایسے حصے کے لیے سکے کی اچھال کی طرح مہینوں کی گنتی جو مضبوطی سے مثبت ختم ہوا، جو ایکوئٹی حصوں کا عام روپ ہے اور اس وقت یاد رکھنے کے قابل ہے جب کوئی اکیلا مہینا فیصلے کے طور پر پڑھا جائے۔

شرح: پوری منحنی، ہر میعاد کے لحاظ سے

ٹریژری منحنی نے اس نصف سال میں موڑ کھایا، آگے نہیں بڑھی۔ انتہائی سامنے والا حصہ — وہ میعادیں جو پالیسی کی سب سے قریب سے پیروی کرتی ہیں — بمشکل ہلیں؛ دو سالہ ایک فیصد پوائنٹ کے دو تہائی حصے کے برابر بڑھا؛ تیس سالہ نے اس کا بمشکل نوٹس لیا۔ پینل پوری منحنی کو سامنے رکھتا ہے، نصف سال کے آغاز کا موازنہ اختتام سے کرتے ہوئے۔

استفسار کریںسات مچوریٹیز: نصف سال کے آغاز بمقابلہ اختتام پر yield، اور تبدیلی
ہر عدد کے پیچھے موجود درست SQL
SELECT maturity, start_pct, end_pct, round((end_pct - start_pct) * 100, 0) AS change_bp FROM (
    SELECT '1-month' AS maturity, (SELECT round(argMin(yield_1_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_month)) AS start_pct, (SELECT round(argMax(yield_1_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_month)) AS end_pct, 1 AS o
    UNION ALL SELECT '3-month', (SELECT round(argMin(yield_3_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_3_month)), (SELECT round(argMax(yield_3_month, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_3_month)), 2
    UNION ALL SELECT '1-year', (SELECT round(argMin(yield_1_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_year)), (SELECT round(argMax(yield_1_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_1_year)), 3
    UNION ALL SELECT '2-year', (SELECT round(argMin(yield_2_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_2_year)), (SELECT round(argMax(yield_2_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_2_year)), 4
    UNION ALL SELECT '5-year', (SELECT round(argMin(yield_5_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_5_year)), (SELECT round(argMax(yield_5_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_5_year)), 5
    UNION ALL SELECT '10-year', (SELECT round(argMin(yield_10_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_10_year)), (SELECT round(argMax(yield_10_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_10_year)), 6
    UNION ALL SELECT '30-year', (SELECT round(argMin(yield_30_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_30_year)), (SELECT round(argMax(yield_30_year, date), 2) FROM global_markets.treasury_yields WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_30_year)), 7
) ORDER BY o

تبدیلی کے کالم کو اوپر سے نیچے تک پڑھیں اور موڑ لپیٹ کر سامنے ہے: ایک ماہہ چھ مہینوں میں -2 بیسس پوائنٹس حرکت کر گیا، جبکہ دو سالہ 67 بڑھا اور تیس سالہ صرف 5۔ متوازی تبدیلی ہر میعاد کو یکساتھے حرکت دیتی ہے؛ یہ نصف سال منحنی کے درمیانی حصے کو ہلایا اور دونوں سروں کو مقفل رکھا — قلیل شرحیں پالیسی کے قریب لنگر انداز رہیں، طویل شرحوں کی بمشکل قیمت بدلی۔

اس سے ڈھلوان پر کیا اثر پڑا

استفسار کریںSlope رسید: آغاز، اختتام، کم سے کم — اس نصف سال میں spread کبھی invert نہیں ہوا
ہر عدد کے پیچھے موجود درست SQL
SELECT
    round((argMin(yield_10_year - yield_2_year, date)) * 100, 0) AS start_bp,
    round((argMax(yield_10_year - yield_2_year, date)) * 100, 0) AS end_bp,
    round(min((yield_10_year - yield_2_year)) * 100, 0) AS min_bp,
    count() AS prints
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
  AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)

مختصر سرے کا طویل سرے سے زیادہ تیزی سے بلند ہونا دراصل ہی ایک ہموار ہونا ہے: 2s10s اسپریڈ 124 پرینٹس کے دوران 72 سے 30 بیسس پوائنٹس تک گھٹ گیا — اور اس نصف سال کا سب سے کم پرینٹ 27 تھا، لہٰذا یوں کرو ہموار ہوئی بغیر کبھی الٹی ہوئی۔ ہموار کرو کا آئندہ کے بارے میں کچھ "معنی" رکھنا یا نہ رکھنا ایک پیش گوئی ہے، اور یہ جدول پیش گوئیاں نہیں کرتا۔

استفسار کریں2s10s spread، نصف سال کا ہر print
ہر عدد کے پیچھے موجود درست SQL
SELECT toString(date) AS d, round((yield_10_year - yield_2_year) * 100, 0) AS spread_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
  AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)
ORDER BY date

روزانہ کا ڈیٹا دکھاتا ہے کہ ہموار ہونا کوئی ایک واقعہ نہیں بلکہ ایک بتدریج عمل تھا — پورے نصف سال میں 124 پرینٹس نیچے کی طرف چلے گئے، جس میں اسپریڈ نے سال کا آغاز 72 بیسس پوائنٹس پر کیا اور اختتام 30 پر ہوا۔

شعبہ جات: وہ انتشار جو اشاریے نے چھپایا

بازار کے کون سے حصوں نے درحقیقت نصف سال کا پیسہ بنایا؟ گیارہ SPDR شعبہ جاتی ETFs، نصف اور چوتھائی میں تقسیم، ایک ہی استفسار۔

استفسار کریںگیارہ sector ETFs: H1 2026 منافع، Q1 اور Q2 تقسیم، اور H1 dollar volume
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-03-31') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q1_return_pct,
    round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-04-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
    round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / 1e9, 1) AS h1_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 >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY ticker

یہ انتشار ہی کہانی ہے: ٹیکنالوجی (XLK) نصف سال 30.8% پر مکمل ہوئی — ایک 42% دوسرے سہ ماہی کے ساتھ — جبکہ مواصلات کی خدمات (XLC) -9.3% پر رہیں، چھ ماہ میں بہترین اور بدترین شعبے کے درمیان تقریباً چالیس فیصد پوائنٹس کا فرق۔ "بازار" کا مالک ہونے کا مطلب اس کے دونوں سرے کا مالک ہونا تھا۔ توانائی پینل کی طویل مدت کے بارے میں خبردار کرنے والی کہانی ہے: XLE ایک صحت مند 18.8% نصف سال ظاہر کرتا ہے — جو ایک 36.9% پہلے سہ ماہی اور اس کے بعد -11% دوسرے سہ ماہی سے بنا ہے۔ یہ اس سہ ماہی میں بازار کا سب سے مضبوط بڑا شعبہ تھا جب اشاریے گرے، اور اس سہ ماہی میں اس کے کمزور ترین میں شامل تھا جب وہ بحال ہوئے۔ فنانشلز (XLF) نے وہی فلم الٹا چلائی: Q1 میں -9.9%، پھر Q2 میں 7.7%۔ ایک واحد H1 عدد دونوں سفروں کو ہموار کر دیتا ہے؛ سہ ماہی کی تقسیم ہی صحیح منظر ہے۔

ہر سیکٹر کی ٹریڈنگ کی لاگت

ریٹرن ٹیبلز ہر جگہ موجود ہیں؛ کوٹیشن ٹیپس ایسا نہیں ہے۔ یہ پینل ہر سیکٹر ETF کی میڈین بِڈ-اسک اسپریڈ کو ایک مکمل نمائندہ سیشن میں ناپتا ہے — اس ادھ میں 123 سیشنز، اور 29 جون وہ واحد سیشن ہے جسے یہاں ناپا گیا ہے، اور اسی طرح لیبل کیا گیا ہے — اس دن کے ہر NBBO اپڈیٹ سے۔

استفسار کریںSector ETF کے لحاظ سے median quoted spread، ایک نمائندگی والا session (June 29, 2026)، باقاعدہ اوقات
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
    round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 2) AS med_spread_bps,
    round(count() / 1e6, 2) AS quote_updates_m,
    countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
  AND sip_timestamp >= toDateTime64('2026-06-29 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-29 20:00:00', 9)
GROUP BY ticker
ORDER BY med_spread_bps

گیارہ میں سے ہر ایک کوٹ چند بیس پوائنٹس یا اس سے کم پر ہے — سب سے سستا 0.62 bps (XLV) پر، اور سب سے وسیع 2.23 bps (XLRE) پر — جو کہ "سیکٹر ETFs لیکوڈ ہیں" کا عملی مطلب ہے: کسی بھی سیکٹر ویو میں داخل ہونے کی لاگت فیصد کے سویں حصے میں ناپی جاتی ہے۔ انفرادی اسٹاکس کے مقابلے میں پیمانے کے لیے، 29 جون کی گہری تحقیق اسی سیشن پر ایک پتلی نام کی اسپریڈ ان سطحوں سے سینکڑوں گنا زیادہ ناپتی ہے۔

نصف سال بھر میں وسعت

نصف پیمانے پر وسعت کا تعین یہاں دو سطحوں پر ہوتا ہے۔ پہلی سطح: SPY نے نصف سال کے 123 دنوں میں 64 بڑھنے والے سیشن اور 59 گرنے والے سیشن ریکارڈ کیے — یہ تقریباً پانسے کا پھینک ہے، جو کہ مجموعی طور پر مثبت نصف سال کے نیچے چھپا ہوا ہے، اور یہی روزانہ کی ٹیپ سے بتدریج اوپر کی جانب رواں دواں بازار کی شکل ہے۔ دوسری سطح — ہر ٹیکر کا الگ الگ شمار — ماہانہ پیمانے پر موجود ہے: جون کے بڑھنے والوں اور گرنے والوں کی تقسیم جون کے خلاصے میں ہے (وہاں گرنے والے ٹیکرز بڑھنے والوں سے زیادہ تھے)، اور سہ ماہی سرحد کا شمار Q2 کے خلاصے میں ہے۔ چھ ماہ کا واحد پورا مارکیٹ بڑھنے والوں کا اسکین اس صفحے کے تحت پیدا ہونے والے کوارئری بجٹ سے زیادہ ہے؛ اس حد کو خاموشی سے سکوڑنے کے بجائے یہاں ظاہر کیا گیا ہے۔

استفسار کریںنصف سال میں SPY کے sessions up بمقابلہ down، ایک سستی رسید
ہر عدد کے پیچھے موجود درست SQL
SELECT countIf(day_ret > 0) AS up_sessions,
       countIf(day_ret < 0) AS down_sessions,
       countIf(day_ret = 0) AS flat_sessions,
       count() AS sessions_total
FROM (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 2) AS day_ret
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2026-01-01 00:00:00')
      AND window_start < toDateTime('2026-07-01 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 d
)

آپشنز ٹیپ، ماہ بہ ماہ

وہ کیا جو صرف نصف سال کا صفحہ دکھا سکتا ہے: آپشنز ٹیپ خود کس طرح تبدیل ہوئی۔ نیچے ہر پینل ایک مہینے کا مکمل ٹیپ اسکین ہے — کل کنٹریکٹ والیوم، اور اپنی ہی ایکسپائری کے دن تجارت کی جانے والی حصہ داری (0DTE)۔ measured کہانی: والیوم جنوری میں 1316.1 ملین کنٹریکٹس سے بڑھ کر جون میں 1477.9 ملین تک پہنچ گیا — نصف سال کا سب سے مصروف آپشنز مہینہ — اور سیم ڈے ایکسپائری حصہ داری جنوری میں 26.5% سے بڑھ کر جون میں 34.3% تک پہنچ گئی، نصف سال کا سب سے زیادہ مہینہ۔ جون کے آپشنز والیوم کا ایک تہائی حصہ اسی دن ختم ہونے والے کنٹریکٹس پر تجارت کیا گیا۔

استفسار کریںجنوری: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-01-01 00:00:00')
  AND window_start < toDateTime('2026-02-01 00:00:00')
استفسار کریںفروری: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-02-01 00:00:00')
  AND window_start < toDateTime('2026-03-01 00:00:00')
استفسار کریںمارچ: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-03-01 00:00:00')
  AND window_start < toDateTime('2026-04-01 00:00:00')
استفسار کریںاپریل: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-04-01 00:00:00')
  AND window_start < toDateTime('2026-05-01 00:00:00')
استفسار کریںمئی: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-05-01 00:00:00')
  AND window_start < toDateTime('2026-06-01 00:00:00')
استفسار کریںجون: whole-tape options contract volume اور same-day-expiry share (ایک scan)
ہر عدد کے پیچھے موجود درست SQL
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
       round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
       uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00')
  AND window_start < toDateTime('2026-07-01 00:00:00')

تجارت کا خرچ، ماہانہ نمونہ

استفسار کریںماہانہ ایک labeled sample session پر SPY median quoted spread (دوسرے بدھ)، ہر NBBO update
ہر عدد کے پیچھے موجود درست SQL
SELECT toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session,
       round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 3) AS med_spread_bps,
       round(count() / 1e6, 2) AS quote_updates_m,
       countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY'
  AND ((sip_timestamp >= toDateTime64('2026-01-14 14:30:00', 9) AND sip_timestamp < toDateTime64('2026-01-14 21:00:00', 9))
    OR (sip_timestamp >= toDateTime64('2026-02-11 14:30:00', 9) AND sip_timestamp < toDateTime64('2026-02-11 21:00:00', 9))
    OR (sip_timestamp >= toDateTime64('2026-03-11 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-03-11 20:00:00', 9))
    OR (sip_timestamp >= toDateTime64('2026-04-15 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-04-15 20:00:00', 9))
    OR (sip_timestamp >= toDateTime64('2026-05-13 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-05-13 20:00:00', 9))
    OR (sip_timestamp >= toDateTime64('2026-06-10 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-10 20:00:00', 9)))
GROUP BY session
ORDER BY session ASC

SPY کا درج شدہ میڈین اسپریڈ ہر مہینے کے دوسرے بدھ کو: جنوری نمونے میں 0.145 bps، فروری کے نمونے میں 0.144، بہار کے نمونوں میں تقریباً دوگنا، اور جون کے نمونے میں 0.409 bps — چھوں میں سب سے چوڑا۔ بنیاد، واضح: یہ واحد لیبل شدہ نمونہ سیشنز (ہر مہینے کا دوسرا بدھ) ہیں، پورے مہینے کے میڈین نہیں — چھ ماہ کے پورے کوٹ ٹیپ کا اسکین اس صفحے کے query budget سے تجاوز کرتا ہے۔ نمونے کی تاریخیں پینل میں دی گئی ہیں، اور غیر درست کوٹس وہیں شمار کیے جاتے ہیں، خاموشی سے خارج نہیں۔

اس نصف سال کے نمایاں نام

نمایاں ہونا پیمائش کا معیار ہے، ادارتی انتخاب نہیں: نیچے دیا گیا سیٹ سہ ماہی پیمانے پر ڈالر والیوم کی لیڈر بورڈ کی چوٹی ہے، یہاں اسے دوبارہ حساب کیا گیا ہے تاکہ اس صفحے کا اپنا ریکارڈ موجود ہو، اور ہر نام جس پر گہرائی سے تجزیہ ہوا اس کا لنک دیا گیا ہے۔

استفسار کریںQ2 باقاعدہ اوقات کا dollar volume، whole tape (ایک reused-symbol listing entity verification کے منتظر خارج کر دیا گیا)
ہر عدد کے پیچھے موجود درست 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-04-01 00:00:00') AND window_start < toDateTime('2026-07-01 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 8

MU نے دوسری سہ ماہی میں SPY سے زیادہ تجارت کی ($2047.5 ارب بمقابلہ $2032 ارب) — وہی ریکارڈ جو دوسری سہ ماہی کا خلاصہ رکھتا ہے۔ اس لیڈر سیٹ میں شامل چھ انفرادی ناموں کے لیے، اس نصف سال کی صورتحال:

استفسار کریںLeader set کے نصف سال اور Q2 منافع بمع نصف سالہ dollar volume — ایک ticker-filtered query
ہر عدد کے پیچھے موجود درست SQL
SELECT ticker,
    round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS h1_return_pct,
    round((argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
         / argMinIf(toFloat64(open), window_start, window_start >= toDateTime('2026-04-01 00:00:00') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
    round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) / 1e9, 1) AS h1_dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('MU', 'NVDA', 'TSLA', 'SNDK', 'AMD', 'INTC')
  AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY ticker

میموری اور سیمیکنڈکٹر کمپلیکس نے اس نصف سال پر قبضہ رکھا: SNDK نے چھ ماہ میں 830.1% کا منافع دیا، MU نے 290% — اس کا جون ماہ یہاں ٹک بہ ٹک تجزیہ کیا گیا ہے — اور INTC نے 269.3%۔ NVDA، اس سیٹ کی سب سے بڑی ٹیپ جس کا نصف سالہ کاروبار $3287.9 ارب تھا، نے 5.2% کا منافع دیا — جبکہ میموری ناموں نے کئی گنا اضافہ کیا؛ اس کا جون کا تفصیلی تجزیہ اس اختلاف کو سیشن بہ سیشن پیش کرتا ہے۔ TSLA اس سیٹ کا واحد نام ہے جس میں -8.2% کی گراوٹ ہوئی۔ جون کی میگا لسٹنگ ایک دوبارہ استعمال شدہ علامت کے تحت تجارت کرتی ہے اور ادارتی تصدیق تک لیڈر سکینز سے مستثنیٰ ہے — اس کے پہلے مہینے کا اپنا ریکارڈ بہ ریکارڈ پوسٹ ہے۔ بنیاد: لیڈر SET دوسری سہ ماہی کے باقاعدہ اوقات کے ڈالر والیوم سے منتخب کیا گیا ہے (اوپر دیا گیا سکین)؛ منافع کے کالم اس نصف سال کے ہیں، پہلے باقاعدہ اوقات کی افتتاحی قیمت سے آخری باقاعدہ اوقات کی اختتامی قیمت تک۔

سال کی پہلی ادھی کی IPO لہر، ماہ بہ ماہ

استفسار کریںنصف سال بھر ماہانہ نئی فہرست بندیاں
ہر عدد کے پیچھے موجود درست SQL
SELECT toString(toStartOfMonth(listing_date)) AS m, count() AS listings
FROM global_markets.stocks_ipos
WHERE listing_date >= toDate('2026-01-01') AND listing_date <= toDate('2026-06-30')
GROUP BY m
ORDER BY m

لسٹنگ کی لہر شروع میں زیادہ اور غیر یکساں تھی: فروری اس ادھے سال کا سب سے مصروف مہینہ تھا جس میں 47 لسٹنگز ہوئیں اور مارچ سب سے خاموش رہا جس میں 17 لسٹنگز ہوئیں — جون کی مشہور میگا لسٹنگ ایک ایسے مہینے میں آئی جب عام حجم کے لحاظ سے حالات معمولی تھے (35 لسٹنگز)۔

نصف سال کا کیلنڈر

استفسار کریںH1 2026 کی کارپوریٹ کیلنڈر (تینوں month-end filing-index gaps ظاہر کیے گئے)
ہر عدد کے پیچھے موجود درست SQL
SELECT
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-01-01') AND ex_dividend_date <= toDate('2026-06-30')) AS ex_div_events,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-01-01') AND execution_date <= toDate('2026-06-30')) AS splits,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-01-01') AND listing_date <= toDate('2026-06-30')) AS ipos,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date >= toDate('2026-01-01') AND filing_date <= toDate('2026-06-30')) AS h1_filings,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-03-31')) AS filings_mar31,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')) AS filings_apr30,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS filings_jun30

اس نصف سال میں 205 کمپنیاں عوامی ہوئیں — یہ ایک لسٹنگ کی لہر تھی جس کی جون کی سب سے بڑی پہلی پیشکش کا اپنا الگ رسید بہ رسید پوسٹ ہے — اس کے ساتھ 830 اسٹاک اسپلٹ اور 28356 ایکس ڈیویڈنڈ ایونٹس بھی سامنے آئے۔ حجم کے لحاظ سے، یہ پورے نصف سال میں ہر ٹریڈنگ سیشن میں ایک سے زیادہ نئی لسٹنگ کے برابر ہے۔ فائلنگ کی کل تعداد میں تہریں افشائے راز شامل ہے: اس نصف سال کے ہر ماہ کے آخر میں، جس کا آخری کیلنڈر دن ہفتے کا دن تھا، SEC انڈیکس تقریباً خالی ہے (مارچ 31 کو 55 فائلنگز انڈیکس ہوئیں، اپریل 30 کو 34، اور جون 30 کو 31، جبکہ ملحقہ دنوں میں ہزاروں)، اس لیے نصف سالہ فائلنگ کی گنتی اس وقت تک کم بتائی جاتی رہے گی جب تک کہ فیڈ بیک فِل نہ ہو جائے — ماہانہ اختلاف کی اپنی الگ تشخیصی نوٹ ہے۔

سیشن رسید

استفسار کریںنصف سال میں 123 sessions، ٹیپ سے تصدیق شدہ
ہر عدد کے پیچھے موجود درست 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-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')) AS h1_sessions

داده کے نوٹ

مکمل داده نوٹس
  • شرٹ انٹرسٹ 15 جون کے سیٹلمنٹ پر ختم ہوتی ہے جیسا کہ پیدا کرنے کے وقت تھا (جون کے آخر والا پرنٹ زیر التواء ہے — مکمل افشا جون کی مرتب شدہ رپورٹ میں ہے؛ یہ پوسٹ اپنے آنے پر دوبارہ بنے گا)۔
  • 2026 کے تین ماہ کے آخر والے فائلنگ انڈیکس دن تقریباً خالی ہیں (31 مارچ، 30 اپریل، 30 جون — اس نصف سال کا ہر وہ ماہ کا آخری دن جس کا آخری کیلنڈر دن ورک ڈے تھا)؛ یہ گنتی کے ساتھ ان لائن ظاہر کیے گئے ہیں، اور ان کی تشخیص ماہ کے آخر کے فرق والے نوٹ میں ہے۔ پچھلے سال کے ماہ کے آخری دنوں میں ہزاروں فائلنگز ہوتی ہیں، تو یہ فیڈ کا فرق ہے، فائلنگ کی چھٹی نہیں۔
  • نصف پیمانے پر لیڈر بورڈ محدود ہے: چھ مہینوں کی مارکیٹ بھر کی اسکین اس صفحے کے تحت پیدا ہونے والے کوری بجٹ سے بڑھ جاتی ہے، اس لیے قابل ذکر ناموں کا سیٹ ان لائن دکھائے گئے سہ ماہی پیمانے کے لیڈر اسکین سے چنا گیا ہے، اور اس مقررہ سیٹ کے لیے نصف سال کے منافع کا حساب لگایا گیا ہے — بنیاد جہاں استعمال ہوتی ہے وہاں بیان کی گئی ہے۔ Q2 اور جون کی مرتب شدہ رپورٹس اپنے پیمانے پر مکمل لیڈر ٹیبلز رکھتی ہیں۔
  • نصف پیمانے پر پوری مارکیٹ کی وسعت بھی اسی طرح محدود ہے — دن کے درجے والی تقسیم دکھائی گئی ہے؛ ٹکر کے درجے والی گنتیاں ماہ اور سہ ماہی پیمانے پر موجود ہیں، وسعت والے حصے میں منسلک ہیں۔
  • QQQ کی ہسٹری سیریز SPY سے چھوٹی ہے: فنڈ نے کچھ سالوں تک ایک مختلف روٹ علامت کے تحت تجارت کی؛ سیشن کاؤنٹ گارڈ ان سالوں کو ظاہر طور پر خارج کر دیتا ہے (فی سال سیشن کاؤنٹس ٹیبل میں ہیں)۔
  • چھ آپشنز پینلز پورے ٹیپ کی ماہانہ اسکینز ہیں اور اسپریڈ ٹرینڈ ہر ماہ ایک لیبل شدہ سیشن کا نمونہ لیتا ہے — دونوں بیچ پاتھ پر چلتے ہیں؛ نمونے کی بنیادیں ان لائن بیان کی گئی ہیں۔
  • مائیکرو اسٹرکچر 29 جون کی گہری جھلک میں ہے۔

طریقہ کار

  • مدت یکم جنوری تا 30 جون 2026 ہے — 123 سیشن، مشاہدہ شدہ بارز سے تصدیق شدہ۔ پیداواری ہر ونڈو کے اندر پہلے باقاعدہ اوقات کے افتتاح سے آخری باقاعدہ اوقات کے اختتام تک ہیں، سب اسی دکھائے گئے کواریز میں کمپیوٹ کیے گئے ہیں۔
  • تاریخی موازنے جنریشن کے وقت مکمل منٹ ہسٹری کے خلاف LIVE دوبارہ کمپیوٹ کیے جاتے ہیں — کبھی محفوظ شدہ قدروں سے نہیں پڑھے جاتے۔ ڈیپتھ تصدیق: یہاں استعمال ہونے والے ڈیلےڈ ویو میں ابتدائی منٹ بار کی تاریخ بیس ٹیبل کے مطابق (ستمبر 2003) ہے، تصنیف کے وقت چیک کیا گیا، اس لیے فائل پر پہلا مکمل پہلا نصف 2004 کا ہے۔ ہر ہسٹری کواری اپنی اوپری حد اس مدت کے اختتام پر مقفل رکھتی ہے (جب بعد کے سال انجسٹ کیے جائیں تو موازنہ سیٹ بڑھ نہیں سکتا) اور فی سال سیشن کاؤنٹس کے ساتھ کم از کم سیشن گارڈ لگاتا ہے، جو دکھائے گئے ہیں۔
  • ٹائم اسٹیمپس UTC میں محفوظ ہیں، خام UTC باؤنڈز کے ساتھ۔ ملٹی ایئر ہسٹری بلاکس ایسٹرن وال کلاک پر باقاعدہ اوقات فلٹر کرتے ہیں (9:30–15:59، فی قطار کنورٹڈ — دہائیوں میں واحد DST محفوظ روایت)؛ EDT-صرف رینجز میں سنگل ونڈو بلاکس مساوی خام UTC بینڈ استعمال کرتے ہیں۔ دونوں روایتیں یہاں بیان کی گئی ہیں۔
  • جنریشن گیٹڈ ریڈ اونلی پاتھ سے چلتی ہے؛ پبلک پیج کبھی لائیو کواری نہیں کرتا۔ 5 جولائی 2026 تک وئیر ہاؤس کی حالت۔

یہ مستقل نصف سالہ خلاصے کا پہلا ایڈیشن ہے؛ مکمل سال ایڈیشن جنوری میں آتا ہے۔ کوارٹر تفصیل: Q2 2026۔ نصف سال جس میکرو ریلیز کے خلاف ٹریڈ ہوا، وہ میکرو تصویر میں ہے۔