/api/sd/options/expiries
GETДеградацияSTALE

Опционы по датам экспирации

По одной строке на каждую дату экспирации: открытый интерес, объём, соотношение пут/колл, макс. боль, ATM IV и перекос — по всем площадкам или по одной.

GET/api/sd/options/expiries
Деградация. Эндпоинт сообщает качество данных STALE

Запрос

Параметры запроса

ИмяТипОбязательныйПо умолчаниюДопустимые значенияОписание
coinstringОбязательный——Символ монеты без учёта регистра (например, `BTC`). При отсутствии или некорректном значении возвращается 400. Пример: BTC
exchangestringНеобязательныйallall, deribit, binance, bybit, okx, gate, coincallОдна площадка либо `all` для агрегата по всем площадкам.

Пример запроса

curl -s "https://www.coinboss.com/api/sd/options/expiries?coin=BTC"

Поля ответа

Таблица полей формируется из реальных ответов, поэтому в ней перечислено ровно то, что возвращает эндпоинт. В путях a[] обозначает элементы массива, а {*} — объекты с динамическим ключом, например монетой или биржей.

ПолеТипЕдиницаОписание
successboolean—true, если запрос выполнен успешно. При ошибке тело ответа имеет вид `{ success: false, code, error, request_id }`.
schemastring—Идентификатор схемы этого ответа. Меняется только тогда, когда у существующего поля меняется смысл или тип.
nownumbermsВремя сервера в момент формирования ответа.
coinstring—Символ монеты (в верхнем регистре).
exchangestring—Идентификатор биржи (в нижнем регистре).
n_expiriesnumber—Число учтённых дат экспирации.
n_contractsnumber—Число учтённых опционных контрактов.
oi_usdnumberUSDОткрытый интерес как номинал в USD: количество монет × спотовая индексная цена. Односторонний.
call_oi_usdnumberUSDОткрытый интерес по коллам, номинал в USD.
put_oi_usdnumberUSDОткрытый интерес по путам, номинал в USD.
oi_coinnumbercoinОткрытый интерес в единицах базовой монеты.
call_oi_coinnumbercoinОткрытый интерес по коллам в единицах базовой монеты.
put_oi_coinnumbercoinОткрытый интерес по путам в единицах базовой монеты.
vol_usd_24hnumberUSDНоминальный объём за 24h: проторгованное количество монет × текущая спотовая индексная цена. Не является оборотом по премии.
call_vol_usd_24hnumberUSDНоминальный объём коллов за 24h.
put_vol_usd_24hnumberUSDНоминальный объём путов за 24h.
vol_coin_24hnumbercoinКоличество, проторгованное за 24h, в единицах базовой монеты.
call_vol_coin_24hnumbercoinКоличество коллов, проторгованное за 24h, в монетах.
put_vol_coin_24hnumbercoinКоличество путов, проторгованное за 24h, в монетах.
vol_premium_usd_24hnumberUSDОборот по премии за 24h (цена опциона × количество), если площадка его публикует; в остальных случаях `null`. Никогда не суммируется с номинальным объёмом.
pcr_oinumberratioОткрытый интерес по путам ÷ открытый интерес по коллам, в единицах монеты; `null`, если сторона коллов равна 0.
pcr_volnumberratioОбъём путов за 24h ÷ объём коллов за 24h, в единицах монеты; `null`, если сторона коллов равна 0.
atm_iv_30dnumber%ATM IV, линейно интерполированная к постоянному сроку 30 дней; `null`, если 30 дней не попадают между двумя датами экспирации.
expiriesarray—Одна строка на дату экспирации.
expiries[]object—Одна строка на дату экспирации.
expiries[].expirystring—Дата экспирации (UTC), `YYYY-MM-DD`, или `all`.
expiries[].expiry_tsnumbermsВремя экспирации.
expiries[].days_leftnumberdaysЧисло дней до экспирации.
expiries[].exchangesarray—Площадки, учтённые в этой строке.
expiries[].exchanges[]string—Площадки, учтённые в этой строке.
expiries[].n_contractsnumber—Число учтённых опционных контрактов.
expiries[].oi_usdnumberUSDОткрытый интерес как номинал в USD: количество монет × спотовая индексная цена. Односторонний.
expiries[].call_oi_usdnumberUSDОткрытый интерес по коллам, номинал в USD.
expiries[].put_oi_usdnumberUSDОткрытый интерес по путам, номинал в USD.
expiries[].oi_coinnumbercoinОткрытый интерес в единицах базовой монеты.
expiries[].call_oi_coinnumbercoinОткрытый интерес по коллам в единицах базовой монеты.
expiries[].put_oi_coinnumbercoinОткрытый интерес по путам в единицах базовой монеты.
expiries[].vol_usd_24hnumberUSDНоминальный объём за 24h: проторгованное количество монет × текущая спотовая индексная цена. Не является оборотом по премии.
expiries[].call_vol_usd_24hnumberUSDНоминальный объём коллов за 24h.
expiries[].put_vol_usd_24hnumberUSDНоминальный объём путов за 24h.
expiries[].vol_coin_24hnumbercoinКоличество, проторгованное за 24h, в единицах базовой монеты.
expiries[].call_vol_coin_24hnumbercoinКоличество коллов, проторгованное за 24h, в монетах.
expiries[].put_vol_coin_24hnumbercoinКоличество путов, проторгованное за 24h, в монетах.
expiries[].vol_premium_usd_24hnumber|nullUSDОборот по премии за 24h (цена опциона × количество), если площадка его публикует; в остальных случаях `null`. Никогда не суммируется с номинальным объёмом.
expiries[].pcr_oinumberratioОткрытый интерес по путам ÷ открытый интерес по коллам, в единицах монеты; `null`, если сторона коллов равна 0.
expiries[].pcr_volnumberratioОбъём путов за 24h ÷ объём коллов за 24h, в единицах монеты; `null`, если сторона коллов равна 0.
expiries[].oi_share_pctnumber%Доля в общем открытом интересе (номинал в USD) выборки.
expiries[].max_painnumberUSDСтрайк, при котором суммарная выплата держателям опционов на экспирации минимальна.
expiries[].max_pain_usdnumberUSDСуммарная выплата держателям опционов, если расчёт на экспирации пройдёт по страйку макс. боли.
expiries[].atm_ivnumber%Подразумеваемая волатильность на деньгах: средняя IV по цене маркировки на страйке, ближайшем к форвардной цене.
expiries[].atm_strikenumberUSDСтрайк, ближайший к форвардной цене; используется для ATM IV.
expiries[].skew_25dnumber|nullpercentage pointsIV пута с дельтой, ближайшей к −0.25, минус IV колла с дельтой, ближайшей к +0.25. Только дельты, публикуемые площадками.
expiries[].skew_exchangesarray—Площадки, дельты которых были доступны для расчёта перекоса.
expiries[].skew_exchanges[]string—Площадки, дельты которых были доступны для расчёта перекоса.
expiries[].index_pricenumberUSDСпотовая индексная цена, используемая для пересчёта в USD (в агрегатах — медиана собственных индексных цен площадок).
expiries[].underlying_pricenumber|nullUSDФорвардная цена / цена базового актива, публикуемая площадкой для этой даты экспирации.
expiries[].by_exchange_ivarray—ATM IV этой даты экспирации по площадкам.
expiries[].by_exchange_iv[]object—ATM IV этой даты экспирации по площадкам.
expiries[].by_exchange_iv[].exchangestring—Идентификатор биржи (в нижнем регистре).
expiries[].by_exchange_iv[].atm_ivnumber%Подразумеваемая волатильность на деньгах: средняя IV по цене маркировки на страйке, ближайшем к форвардной цене.
expiries[].by_exchange_iv[].atm_strikenumberUSDСтрайк, ближайший к форвардной цене; используется для ATM IV.
expiries[].by_exchange_iv[].ref_pricenumberUSDФорвардная цена, относительно которой выбран страйк ATM площадки.
expiries[].by_exchange_iv[].skew_25dnumber|nullpercentage pointsIV пута с дельтой, ближайшей к −0.25, минус IV колла с дельтой, ближайшей к +0.25. Только дельты, публикуемые площадками.
expiries[].by_exchange_iv[].oi_usdnumberUSDОткрытый интерес как номинал в USD: количество монет × спотовая индексная цена. Односторонний.
coverageobject—Что входит и что не входит в эти значения. Сверьтесь с этим блоком, прежде чем сравнивать итоги с другим источником.
coverage.included_exchangesarray—Источники, актуальные данные которых учтены.
coverage.included_exchanges[]string—Источники, актуальные данные которых учтены.
coverage.unavailablearray—Источники, которые не удалось включить, с указанием причины для каждого. Они никогда не учитываются как 0.
coverage.unavailable[]object—Источники, которые не удалось включить, с указанием причины для каждого. Они никогда не учитываются как 0.
coverage.unavailable[].exchangestring—Идентификатор биржи (в нижнем регистре).
coverage.unavailable[].reasonstring—Машиночитаемый код причины.
coverage.unavailable[].detailstring—Понятное человеку объяснение причины.
coverage.stale_excludedarray—Строки, не учтённые потому, что их последнее обновление выходит за окно актуальности. пусто в образцах, по которым построена таблица
coverage.field_gapsarray—Столбцы, которые площадка не публикует; для этой площадки они равны `null`.
coverage.field_gaps[]object—Столбцы, которые площадка не публикует; для этой площадки они равны `null`.
coverage.field_gaps[].exchangestring—Идентификатор биржи (в нижнем регистре).
coverage.field_gaps[].fieldsarray—Названия отсутствующих столбцов.
coverage.field_gaps[].fields[]string—Названия отсутствующих столбцов.
coverage.field_gaps[].kindstring—Семейство контрактов: `inverse` (с расчётами в монете) или `linear` (с расчётами в стейблкоине).
methodobject—Текстовое описание формул, использованных для этого ответа, по одной записи на поле.
method.oi_usdstring—Пояснение к формуле для `oi_usd`, обычный текст.
method.vol_usd_24hstring—Пояснение к формуле для `vol_usd_24h`, обычный текст.
method.vol_premium_usd_24hstring—Пояснение к формуле для `vol_premium_usd_24h`, обычный текст.
method.pcr_oistring—Пояснение к формуле для `pcr_oi`, обычный текст.
method.pcr_volstring—Пояснение к формуле для `pcr_vol`, обычный текст.
method.max_painstring—Пояснение к формуле для `max_pain`, обычный текст.
method.atm_ivstring—Пояснение к формуле для `atm_iv`, обычный текст.
method.atm_iv_30dstring—Пояснение к формуле для `atm_iv_30d`, обычный текст.
method.skew_25dstring—Пояснение к формуле для `skew_25d`, обычный текст.
method.expirystring—Пояснение к формуле для `expiry`, обычный текст.
method.oi_share_pctstring—Пояснение к формуле для `oi_share_pct`, обычный текст.
metaobject—Происхождение данных и актуальность этого ответа.
meta.schemastring—Идентификатор схемы этого ответа. Меняется только тогда, когда у существующего поля меняется смысл или тип.
meta.sourcearray—Публичные эндпоинты источников, из которых собраны данные.
meta.source[]object—Публичные эндпоинты источников, из которых собраны данные.
meta.source[].exchangestring—Идентификатор биржи (в нижнем регистре).
meta.source[].endpointstring—Публичный эндпоинт источника, который читает коллектор (показан для сведений о происхождении данных; клиенты его не вызывают).
meta.observed_atnumbermsМетка времени, указанная источником для данных.
meta.received_atnumbermsВремя получения данных коллектором CoinBoss.
meta.fetched_atnumbermsВремя формирования этого ответа.
meta.windowstring—Временное окно, которое охватывают значения.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN или UNAVAILABLE — оценка по меткам времени данных и покрытию.
meta.is_staleboolean—True, если данные старше своего окна актуальности.
meta.cache_ttl_snumbersВремя жизни кеша этого ответа.
meta.fallbackstring—Что возвращает эндпоинт при сбое коллектора или источника.

Сформировано 2026-11-11 23:00 UTC; использовано реальных ответов: 3.

Пример ответа

/api/sd/options/expiries?coin=BTC · Реальный ответ, получен 2026-11-13 03:58:20 UTC. Длинные массивы и словари сокращены для отображения: expiries: элементов было 12; meta.source: элементов было 6; coverage.field_gaps: элементов было 4; coverage.unavailable: элементов было 12; coverage.stale_included: элементов было 6; expiries[].by_exchange_iv: элементов было 6.

  • {
    • "success": true,
    • "schema": "coinboss.sd.options/1",
    • "now": 1794542300391,
    • "coin": "BTC",
    • "exchange": "all",
    • "n_expiries": 12,
    • "n_contracts": 5792,
    • "oi_usd": 32670143083.84,
    • "call_oi_usd": 18276964561.96,
    • "put_oi_usd": 14393178521.88,
    • "oi_coin": 457419.65,
    • "call_oi_coin": 255899.54,
    • "put_oi_coin": 201520.11,
    • "vol_usd_24h": 4295495191.7,
    • "call_vol_usd_24h": 2031780368.24,
    • "put_vol_usd_24h": 2263714823.46,
    • "vol_coin_24h": 60122.56,
    • "call_vol_coin_24h": 28436.77,
    • "put_vol_coin_24h": 31685.79,
    • "vol_premium_usd_24h": 34033631.12,
    • "pcr_oi": 0.7875,
    • "pcr_vol": 1.1143,
    • "atm_iv_30d": 37.2,
    • "expiries": [
      • { … 30 },
      • { … 30 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 6 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": [],
      • "field_gaps": [ … 2 ],
      • "stale_included": [ … 2 ]
      },
    • "method": {
      • "oi_usd": "sum over contracts of oi_coin x that exchange's spot index price (USDT/USDC treated 1:1 as USD); oi_coin is open interest in units of the underlying coin after …",
      • "vol_usd_24h": "NOTIONAL 24h volume = sum of vol_coin (24h traded quantity in underlying coin) x the exchange's CURRENT spot index price; not premium turnover. Binance statisti…",
      • "vol_premium_usd_24h": "PREMIUM turnover (option price x quantity) as reported by the exchange: Deribit volume_usd, Binance amount, Gate sum(|size| x multiplier x price) from the 24h t…",
      • "pcr_oi": "put open interest / call open interest, both in underlying-coin units; null when call side is 0 or missing",
      • "pcr_vol": "put 24h volume / call 24h volume, both in underlying-coin units; null when call side is 0 or missing",
      • "max_pain": "per expiry: settlement price S among strikes with OI>0 minimizing pain_usd(S) = sum_calls oi_coin x max(S-K,0) + sum_puts oi_coin x max(K-S,0); ties take the lo…",
      • "atm_iv": "per exchange and expiry: reference price F = median of the exchange-published forward/underlying price of that expiry (the exchange index price where no forward…",
      • "atm_iv_30d": "30-day constant-maturity ATM IV: linear interpolation in days between the two expiries bracketing 30 days; null when 30 days is not bracketed",
      • "skew_25d": "IV(put with delta closest to -0.25, within +-0.10) - IV(call with delta closest to +0.25, within +-0.10), in percentage points, using exchange-published deltas …",
      • "expiry": "UTC date of the expiry timestamp (all integrated exchanges expire at 08:00 UTC); contracts from different exchanges with the same UTC expiry date are merged",
      • "oi_share_pct": "expiry oi_usd / total oi_usd of this response x 100"
      },
    • "meta": {
      • "schema": "coinboss.sd.options/1",
      • "source": [ … 2 ],
      • "observed_at": 1794522472654,
      • "received_at": 1794522473814,
      • "fetched_at": 1794542300391,
      • "window": "latest",
      • "quality": "STALE",
      • "is_stale": true,
      • "cache_ttl_s": 60,
      • "fallback": "on collector failure the last stored rows are served: an exchange whose newest batch is older than 25 min (collector cycle is 10 min) is excluded from totals (l…"
      }
    }

Проверенные образцы

Помимо примера выше, автопроверка вызывает этот эндпоинт с указанными параметрами и каждый раз сверяет схему.

ПараметрыHTTPЗадержкаРезультат
coin=ETH&exchange=deribit20046 msПройдено STALE
coin=SOL20022 msПройдено STALE
coin=BTC&exchange=nope4001 msПройдено возвращает ожидаемую ошибку

Проверено: 2026-11-13 03:58:20 UTC

Сведения

Аутентификация
Не требуется. Публичный эндпоинт.
Лимит запросов
1200 запросов в минуту на один IP
Серверный кеш
60s
Пограничный микрокеш
10s
Частота обновления
Цикл коллектора — каждые 10 минут; площадка считается актуальной в течение 25 минут после последнего успешного цикла.
Окно
Последний снимок по каждой дате экспирации; поля объёма охватывают последние 24 часа.
Источники данных
Публичные REST-эндпоинты опционов Deribit, Binance, Bybit, OKX, Gate и Coincall; данные собирает и хранит CoinBoss (sd_opt_latest, sd_opt_summary_hourly). Сторонние агрегаторы не используются.
Покрытие бирж
Шесть опционных площадок. Для монеты, по которой на выбранных площадках нет торгуемых опционов, возвращается HTTP 200 с полями null, `meta.quality = "UNAVAILABLE"` и причиной в `coverage.unavailable`. Площадки без публичной ленты опционов также перечислены там.
Сортировка
По возрастанию даты экспирации.
Единицы измерения
USD notional = contracts × contract size × spot index price of the venue. `*_coin` fields are in units of the underlying coin. Implied volatility is in percent (55 = 55 %). `vol_premium_usd_24h` is premium turnover, reported separately and never added to notional volume.
Метод расчёта
Contracts of different venues are grouped by UTC expiry date. Max pain and ATM IV are computed per expiry; `oi_share_pct` is the share of that expiry in the total open interest of the selection.
Метки времени
Миллисекунды эпохи Unix (UTC), если в описании поля не указано иное
Формат ответа
json
Стабильность
Стабильный
Доступен с
2026-11-11

Текущий статус

ДеградацияПроверено: 2026-11-13 03:58:20 UTCHTTP 20061 msСхема совпадаетВозраст самой новой точки данных: 5.5h

Эндпоинт сообщает качество данных STALE

Доступность за последние 30 дней

Пройдено 100% из 407 проверок

Расхождение схемы, обнаруженное последней автопроверкой
  • Возвращается, но не документировано: coverage.stale_included, coverage.stale_included[], coverage.stale_included[].exchange, coverage.stale_included[].age_s

Ошибки

Неудачные вызовы имеют одинаковую структуру на всех эндпоинтах. Полный список приведён на странице ошибок. Ошибки и лимиты запросов →

КодHTTPЗначениеЧто делать
INVALID_PARAM400Отсутствует обязательный параметр, или значение не принимается. `param` называет параметр, если он известен.Не повторяйте запрос без изменений; исправьте его.
UNAUTHORIZED401Заголовок `CB-API-KEY` был отправлен, но ключ неизвестен или отозван. Для публичных данных ключ не нужен — уберите заголовок или используйте действительный ключ.Не повторяйте запрос без изменений.
FORBIDDEN403Маршрут не входит в публичный API (внутренний или только для аккаунта).Не повторяйте запрос.
NOT_FOUND404Неизвестный маршрут, либо запрошенная монета / биржа / фонд не существует.Не повторяйте запрос; сверьте путь и идентификаторы с каталогом.
RATE_LIMITED429Запросов больше, чем позволяет поминутный лимит. `Retry-After` указывает, сколько секунд нужно подождать.Дождитесь истечения `Retry-After`, затем повторите запрос с нарастающей задержкой.
INTERNAL500Непредвиденная ошибка сервера. Сообщение намеренно общее; при обращении указывайте `request_id`.Повторите запрос один раз через несколько секунд; если ошибка сохраняется, сообщите о ней, указав ID запроса.
UPSTREAM_FAILED503Источник данных, стоящий за этим эндпоинтом, не ответил вовремя. Устаревшие или подменные значения вместо него не возвращаются.Повторите запрос с нарастающей задержкой; проверьте страницу статуса.
UNAVAILABLE501 / 503Набор данных временно не готов (прогрев кеша), либо у эндпоинта пока нет законного публичного источника.Повторите запрос позже; каталог помечает эндпоинты, недоступные по проектному решению.
REQUEST_FAILED200Некоторые более старые эндпоинты отвечают HTTP 200 с `success: false`. Всегда проверяйте `success`, а не только статус HTTP.Зависит от сообщения; считайте запрос неудачным.

Попробовать

GET/api/sd/options/expiriesДеградация
Параметры

string — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.

string · по умолчанию all — One venue, or `all` for the cross-venue aggregate.

URL запросаhttps://www.coinboss.com/api/sd/options/expiries?coin=BTC
Выберите эндпоинт и нажмите «Отправить запрос». Здесь появятся ответ, заголовки и время выполнения.