Strasmore Research
آموزش Matt Connorتوسط Matt Connor · به‌روزرسانی شده در 2026-07-24

هزینه معاملات آپشن چقدر است؟

کمیسیون معاملات آپشن ممکن است صفر باشد اما شکاف bid-ask واقعی است. میانگین هزینه معاملات آپشن‌های SPY، QQQ، IWM، GLD و TSLA را بررسی کنید.

در اکثر کارگزاری‌ها، کمیسیون معاملات آپشن‌های لیست‌شده صفر است، اما هر سفارش آپشن قابل معامله همچنان شامل bid-ask spread است؛ یعنی فاصله میان بالاترین قیمتی که خریدار حاضر به پرداخت آن است و پایین‌ترین قیمتی که فروشنده می‌پذیرد. قیمت آپشن‌ها معمولاً بسیار کمتر از قیمت سهام مرجع آن‌ها است، بنابراین یک شکاف قیمتی با عرض چند سنت، سهم بسیار بزرگ‌تری از کل معامله را تشکیل می‌دهد. در 2026-07-02، آپشن‌های SPY (تمام قراردادهای با سررسید 2026) در ساعات معاملاتی عادی، میانگین spread را در سطح 80.97 basis points ثبت کردند، در حالی که خودِ سهام SPY دارای spread معادل 0.27 bps بود؛ یعنی شکافی تقریباً به اندازه 299.9×. تمامی ارقام زیر بر اساس داده‌های یکپارچه نقل‌قول‌ها و معاملات آپشن استخراج شده‌اند و کد SQL دقیق هر عدد نیز به آن پیوست شده است.

چرا اختلاف قیمت در معاملات اسپرد آپشن با سهام متفاوت است

فرض کنید قیمت یک سهم 745.00 دلار (bid) / 745.02 دلار (ask) باشد. این اختلاف قیمت دو سنتی، تقریباً 0.27 bps از قیمت هر سهم است. یک قرارداد call در حالت at-the-money برای همان سهم ممکن است با قیمت 7.20 دلار (bid) / 7.30 دلار (ask) معامله شود؛ یعنی یک اختلاف قیمت ده سنتی که نسبت به نقطه میانی 7.25 دلاری، تقریباً معادل 138 bps است. اختلاف قیمت آپشن از نظر واحد دلار بیشتر است، اما نسبت به قیمت واقعی پرداخت شده، صدها برابر بزرگتر است. قیمت پایین آپشن عامل اصلی این موضوع است: ده سنت در مقیاس مطلق مبلغ کوچکی است، اما درصد بالایی از یک قرارداد 7.25 دلاری را تشکیل می‌دهد.

واحد استاندارد برای مقایسه هزینه‌ها در ابزارهای مختلف، basis point (bp) یا همان یک‌صدمِ یک درصد است. هر قرارداد استاندارد آپشن شامل 100 سهم از دارایی پایه است؛ بنابراین پیامد دلاری یک معامله با قیمت دارایی پایه تغییر می‌کند، اما میزان اسپرد نسبت به قیمت اعلام شده خودِ آپشن سنجیده می‌شود. این واحدی است که در تمام این صفحه استفاده شده است.

مقایسه گزینه‌های SPY در برابر سهام SPY: رو در رو

SPY نقدترین محصول گزینه‌های معاملاتی در ایالات متحده است و حتی در این بازار نیز شکاف هزینه بسیار چشمگیر است. جدول زیر گزینه‌های SPY و سهام SPY را در یک جلسه معاملاتی در کنار هم قرار می‌دهد: حجم استعلام قیمت، معاملات انجام شده و میانه spread استعلام شده برای هر کدام.

پرس‌وجومقایسه SPY options در برابر SPY stock در یک جلسه: تعداد استعلام، تعداد معاملات و میانه شکاف قیمت (spread)
کد دقیق SQL پشت هر عدد
WITH
    opt_q AS (
        SELECT
            count() AS opt_updates,
            quantileDeterministic(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2), cityHash64(ticker, sip_timestamp)) AS opt_median_spread_ratio
        FROM global_markets.cache_options_quotes
        WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
          AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
          AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    ),
    stock_q AS (
        SELECT
            count() AS stock_updates,
            quantileDeterministic(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2), cityHash64(ticker, sip_timestamp)) AS stock_median_spread_ratio
        FROM global_markets.cache_stocks_quotes
        WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
          AND ticker = 'SPY'
          AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    ),
    opt_t AS (
        SELECT count() AS opt_trades FROM global_markets.options_trades
        WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
          AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
    ),
    stock_close AS (
        SELECT round(argMax(toFloat64(close), window_start), 2) AS spy_close
        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'
    )
SELECT
    '2026-07-02' AS session_date,
    opt_q.opt_updates AS spy_opt_updates,
    stock_q.stock_updates AS spy_stock_updates,
    round(opt_q.opt_updates / stock_q.stock_updates, 1) AS opt_to_stock_update_ratio,
    opt_t.opt_trades AS spy_opt_trades,
    round(opt_q.opt_updates / opt_t.opt_trades, 1) AS quotes_per_trade,
    round(opt_q.opt_median_spread_ratio * 10000, 2) AS spy_opt_median_spread_bps,
    round(stock_q.stock_median_spread_ratio * 10000, 2) AS spy_stock_median_spread_bps,
    round(opt_q.opt_median_spread_ratio / stock_q.stock_median_spread_ratio, 1) AS ratio_opt_to_stock_spread,
    stock_close.spy_close AS spy_underlying_close
FROM opt_q CROSS JOIN stock_q CROSS JOIN opt_t CROSS JOIN stock_close

میانه spread گزینه‌های SPY معادل 80.97 bps است؛ این بدان معناست که یک سفارش بازار رفت و برگشتی — خرید در قیمت ask و فروش در قیمت bid — در مقایسه با نقطه میانی، تقریباً تمام spread استعلام شده را از دست می‌دهد که حدود نصف آن در هر طرف معامله است. همین رفت و برگشت در سهام SPY تقریباً 0.27 bps هزینه دارد. حجم استعلام قیمت نیز از زاویه‌ای دیگر همان داستان نقدینگی را بازگو می‌کند: بازارگردان‌ها به ازای هر معامله انجام شده در گزینه‌های SPY، تعداد 256.5 به‌روزرسانی قیمت برای گزینه‌های SPY ثبت کردند که شامل قیمت‌گذاری مجدد هزاران ترکیب از قیمت توافقی و تاریخ انقضا به صورت لحظه‌ای بود.

توزیع spread در آپشن‌های SPY: تنها یک عدد نیست

میانگین می‌تواند مفید باشد، اما spreadی که یک معامله‌گر پرداخت می‌کند به نوع قرارداد بستگی دارد. آپشن‌های SPY در نزدیکی قیمت اجرا (near-the-money) و نزدیک به تاریخ انقضا، معمولاً کمترین میزان spread را دارند؛ در حالی که قراردادهای بسیار دور از قیمت اجرا (far out-of-the-money) و با تاریخ انقضای دور، می‌توانند بسیار گسترده‌تر باشند. جدول زیر توزیع کامل تمام قیمت‌های دوطرفه معتبر آپشن‌های SPY را در این جلسه معاملاتی نشان می‌دهد.

پرس‌وجوتوزیع quoted-spread در SPY options: صدک‌ها بر حسب basis points
کد دقیق SQL پشت هر عدد
WITH opts AS (
    SELECT
        (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps,
        cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
)
SELECT
    round(quantileDeterministic(0.10)(spread_bps, det), 2) AS p10_bps,
    round(quantileDeterministic(0.25)(spread_bps, det), 2) AS p25_bps,
    round(quantileDeterministic(0.50)(spread_bps, det), 2) AS median_bps,
    round(quantileDeterministic(0.75)(spread_bps, det), 2) AS p75_bps,
    round(quantileDeterministic(0.90)(spread_bps, det), 2) AS p90_bps,
    count() AS valid_two_sided_quotes
FROM opts

نیمی از قیمت‌های آپشن SPY در محدوده 49.65 bps تا 147.12 bps قرار داشتند. از هر ده قیمت، یکی کمتر از 35.51 bps و یکی بیشتر از 316.51 bps بود. بخش انتهایی و گسترده این توزیع، مربوط به استرایک‌های کم‌نقدش و تاریخ‌های انقضای دور است؛ یعنی دقیقاً همان قراردادهایی که یک خریدار عادی احتمالاً با آن‌ها مواجه می‌شود.

تفاوت هزینه‌ها در محصولات محبوب

SPY شاخص معیار است، اما تمامی محصولات آپشن دارای قیمت‌گذاری با اختلاف (spread) کم نیستند. جدول زیر میانه اختلاف قیمت نقل‌قول‌شده در ساعات عادی بازار را بر حسب واحد basis point برای پنج نماد پرمعامله آپشن اندازه‌گیری می‌کند: سه ETF شاخص (SPY, QQQ, IWM)، یک ETF طلا (GLD) و یک تک‌سهم با نقدینگی بالای آپشن (TSLA). هر نماد بر اساس محدوده تاریخ سررسید 2026 فیلتر شده است تا پرس‌وجو در ایندکس (ticker, sip_timestamp) بهینه شود؛ همچنین ردیف‌ها به ترتیب حروف الفبا مرتب شده‌اند تا جایگاه هر محصول ثابت بماند.

پرس‌وجوشکاف bid-ask اختیار معامله بر حسب محصول: میانه basis points، ۲ جولای ۲۰۲۶ ساعات عادی
کد دقیق SQL پشت هر عدد
SELECT
    root,
    round(count() / 1e6, 1) AS quote_updates_millions,
    round(quantileDeterministic(0.5)(spread_bps, det), 2) AS median_spread_bps,
    round(quantileDeterministic(0.5)(width_cents, det), 2) AS median_width_cents
FROM (
    SELECT 'SPY' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    UNION ALL
    SELECT 'QQQ' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:QQQ26' AND ticker < 'O:QQQ27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    UNION ALL
    SELECT 'IWM' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:IWM26' AND ticker < 'O:IWM27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    UNION ALL
    SELECT 'GLD' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:GLD26' AND ticker < 'O:GLD27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
    UNION ALL
    SELECT 'TSLA' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:TSLA26' AND ticker < 'O:TSLA27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
)
GROUP BY root
ORDER BY root ASC

ETFهای شاخص در پایین‌ترین سطح هزینه قرار دارند: SPY میانگین اختلاف قیمت 80.97 bps، QQQ برابر با 123.71 bps و IWM برابر با 130.72 bps را ثبت کردند. در سمت دیگر، آپشن‌های TSLA با 309.93 bps و آپشن‌های GLD با 786.75 bps قیمت‌گذاری شدند که نشان‌دهنده رژیم هزینه‌ای کاملاً متفاوتی است. ستون به‌روزرسانی قیمت‌ها (بر حسب میلیون) مکمل این داده‌ها است: محصولاتی که بیشترین حجم نقل‌قول را دارند، در پایین‌ترین سطح هزینه قرار گرفته‌اند.

اثر 0DTE و قراردادهای هفتگی: عمر کوتاه‌تر، اسپرد گسترده‌تر

قراردادهایی که زمان باقیمانده تا انقضای آن‌ها کمتر است، معمولاً با قیمت‌های دلاری پایین‌تری معامله می‌شوند. این امر باعث می‌شود حتی اگر اختلاف قیمت به سنت‌ها کوچک بماند، میزان اسپرد بر حسب basis points به صورت مکانیکی افزایش یابد. جدول زیر قیمت‌های گزینه‌های near-the-money مربوط به SPY (بازه قیمت 730 تا 760) را بر اساس تاریخ انقضا دسته‌بندی می‌کند؛ تمامی انقلاهای سال 2026 که حداقل یک میلیون به‌روزرسانی قیمت در این جلسه داشته‌اند، به ترتیب تقویمی آورده شده‌اند.

پرس‌وجومیانه شکاف SPY options بر حسب تاریخ سررسید، فقط در درک‌های near-the-money
کد دقیق SQL پشت هر عدد
WITH opts AS (
    SELECT
        toFloat64(ask_price) - toFloat64(bid_price) AS width,
        (toFloat64(ask_price) + toFloat64(bid_price)) / 2 AS mid,
        substring(ticker, -15, 6) AS expiry_code,
        toUInt32OrZero(substring(ticker, -8)) / 1000 AS strike,
        cityHash64(ticker, sip_timestamp) AS det
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
      AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
      AND strike BETWEEN 730 AND 760
)
SELECT
    expiry_code,
    round(count() / 1e6, 1) AS quote_updates_millions,
    round(quantileDeterministic(0.5)(width / mid * 10000, det), 2) AS median_spread_bps,
    round(quantileDeterministic(0.5)(width * 100, det), 2) AS median_width_cents
FROM opts
GROUP BY expiry_code
HAVING count() >= 1000000
ORDER BY expiry_code ASC

قرارداد همان روز — با کد انقضا 260702، یا همان 0DTE — میانگین اسپرد 113.64 bps را با میانگین عرض قیمت تنها 2 سنت نشان داد. طولانی‌ترین مدت انقضا در نمودار، یعنی 261231، با وجود داشتن اختلاف قیمت بیشتر بر حسب سنت (11)، اما از نظر basis points به طور قابل توجهی فشرده‌تر بود و 37.16 bps ثبت شد. این نکته، درس اصلی در مورد هزینه‌های معاملات گزینه‌ها است: وقتی قیمت خودِ گزینه تنها چند دلار باشد، یک اسپرد یک یا دو سنتی لزوماً ارزان محسوب نمی‌شود. گزینه‌های 0DTE چیست مکانیسم قراردادهای همان روز را توضیح می‌دهد.

داده‌های حجم معاملات نشان از چه چیزی درباره پرداخت‌کنندگان این هزینه‌ها دارند

معاملات اختیار معامله در قالب قرارداد انجام می‌شود و هر قرارداد استاندارد شامل 100 سهم است. میانه حجم معاملات انجام‌شده در اختیار معامله در 2026-07-02 تنها 1 قرارداد بود؛ حتی داده‌های مربوط به صدک نودمی نیز تنها 10 قرارداد را نشان دادند. بیشتر معاملات اختیار معامله کوچک هستند و معامله‌گران خرد بیشترین میزان مواجهه با spread اعلام‌شده را دارند؛ یک سفارش بزرگ نهادی اغلب می‌تواند برای بهبود قیمت مذاکره کند یا خود را در بازه‌های زمانی مختلف تقسیم نماید.

پرس‌وجوتوزیع اندازه معاملات اختیار معامله در ۲ جولای ۲۰۲۶ (تعداد قراردادها در هر print)
کد دقیق SQL پشت هر عدد
WITH trades AS (
    SELECT toFloat64(size) AS size FROM global_markets.options_trades
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
)
SELECT
    round(quantileExact(0.50)(size), 0) AS median_contracts,
    round(quantileExact(0.90)(size), 0) AS p90_contracts,
    round(avg(size), 1) AS avg_contracts,
    count() AS total_prints
FROM trades

سوالات متداول

آیا هزینه معاملات آپشن بیشتر از سهام است؟

معمولاً بله، اگر هزینه را نسبت به قیمت معامله شده محاسبه کنیم. یک ETF بسیار نقدشونده مانند SPY، شکاف قیمتی (spread) بسیار کمی (کمتر از یک basis point) نسبت به خود سهم دارد؛ اما آپشن‌های همان دارایی پایه، معمولاً ده‌ها basis point هزینه دارند. مبلغ دلاری به قیمت آپشن و تعداد قراردادها بستگی دارد، اما شکاف قیمتی به عنوان درصدی از ارزش آپشن، تقریباً همیشه بزرگتر از شکاف قیمتی سهام است.

چرا شکاف قیمتی آپشن‌های 0DTE از نظر basis point بسیار زیاد است؟

آپشن‌های همان روز و هفتگی اغلب در نزدیکی پایان عمر خود، با قیمت‌های دلاری پایین — گاهی زیر 1.00 دلار — معامله می‌شوند. یک شکاف قیمتی یک یا دو سنتی برای آپشنی با قیمت 0.50 دلار، معادل 2 تا 4 درصد قیمت، یا 200 تا 400 bps است. مقادیر کوچک در واحد سنت به نظر ناچیز می‌آیند، اما هزینه درصدی آن‌ها بزرگ است. به همین دلیل است که معامله‌گران شکاف‌های قیمتی را بر حسب basis point مقایسه می‌کنند، نه بر حسب سنت.

آیا کمیسیون‌ها اهمیت بیشتری نسبت به شکاف قیمتی دارند؟

در معاملات خرد برای یک لوت واحد، معمولاً شکاف قیمتی نقش اصلی را ایفا می‌کند. یک قیمت پیشنهادی 1.00 / 1.05 دلار، پیش از اعمال هرگونه کمیسیون، در یک معامله رفت و برگشت کامل (100 سهم در هر قرارداد)، 5.00 دلار هزینه دارد. در محصولات با قیمت پایین یا شکاف قیمتی زیاد، تنها شکاف قیمتی می‌تواند از هر کمیسیون منطقی‌ای فراتر رود.

آیا می‌توان با استفاده از سفارش‌های limit از شکاف قیمتی اجتناب کرد؟

یک سفارش limit در محدوده شکاف قیمتی می‌تواند با هزینه‌ای کمتر از کل شکاف قیمتی اجرا شود، اما اجرای آن تضمین شده نیست. یک سفارش marketable طبق تعریف، هزینه شکاف قیمتی را پرداخت می‌کند. شکاف قیمتی در واقع هزینه سرعت در معامله است، نه کارمزدی که کارگزار شما دریافت می‌کند.

کدام محصولات آپشن کمترین شکاف قیمتی را دارند؟

بر اساس اندازه‌گیری‌های این صفحه، ETFهای شاخص بزرگ — شامل SPY، QQQ و IWM — کمترین میانگین‌های قیمتی را دارند و حجم معاملات بالایی نیز دارند. ETFهای کالا (GLD) و آپشن‌های تک‌سهم می‌توانند شکاف‌های بسیار بزرگتری داشته باشند. شکاف قیمتی برای هر قرارداد متفاوت است — با وجود دارایی پایه یکسان، قیمت‌های اعمال و تاریخ انقضای متفاوت — بنابراین یک میانگین واحد، تفاوت‌های بسیار زیادی را پنهان می‌کند.

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

تمامی زمان‌بندی‌ها بر اساس UTC ذخیره شده‌اند؛ ساعات معاملاتی عادی در 2 جولای 2026 به صورت sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00' (9:30 صبح تا 4:00 عصر ET) فیلتر شده‌اند. آمار spread تنها از قیمت‌های معتبر دوطرفه (bid_price > 0، ask_price > 0، ask_price > bid_price) استفاده می‌کند، قیمت‌های Decimal پیش از تقسیم بر Float64 تبدیل می‌شوند و از تخمین‌گرهای میانه قطعی (quantileDeterministic، مبتنی بر هشِ ticker و timestamp) استفاده می‌شود تا بازسازی داده‌ها منجر به اعداد یکسان شود. آمار زیر شامل تمامی سوابق SPY-options در بازه زمانی مذکور است و نشان می‌دهد که قیمت‌های معتبر دوطرفه چه سهمی از کل داده‌های خام دارند.

آمار کیفیت قیمت و متدولوژی کامل
پرس‌وجوکیفیت استعلام SPY options: سوابق معتبر، یک‌طرفه و locked/crossed
کد دقیق SQL پشت هر عدد
WITH opts AS (
    SELECT
        bid_price,
        ask_price
    FROM global_markets.cache_options_quotes
    WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
      AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
)
SELECT
    count() AS total_updates,
    countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) AS valid_two_sided,
    round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) / count(), 2) AS valid_pct,
    countIf(bid_price = 0 OR ask_price = 0) AS one_sided,
    round(100.0 * countIf(bid_price = 0 OR ask_price = 0) / count(), 2) AS one_sided_pct,
    countIf(bid_price > 0 AND ask_price > 0 AND ask_price <= bid_price) AS locked_or_crossed,
    round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price <= bid_price) / count(), 2) AS locked_or_crossed_pct
FROM opts

بیش از 99.94% از سوابق قیمت‌های اختیار معامله SPY در این جلسه، قیمت‌های معتبر دوطرفه بودند؛ سوابق یک‌طرفه 0.06% از کل داده‌ها را تشکیل می‌دادند و سوابق قفل‌شده یا متقاطع (locked or crossed) ناچیز بودند. تمام اعداد مربوط به spread در بالا، بر اساس زیرمجموعه معتبر دوطرفه محاسبه شده‌اند؛ یعنی هزینه‌ای که یک معامله‌گر واقعاً می‌تواند در NBBO مشاهده کند.

  • منبع داده‌های بازار: نوار قیمت‌های اختیار معامله به سبک OPRA (global_markets.cache_options_quotes)، نوار قیمت‌های سهام مربوطه، و نوار معاملات اختیار معامله (global_markets.options_trades؛ پنل حجم معاملات به طور عمدی کل نوار را پوشش می‌دهد، نه فقط SPY).
  • فرمت ticker در OCC: O: + root + تاریخ انقضای شش‌رقمی (YYMMDD) + C/P + قیمت توافقی هفت‌رقمی ×1000. پنل 0DTE تاریخ انقضا و قیمت توافقی را از ticker استخراج می‌کند؛ محاسبات spread، کال‌ها و پوت‌ها را با هم ادغام می‌کند. فیلتر هر root، محدوده انقضای سال 2026 آن را (O:SPY26..O:SPY27 و موارد مشابه) پوشش می‌دهد که باعث می‌شود هر اسکن بر اساس ایندکس (ticker, sip_timestamp) بهینه باقی بماند.
  • تعریف spread: (ask − bid) / midpoint × 10,000، بر حسب basis points، تنها بر روی قیمت‌های معتبر دوطرفه.
  • میانه و صدک‌ها: تخمین‌گرهای ذخیره‌ای quantileDeterministic مبتنی بر cityHash64(ticker, sip_timestamp) — با حافظه محدود و خروجی یکسان در هر بار بازسازی.
  • قیمت بسته‌شدن دارایی پایه: آخرین میله‌کارت (minute bar) ساعات معاملاتی عادی از delayed_stocks_minute_aggs.
  • بازه زمانی جلسه: 13:30 تا 20:00 UTC، که بر اساس میله‌کارت‌های مشاهده شده SPY بررسی شده است و نه محاسبات تقویمی.
  • جلسه ثبت‌شده: 2 جولای 2026 — یک جلسه کامل و تکمیل شده که در زمان نگارش (9 جولای 2026)، با تأخیر ورود داده‌های انبار حدود 1 تا 2 روز فاصله دارد. تاریخ‌ها ثابت هستند، بنابراین بازسازی داده‌ها همان اعداد را تکرار می‌کند.

آیا می‌خواهید هزینه یک قرارداد خاص را بدانید؟ هر پنل در بالا یک پرس‌وجوی ذخیره‌شده است؛ آن‌ها یا نسخه‌های شخصی خود را در ترمینال Strasmore اجرا کنید. برای اطلاعات بیشتر در مورد مکانیسم‌ها، این موارد را ببینید: هزینه معامله سهام، تفاوت قیمت خرید و فروش چیست، اختیار معامله‌های 0DTE، حجم فید قیمت‌های اختیار معامله، و حجم معاملات اختیار معامله در مقابل بازه باز (open interest).