/api/sd/basis/history
GETЧастичноFRESH

История базиса (почасовая)

Почасовой ряд базиса по каждой бирже и в виде межбиржевого агрегата (медиана, среднее, взвешенное по OI) для одной монеты.

GET/api/sd/basis/history
Частичное покрытие. Сбор начат 2026-11-11. В ответе сообщаются `history.available_from`, `n_hours` в сравнении с `expected_hours` и `complete`; часы без данных отсутствуют, а не интерполируются.

Запрос

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

ИмяТипОбязательныйПо умолчаниюДопустимые значенияОписание
coinstringОбязательный——Символ монеты без учёта регистра (например, `BTC`). При отсутствии или некорректном значении возвращается 400. Пример: BTC
kindstringНеобязательныйperpperp, spot_perp`perp`: цена маркировки относительно индексной цены той же биржи. `spot_perp`: цена бессрочного контракта относительно спотовой цены той же биржи.
rangestringНеобязательный24h24h, 7d, 30dПериод выборки, одна точка в час.
exchangestringНеобязательный——Идентификатор одной биржи. По умолчанию: все биржи. Для неизвестного идентификатора возвращается 400.

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

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

Поля ответа

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

ПолеТипЕдиницаОписание
successboolean—true, если запрос выполнен успешно. При ошибке тело ответа имеет вид `{ success: false, code, error, request_id }`.
schemastring—Идентификатор схемы этого ответа. Меняется только тогда, когда у существующего поля меняется смысл или тип.
nownumbermsВремя сервера в момент формирования ответа.
coinstring—Символ монеты (в верхнем регистре).
kindstring—`perp` или `spot_perp`.
rangestring—Применённый период выборки.
intervalstring—Шаг между точками ряда.
exchangestring|null—Идентификатор биржи (в нижнем регистре).
aggregatearray—Агрегат раздела по всем биржам.
aggregate[]object—Агрегат раздела по всем биржам.
aggregate[].tnumbermsНачало временного интервала.
aggregate[].median_pctnumber%Медиана базиса по одному основному контракту на биржу.
aggregate[].mean_pctnumber%Простое среднее по тому же набору, что и медиана.
aggregate[].oi_weighted_pctnumber%Базис, взвешенный по открытому интересу; строки без веса OI не учитываются.
aggregate[].n_exchangesnumber—Биржи в агрегате.
seriesarray—Один ряд на биржу.
series[]object—Один ряд на биржу.
series[].exchangestring—Идентификатор биржи (в нижнем регистре).
series[].symbolstring—Символ контракта в формате хранения CoinBoss.
series[].primaryboolean—True для контракта, который представляет свою биржу в медиане и среднем.
series[].in_aggregateboolean—True, если строка прошла правила включения.
series[].pointsarray—Пары `[hour start in ms, basis in %]` (начало часа в ms, базис в %), от старых к новым.
series[].points[]array—Пары `[hour start in ms, basis in %]` (начало часа в ms, базис в %), от старых к новым.
series[].points[][]number—Пары `[hour start in ms, basis in %]` (начало часа в ms, базис в %), от старых к новым.
historyobject—Какая часть запрошенного периода доступна.
history.requested_fromnumbermsНачало запрошенного периода.
history.available_fromnumbermsПервый сохранённый час.
history.available_tonumbermsПоследний сохранённый час.
history.n_hoursnumber—Число часов, доступных в периоде.
history.expected_hoursnumber—Число часов в периоде при полных данных.
history.completeboolean—True, если сохранён каждый час запрошенного периода.
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.series.pointsstring—Пояснение к формуле для `series.points`, обычный текст.
method.aggregate.median_pctstring—Пояснение к формуле для `aggregate.median_pct`, обычный текст.
method.aggregate.oi_weighted_pctstring—Пояснение к формуле для `aggregate.oi_weighted_pct`, обычный текст.
method.intervalstring—Пояснение к формуле для `interval`, обычный текст.
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—Что возвращает эндпоинт при сбое коллектора или источника.

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

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

/api/sd/basis/history?coin=BTC · Реальный ответ, получен 2026-11-13 04:02:46 UTC. Длинные массивы и словари сокращены для отображения: series: элементов было 20; aggregate: элементов было 25; meta.source: элементов было 20; series[].points: элементов было 25; coverage.included_exchanges: элементов было 20.

  • {
    • "success": true,
    • "schema": "coinboss.sd.basis/1",
    • "now": 1794542288014,
    • "coin": "BTC",
    • "kind": "perp",
    • "range": "24h",
    • "interval": "1h",
    • "exchange": null,
    • "aggregate": [
      • { … 5 },
      • { … 5 }
      ],
    • "series": [
      • { … 5 },
      • { … 5 }
      ],
    • "history": {
      • "requested_from": 1794452400000,
      • "available_from": 1794452400000,
      • "available_to": 1794538800000,
      • "n_hours": 25,
      • "expected_hours": 24,
      • "complete": true
      },
    • "coverage": {
      • "included_exchanges": [ … 8 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": []
      },
    • "method": {
      • "series.points": "[hour_ts, (mark_price - index_price) / index_price * 100] from the first collector round after each full hour; hours where the two timestamps were more than 60 …",
      • "aggregate.median_pct": "median over one primary contract per exchange in that hour; excluded: |value| > 10, contracts with no trade in 24 h, exchanges whose index is not a comparable i…",
      • "aggregate.oi_weighted_pct": "sum(value * oi_usd) / sum(oi_usd) over all included contracts that have an OI snapshot for the same hour (oi_history / sd_contract_hourly, single-sided); null w…",
      • "interval": "fixed 1 h buckets, no interpolation; missing hours are simply absent"
      },
    • "meta": {
      • "schema": "coinboss.sd.basis/1",
      • "source": [ … 2 ],
      • "observed_at": null,
      • "received_at": 1794538827406,
      • "fetched_at": 1794542288014,
      • "window": "24h",
      • "quality": "FRESH",
      • "is_stale": false,
      • "cache_ttl_s": 300,
      • "fallback": "history is served as stored; hours without a snapshot are absent, never interpolated"
      }
    }

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

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

ПараметрыHTTPЗадержкаРезультат
coin=ETH&kind=spot_perp20041 msПройдено FRESH
coin=BTC&exchange=binance20032 msПройдено FRESH
coin=BTC&range=1y4001 msПройдено возвращает ожидаемую ошибку

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

Сведения

Аутентификация
Не требуется. Публичный эндпоинт.
Лимит запросов
1200 запросов в минуту на один IP
Серверный кеш
5m
Пограничный микрокеш
10s
Частота обновления
Цикл коллектора — каждые 60 секунд; строка считается актуальной 180 секунд. Историю формируют почасовые снимки.
Окно
24h / 7d / 30d, часовые интервалы.
Источники данных
Цена маркировки, индексная цена и последняя цена, публикуемые 21 биржей деривативов, а также спотовая цена той же биржи; данные собирает и хранит CoinBoss (sd_px_latest, sd_px_hourly).
Покрытие бирж
21 биржа. Биржи, не публикующие индексную цену или цену маркировки, перечислены в `coverage.unavailable`; строки, у которых две ценовые составляющие разнесены более чем на 60 секунд, возвращают `null`. Строки, не включённые в агрегат, перечислены в `coverage.excluded_from_aggregate` с указанием причины.
Пагинация
Пагинации нет; `range` ограничивает число точек.
Сортировка
По возрастанию времени.
Единицы измерения
All basis values in percent. Prices in the quote currency of the contract (USDT / USDC / USD). `oi_usd` single-sided.
Метод расчёта
Each point is the snapshot taken in the first ten minutes of the hour. The OI weight of a historical hour is the open interest recorded in that hour; without it `oi_weighted_pct` is `null`.
Метки времени
Миллисекунды эпохи Unix (UTC), если в описании поля не указано иное
Формат ответа
json
Стабильность
Стабильный
Доступен с
2026-11-11

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

ЧастичноПроверено: 2026-11-13 04:02:46 UTCHTTP 2001 msСхема совпадаетВозраст самой новой точки данных: 63m

Сбор начат 2026-11-11. В ответе сообщаются `history.available_from`, `n_hours` в сравнении с `expected_hours` и `complete`; часы без данных отсутствуют, а не интерполируются.

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

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

Ошибки

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

Код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/basis/historyЧастично
Параметры

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

string · по умолчанию perp — `perp`: mark price against the index price of the same exchange. `spot_perp`: perpetual price against the spot price of the same exchange.

string · по умолчанию 24h — Look-back range, one point per hour.

string — One exchange id. Default: all exchanges. An unknown id returns 400.

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