Strasmore Research
Навчання Matt ConnorВід Matt Connor · Оновлено 2026-07-24

Скільки коштує торгівля опціонами

Комісії на опціони можуть бути нульовими, але існує bid-ask spread. Дізнайтеся медіанну вартість торгівлі опціонами SPY, QQQ, IWM, GLD та TSLA у basis points.

Комісії за лістингові опціони у більшості брокерів становлять нуль, проте за кожне ринкове замовлення на опціони все одно сплачується bid-ask spread — різниця між найкращою ціною покупця та найкращою ціною продавця. Опціони зазвичай торгуються за значно нижчими цінами, ніж акції, на які вони посилаються, тому той самий розрив у кілька центів становить набагато більшу частку угоди. У 2026-07-02 медіанний spread на опціони SPY (кожен контракт з датою експірації у червень 2026) становив 80.97 basis points під час звичайних торгових сесій, тоді як для самих акцій SPY він становив 0.27 bps — розрив приблизно у 299.9× разів. Кожне наведене нижче значення розраховане на основі консолідованих котирувань та даних про угоди з опціонами, а точний SQL-запит для кожного показника додається.

Чому спреди опціонів відрізняються від спредів на акції

Розглянемо акцію з котировками $745.00 bid / $745.02 ask. Спред у два центи становить приблизно 0.27 bps від ціни акції. Колл-опціон «at-the-money» на ту саму акцію може мати котировки $7.20 bid / $7.30 ask — спред у десять центів, що становить приблизно 138 bps від середньої ціни $7.25. У центовому еквіваленті спред опціону ширший, а у відсотковому співвідношенні до фактично сплаченої ціни він у сотні разів більший. Низька ціна опціону у доларах визначає цей механізм: десять центів — це мала сума в абсолютних показниках, але великий відсоток від ціни контракту у $7.25.

Професійною одиницею для порівняння витрат між різними інструментами є basis point (bp) — одна сота від одного відсотка. Стандартний опціонний контракт покриває 100 акцій базового активу, тому грошовий результат угоди масштабується відповідно до базового активу, але спред вимірюється відносно власної котируваної ціни опціону. Саме цю одиницю використовується на цій сторінці.

Опціони SPY проти акцій SPY: порівняльний аналіз

SPY є найбільш ліквідним опційним продуктом у США, проте навіть там розрив у вартості є значним. У наведеній нижче таблиці наведено порівняння опціонів SPY та акцій SPY за одну торгову сесію: обсяг котирувань, кількість виконаних угод та медіанний спред котирувань для кожного інструменту.

ЗапитОпціони SPY проти акцій SPY за одну сесію: кількість котирувань, кількість угод та медіана спреду
Точний 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

Медіанний спред на опціони SPY у розмірі 80.97 bps означає, що ринковий ордер у дві сторони — купівля за ціною ask і подальший продаж за ціною bid — призводить до втрати приблизно всього котируваного спреду відносно середньої ціни (midpoint), тобто приблизно половини з кожного боку угоди. Такий самий цикл у акціях SPY призводить до втрати приблизно 0.27 bps. Обсяг котирувань підтверджує той самий рівень ліквідності з іншого ракурсу: маркетмейкери надали 256.5 оновлень котирувань на опціони SPY на кожну виконану угоду з опціонами SPY, переоцінюючи тисячі комбінацій ціни виконання та дати експірації крок за кроком.

Розподіл спреду опціонів SPY: це не одне число

Медіана є корисним показником, але спред, який сплачує окремий трейдер, залежить від конкретного контракту. Опціони SPY на рівні near-the-money з датою експірації, що наближається, зазвичай мають найвужчий спред; контракти far out-of-the-money та з далекою датою експірації можуть мати значно ширші спреди. Наведені нижче дані демонструють повний розподіл за всіма дійсними двосторонніми котируваннями опціонів SPY протягом сесії.

ЗапитРозподіл котируваного спреду SPY options: перцентилі в базисних пунктах
Точний 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 є бенчмарком, але не всі опційні продукти мають такі вузькі котирування. Наведена нижче панель вимірює медіанний спред у межах регулярних торгових годин у базисних пунктах для п'яти широко торгуваних опційних активів: трьох індексних ETF (SPY, QQQ, IWM), одного золотого ETF (GLD) та однієї акції з високою ліквідністю опціонів (TSLA). Для кожного активу застосовано фільтр за діапазоном тикерів з датою експірації у 2026 році, щоб запит відсікав індекс (ticker, sip_timestamp); рядки розташовані за алфавітом, щоб кожен продукт мав фікзовану позицію.

ЗапитСпреди bid-ask опціонів за інструментами: медіана в базисних пунктах, липень 2, 2026 регулярні години
Точний 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, для QQQ123.71 bps, а для IWM130.72 bps. У сегменті з широкими спредами опціони TSLA мали котирування 309.93 bps, а опціони GLD786.75 bps, що свідчить про зовсім інший режим витрат. Стовпець оновлення котирувань (у мільйонах) доповнює картину: продукти з найбільшим обсягом котирувань мають найвузьчі спреди.

Ефект 0DTE та тижневих контрактів: коротший термін, ширший spread

Контракти з меншим залишковим терміном експірації зазвичай торгуються за нижчими цінами в доларах. Це механічно збільшує spread у базисних пунктах, навіть якщо різниця у центах залишається невеликою. Наведені нижче дані групують котирування опціонів SPY «біля грошей» (страйки 730–760) за датою експірації — кожен термін експірації 2026 року, що мав принаймні один мільйон оновлень котирувань за сесію, представлений у хронологічному порядку.

ЗапитМедіана спреду SPY options за датою експірації, лише strikes 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 — продемонстрував медіанний spread у 113.64 bps при медіанній ширині лише 2 центів. Найдовший термін експірації після стержня, 261231, мав ширший spread у центах (11), але суттєво вужчий у базисних пунктах — 37.16 bps. Це основний принцип вартості торгівлі опціонами: spread у один або два центи не є автоматично дешевим, якщо сам опціон торгується за кілька доларів. Що таке опціони 0DTE пояснює механіку контрактів з експірацією в той самий день.

Що дані про обсяг торгів свідчать про тих, хто сплачує ці витрати

Торгівля опціонами здійснюється контрактами, і один стандартний контракт охоплює 100 акцій. Медіанний обсяг виконаного опціонного контракту у 2026-07-02 складав лише 1 контракт; навіть показник 90-го процентиля становив лише 10 контрактів. Більшість опціонних угод є невеликими, тому саме роздрібний трейдер найбільше піддається впливу котируваного спреду — велике інституційне замовлення часто може отримати кращу ціну або бути розділеним у часі.

ЗапитРозподіл розміру угод опціонів на липень 2, 2026 (кількість контрактів на один принт)
Точний 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

FAQ

Чи торгівля опціонами дорожча за торгівлю акціями?

Зазвичай так, якщо вимірювати вартість як частку від ціни угоди. Високоліквідний ETF, як-от SPY, має котируваний spread значно менше одного базисного пункту від ціни самої акції; опціони на той самий базовий актив зазвичай коштують десятки базисних пунктів. Сума в доларах залежить від ціни опціону та кількості контрактів, але spread у відсотковому співвідношенні до вартості опціону майже завжди більший, ніж у акції.

Чому у опціонів 0DTE такі широкі спреди в базисних пунктах?

Ті ж самі дні та щотижневі опціони часто торгуються за низькими цінами в доларах — іноді менше ніж за $1.00 — наприкінці терміну їхнього дії. Спред у один або два центи для опціону ціною $0.50 становить 2–4% від ціни, або 200–400 bps. Центи здаються незначними, але відсоткова вартість — ні. Саме тому трейдери порівнюють спреди в базисних пунктах, а не в центах.

Чи мають комісії більше значення, ніж спред?

Для роздрібної угоди одним лотом спред зазвичай є визначальним. Котировка $1.00 / $1.05 коштує $5.00 за контракт за повний цикл (100 акцій на контракт) ще до нарахування будь-якої комісії. Для продуктів з низькою ціною або широким спредом один лише спред може перевищувати будь-яку ймовірну комісію.

Чи можу я уникнути спреду, використовуючи лімітні ордери?

Лімітний ордер всередині спреду може бути виконаний за ціною меншою за повний спред, але виконання не гарантується. Ринковий ордер за визначенням оплачує спред. Спред — це ціна миттєвого виконання, а не комісія, яку стягує ваш брокер.

Які опціонні продукти мають найвужчі спреди?

Згідно з вимірюваннями на цій сторінці, великі індексні 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 am–4:00 pm ET). Статистика спреду використовує лише дійсні двосторонні котирування (bid_price > 0, ask_price > 0, ask_price > bid_price), переводить ціни Decimal у Float64 перед діленням і використовує детерміновані медіанні оцінки (quantileDeterministic, прив'язані до хешу тікера та часової мітки), щоб повторне генерування видавало ідентичні показники. Наведений нижче перепис підраховує кожен запис опціонів SPY у вікні та показує, яку частку сирого потоку даних становлять ці дійсні двосторонні котирування.

Перепис якості котирувань та повна методологія
ЗапитЯкість котирувань 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% потоку, а заблоковані або перехресні записи були незначними. Кожне число спреду вище обчислюється на дійсній двосторонній підмножині — це вартість, яку трейдер міг фактично спостерігати в NBBO.

  • Джерело ринкових даних: консолідована стрічка котирувань опціонів у стилі OPRA (global_markets.cache_options_quotes), відповідна стрічка котирувань акцій та консолідована стрічка угод по опціонах (global_markets.options_trades; панель розміру угод навмисно охоплює всю стрічку, а не лише SPY).
  • Формат тікера OCC: O: + корінь + шестизначна дата експірації (YYMMDD) + C/P + семизначний страйк ×1000. Панель 0DTE розпізнає дату експірації та страйк із тікера; розрахунки спреду агрегують колл- та пут-опціони разом. Фільтр кожного кореня охоплює його діапазон експірації 2026 року (O:SPY26..O:SPY27 та еквіваленти), що дозволяє оптимізувати кожен скан за індексом (ticker, sip_timestamp).
  • Визначення спреду: (ask − bid) / midpoint × 10,000 у базисних пунктах лише для дійсних двосторонніх котирувань.
  • Медіани та перцентилі: резервуарні оцінки quantileDeterministic, прив'язані до cityHash64(ticker, sip_timestamp) — обмежений обсяг пам'яті та ідентичний результат при кожному повторному генеруванні.
  • Закриття базового активу: остання хвилинна свічка в межах регулярних годин від delayed_stocks_minute_aggs.
  • Вікно сесії: 13:30–20:00 UTC, перевірено за спостережуваними хвилинними свічками SPY, а не за календарною арифметикою.
  • Зафіксована сесія: 2 липня 2026 року — повна завершена сесія, що за часом створення (9 липня 2026 року) знаходиться поза межами ~1–2 денної затримки завантаження сховища. Дати є фіксованими, тому повторне генерування відтворює ті самі показники.

Цікаво, скільки коштує конкретний контракт? Кожна панель вище — це збережений запит; запустіть їх або власну варіацію на терміналі Strasmore. Щоб дізнатися більше про механіку, перегляньте вартість торгівлі акціями, що таке спред bid-ask, опціони 0DTE, обсяг потоку котирувань опціонів та обсяг опціонів порівняно з відкритим інтересом.