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

История опционов (почасовая)

Почасовой ряд открытого интереса опционов, объёма, соотношения пут/колл, ATM IV или макс. боли по одной монете. История начинается с момента, когда CoinBoss начал сбор (2026-11-11); более ранние часы задним числом не заполняются.

GET/api/sd/options/history
Частичное покрытие. Сбор этого ряда начат 2026-11-11. Пока запрошенный период не заполнен, ответ возвращает имеющиеся точки, сообщает `points_count` в сравнении с `expected_points` и выставляет `meta.quality = "PARTIAL"`. Пропущенные часы не интерполируются.
Деградация. Эндпоинт сообщает качество данных STALE

Запрос

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

ИмяТипОбязательныйПо умолчаниюДопустимые значенияОписание
coinstringОбязательный——Символ монеты без учёта регистра (например, `BTC`). При отсутствии или некорректном значении возвращается 400. Пример: BTC
metricstringОбязательный—oi, volume, pcr, atm_iv, max_painВозвращаемый ряд. Пример: oi
rangestringНеобязательный7d24h, 7d, 30d, 90dПериод выборки; одна точка в час, не более 2160 точек.
exchangestringНеобязательныйallall, deribit, binance, bybit, okx, gate, coincallОдна площадка либо `all` для агрегата по всем площадкам.

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

curl -s "https://www.coinboss.com/api/sd/options/history?coin=BTC&metric=oi"

Поля ответа

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

ПолеТипЕдиницаОписание
successboolean—true, если запрос выполнен успешно. При ошибке тело ответа имеет вид `{ success: false, code, error, request_id }`.
schemastring—Идентификатор схемы этого ответа. Меняется только тогда, когда у существующего поля меняется смысл или тип.
nownumbermsВремя сервера в момент формирования ответа.
coinstring—Символ монеты (в верхнем регистре).
exchangestring—Идентификатор биржи (в нижнем регистре).
metricstring—Ряд, выбранный параметром `metric`.
rangestring—Применённый период выборки.
intervalstring—Шаг между точками ряда.
points_countnumber—Число возвращённых точек.
expected_pointsnumber—Число часовых точек в запрошенном периоде при полных данных.
history_started_atnumbermsВремя первого часа, собранного CoinBoss.
first_tnumbermsВремя первой возвращённой точки.
last_tnumbermsВремя последней возвращённой точки.
pointsarray—Точки ряда, от старых к новым.
points[]object—Точки ряда, от старых к новым.
points[].tnumbermsНачало временного интервала.
points[].snapshot_atnumbermsВремя цикла коллектора, по которому записана точка.
points[].n_exchangesnumber—Число площадок в точке.
points[].exchangesarray—Площадки, учтённые в этой строке.
points[].exchanges[]string—Площадки, учтённые в этой строке.
points[].oi_usdnumberUSDОткрытый интерес как номинал в USD: количество монет × спотовая индексная цена. Односторонний. может отсутствовать
points[].call_oi_usdnumberUSDОткрытый интерес по коллам, номинал в USD. может отсутствовать
points[].put_oi_usdnumberUSDОткрытый интерес по путам, номинал в USD. может отсутствовать
points[].oi_coinnumbercoinОткрытый интерес в единицах базовой монеты. может отсутствовать
points[].index_pricenumberUSDСпотовая индексная цена, используемая для пересчёта в 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—Строки, не учтённые потому, что их последнее обновление выходит за окно актуальности. пусто в образцах, по которым построена таблица
methodobject—Текстовое описание формул, использованных для этого ответа, по одной записи на поле.
method.pointsstring—Пояснение к формуле для `points`, обычный текст.
method.exchangesstring—Пояснение к формуле для `exchanges`, обычный текст.
method.history_depthstring—Пояснение к формуле для `history_depth`, обычный текст.
method.oi_usdstring—Пояснение к формуле для `oi_usd`, обычный текст. может отсутствовать
metaobject—Происхождение данных и актуальность этого ответа.
meta.schemastring—Идентификатор схемы этого ответа. Меняется только тогда, когда у существующего поля меняется смысл или тип.
meta.sourcearray—Публичные эндпоинты источников, из которых собраны данные.
meta.source[]object—Публичные эндпоинты источников, из которых собраны данные.
meta.source[].exchangestring—Идентификатор биржи (в нижнем регистре).
meta.source[].endpointstring—Публичный эндпоинт источника, который читает коллектор (показан для сведений о происхождении данных; клиенты его не вызывают).
meta.observed_atnull—Метка времени, указанная источником для данных.
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—Что возвращает эндпоинт при сбое коллектора или источника.
points[].pcr_oinumberratioОткрытый интерес по путам ÷ открытый интерес по коллам, в единицах монеты; `null`, если сторона коллов равна 0. может отсутствовать
points[].pcr_volnumberratioОбъём путов за 24h ÷ объём коллов за 24h, в единицах монеты; `null`, если сторона коллов равна 0. может отсутствовать
method.pcr_oistring—Пояснение к формуле для `pcr_oi`, обычный текст. может отсутствовать
method.pcr_volstring—Пояснение к формуле для `pcr_vol`, обычный текст. может отсутствовать
points[].atm_iv_30dnumber%ATM IV, линейно интерполированная к постоянному сроку 30 дней; `null`, если 30 дней не попадают между двумя датами экспирации. может отсутствовать
method.atm_ivstring—Пояснение к формуле для `atm_iv`, обычный текст. может отсутствовать
method.atm_iv_30dstring—Пояснение к формуле для `atm_iv_30d`, обычный текст. может отсутствовать

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

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

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

  • {
    • "success": true,
    • "schema": "coinboss.sd.options/1",
    • "now": 1794542300888,
    • "coin": "BTC",
    • "exchange": "all",
    • "metric": "oi",
    • "range": "7d",
    • "interval": "1h",
    • "points_count": 23,
    • "expected_points": 168,
    • "history_started_at": 1794416400000,
    • "first_t": 1794416400000,
    • "last_t": 1794520800000,
    • "points": [
      • { … 9 },
      • { … 9 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 6 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": []
      },
    • "method": {
      • "points": "one point per UTC hour bucket (t = bucket start, ms); the value is the LAST collector snapshot inside that hour (snapshot_at); hours in which the collector prod…",
      • "exchanges": "exchanges that were fresh and therefore included in that hour's figure; a change in this list between points explains level shifts in the all-exchange series",
      • "history_depth": "hourly summaries are kept for 90 days; the series starts when the collector was first deployed (history_started_at), so fewer points than the requested range ma…",
      • "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 …"
      },
    • "meta": {
      • "schema": "coinboss.sd.options/1",
      • "source": [ … 2 ],
      • "observed_at": null,
      • "received_at": 1794522484809,
      • "fetched_at": 1794542300888,
      • "window": "7d",
      • "quality": "STALE",
      • "is_stale": true,
      • "cache_ttl_s": 300,
      • "fallback": "hours without a collector snapshot are absent from the series (no interpolation); PARTIAL means fewer hourly points exist than the requested range (history shor…"
      }
    }

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

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

ПараметрыHTTPЗадержкаРезультат
coin=ETH&range=24h&metric=pcr2002 msПройдено STALE
coin=BTC&metric=atm_iv2003 msПройдено STALE
coin=BTC4001 msПройдено возвращает ожидаемую ошибку

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

Сведения

Аутентификация
Не требуется. Публичный эндпоинт.
Лимит запросов
1200 запросов в минуту на один IP
Серверный кеш
5m
Пограничный микрокеш
10s
Частота обновления
Одна точка в час, записываемая по последнему циклу коллектора за этот час.
Окно
24h / 7d / 30d / 90d, часовые точки.
Источники данных
Публичные REST-эндпоинты опционов Deribit, Binance, Bybit, OKX, Gate и Coincall; данные собирает и хранит CoinBoss (sd_opt_latest, sd_opt_summary_hourly). Сторонние агрегаторы не используются.
Покрытие бирж
Шесть опционных площадок. Для монеты, по которой на выбранных площадках нет торгуемых опционов, возвращается HTTP 200 с полями null, `meta.quality = "UNAVAILABLE"` и причиной в `coverage.unavailable`. Площадки без публичной ленты опционов также перечислены там.
Пагинация
Пагинации нет; `range` ограничивает число точек.
Сортировка
По возрастанию времени.
Единицы измерения
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.
Метки времени
Миллисекунды эпохи Unix (UTC), если в описании поля не указано иное
Формат ответа
json
Стабильность
Стабильный
Доступен с
2026-11-11

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

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

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

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

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

Ошибки

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

Код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/historyДеградация
Параметры

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

string — Series to return.

string · по умолчанию 7d — Look-back range; one point per hour, 2160 points at most.

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

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