Opções por vencimento
Uma linha por data de vencimento: contratos em aberto, volume, razão put/call, max pain, IV ATM e skew, para todas as corretoras ou para uma só.
/api/sd/options/expiriesRequisição
Parâmetros de consulta
| Nome | Tipo | Obrigatório | Padrão | Valores aceitos | Descrição |
|---|---|---|---|---|---|
| coin | string | Obrigatório | — | — | Símbolo da moeda, sem distinção entre maiúsculas e minúsculas (por exemplo, `BTC`). Valores ausentes ou malformados retornam 400. Exemplo: BTC |
| exchange | string | Opcional | all | all, deribit, binance, bybit, okx, gate, coincall | Uma corretora, ou `all` para o agregado entre corretoras. |
Exemplo de requisição
curl -s "https://www.coinboss.com/api/sd/options/expiries?coin=BTC"Campos da resposta
A tabela de campos é gerada a partir de respostas reais, portanto lista exatamente o que o endpoint retorna. Os caminhos usam a[] para itens de array e {*} para objetos indexados por um nome dinâmico, como uma moeda ou uma corretora.
| Campo | Tipo | Unidade | Descrição |
|---|---|---|---|
| success | boolean | — | true quando a requisição foi bem-sucedida. Em caso de falha, o corpo é `{ success: false, code, error, request_id }`. |
| schema | string | — | ID do esquema desta resposta. Só muda quando um campo existente muda de significado ou de tipo. |
| now | number | ms | Horário do servidor em que a resposta foi montada. |
| coin | string | — | Símbolo da moeda (em maiúsculas). |
| exchange | string | — | ID da corretora (em minúsculas). |
| n_expiries | number | — | Número de datas de vencimento incluídas. |
| n_contracts | number | — | Número de contratos de opções incluídos. |
| oi_usd | number | USD | Contratos em aberto em valor nocional em USD: quantidade de moedas × preço do índice spot. Unilateral. |
| call_oi_usd | number | USD | Contratos em aberto de calls, valor nocional em USD. |
| put_oi_usd | number | USD | Contratos em aberto de puts, valor nocional em USD. |
| oi_coin | number | coin | Contratos em aberto em unidades da moeda subjacente. |
| call_oi_coin | number | coin | Contratos em aberto de calls em unidades da moeda subjacente. |
| put_oi_coin | number | coin | Contratos em aberto de puts em unidades da moeda subjacente. |
| vol_usd_24h | number | USD | Volume nocional de 24h: quantidade de moedas negociada × preço atual do índice spot. Não é o volume de prêmios. |
| call_vol_usd_24h | number | USD | Volume nocional de 24h das calls. |
| put_vol_usd_24h | number | USD | Volume nocional de 24h das puts. |
| vol_coin_24h | number | coin | Quantidade negociada em 24h em unidades da moeda subjacente. |
| call_vol_coin_24h | number | coin | Quantidade negociada em 24h das calls, em moedas. |
| put_vol_coin_24h | number | coin | Quantidade negociada em 24h das puts, em moedas. |
| vol_premium_usd_24h | number | USD | Volume de prêmios de 24h (preço da opção × quantidade) onde a corretora o publica; `null` nos demais casos. Nunca é somado ao volume nocional. |
| pcr_oi | number | ratio | Contratos em aberto de puts ÷ contratos em aberto de calls, em unidades de moeda; `null` quando o lado das calls é 0. |
| pcr_vol | number | ratio | Volume de 24h das puts ÷ volume de 24h das calls, em unidades de moeda; `null` quando o lado das calls é 0. |
| atm_iv_30d | number | % | IV ATM interpolada linearmente para um prazo constante de 30 dias; `null` quando os 30 dias não ficam entre dois vencimentos. |
| expiries | array | — | Uma linha por data de vencimento. |
| expiries[] | object | — | Uma linha por data de vencimento. |
| expiries[].expiry | string | — | Data de vencimento (UTC), `YYYY-MM-DD`, ou `all`. |
| expiries[].expiry_ts | number | ms | Horário de vencimento. |
| expiries[].days_left | number | days | Dias até o vencimento. |
| expiries[].exchanges | array | — | Corretoras incluídas nesta linha. |
| expiries[].exchanges[] | string | — | Corretoras incluídas nesta linha. |
| expiries[].n_contracts | number | — | Número de contratos de opções incluídos. |
| expiries[].oi_usd | number | USD | Contratos em aberto em valor nocional em USD: quantidade de moedas × preço do índice spot. Unilateral. |
| expiries[].call_oi_usd | number | USD | Contratos em aberto de calls, valor nocional em USD. |
| expiries[].put_oi_usd | number | USD | Contratos em aberto de puts, valor nocional em USD. |
| expiries[].oi_coin | number | coin | Contratos em aberto em unidades da moeda subjacente. |
| expiries[].call_oi_coin | number | coin | Contratos em aberto de calls em unidades da moeda subjacente. |
| expiries[].put_oi_coin | number | coin | Contratos em aberto de puts em unidades da moeda subjacente. |
| expiries[].vol_usd_24h | number | USD | Volume nocional de 24h: quantidade de moedas negociada × preço atual do índice spot. Não é o volume de prêmios. |
| expiries[].call_vol_usd_24h | number | USD | Volume nocional de 24h das calls. |
| expiries[].put_vol_usd_24h | number | USD | Volume nocional de 24h das puts. |
| expiries[].vol_coin_24h | number | coin | Quantidade negociada em 24h em unidades da moeda subjacente. |
| expiries[].call_vol_coin_24h | number | coin | Quantidade negociada em 24h das calls, em moedas. |
| expiries[].put_vol_coin_24h | number | coin | Quantidade negociada em 24h das puts, em moedas. |
| expiries[].vol_premium_usd_24h | number|null | USD | Volume de prêmios de 24h (preço da opção × quantidade) onde a corretora o publica; `null` nos demais casos. Nunca é somado ao volume nocional. |
| expiries[].pcr_oi | number | ratio | Contratos em aberto de puts ÷ contratos em aberto de calls, em unidades de moeda; `null` quando o lado das calls é 0. |
| expiries[].pcr_vol | number | ratio | Volume de 24h das puts ÷ volume de 24h das calls, em unidades de moeda; `null` quando o lado das calls é 0. |
| expiries[].oi_share_pct | number | % | Participação no total de contratos em aberto (valor nocional em USD) da seleção. |
| expiries[].max_pain | number | USD | Strike no qual o pagamento total aos titulares de opções no vencimento é o menor. |
| expiries[].max_pain_usd | number | USD | Pagamento total aos titulares de opções se o vencimento fosse liquidado no strike de max pain. |
| expiries[].atm_iv | number | % | Volatilidade implícita no dinheiro (ATM): média da IV de marcação no strike mais próximo do preço a termo. |
| expiries[].atm_strike | number | USD | Strike mais próximo do preço a termo, usado para a IV ATM. |
| expiries[].skew_25d | number|null | percentage points | IV da put com delta mais próximo de −0.25 menos a IV da call com delta mais próximo de +0.25. Somente deltas publicados pelas corretoras. |
| expiries[].skew_exchanges | array | — | Corretoras cujos deltas estavam disponíveis para o skew. |
| expiries[].skew_exchanges[] | string | — | Corretoras cujos deltas estavam disponíveis para o skew. |
| expiries[].index_price | number | USD | Preço do índice spot usado para a conversão em USD (nos agregados, a mediana dos preços do índice das próprias corretoras). |
| expiries[].underlying_price | number|null | USD | Preço a termo / do subjacente publicado pela corretora para este vencimento. |
| expiries[].by_exchange_iv | array | — | IV ATM deste vencimento por corretora. |
| expiries[].by_exchange_iv[] | object | — | IV ATM deste vencimento por corretora. |
| expiries[].by_exchange_iv[].exchange | string | — | ID da corretora (em minúsculas). |
| expiries[].by_exchange_iv[].atm_iv | number | % | Volatilidade implícita no dinheiro (ATM): média da IV de marcação no strike mais próximo do preço a termo. |
| expiries[].by_exchange_iv[].atm_strike | number | USD | Strike mais próximo do preço a termo, usado para a IV ATM. |
| expiries[].by_exchange_iv[].ref_price | number | USD | Preço a termo em relação ao qual o strike ATM da corretora foi escolhido. |
| expiries[].by_exchange_iv[].skew_25d | number|null | percentage points | IV da put com delta mais próximo de −0.25 menos a IV da call com delta mais próximo de +0.25. Somente deltas publicados pelas corretoras. |
| expiries[].by_exchange_iv[].oi_usd | number | USD | Contratos em aberto em valor nocional em USD: quantidade de moedas × preço do índice spot. Unilateral. |
| coverage | object | — | O que está e o que não está incluído nos números. Compare isto antes de comparar totais com outra fonte. |
| coverage.included_exchanges | array | — | Fontes cujos dados atualizados estão incluídos. |
| coverage.included_exchanges[] | string | — | Fontes cujos dados atualizados estão incluídos. |
| coverage.unavailable | array | — | Fontes que não puderam ser incluídas, cada uma com um motivo. Nunca são contadas como 0. |
| coverage.unavailable[] | object | — | Fontes que não puderam ser incluídas, cada uma com um motivo. Nunca são contadas como 0. |
| coverage.unavailable[].exchange | string | — | ID da corretora (em minúsculas). |
| coverage.unavailable[].reason | string | — | Código de motivo legível por máquina. |
| coverage.unavailable[].detail | string | — | Explicação do motivo em linguagem natural. |
| coverage.stale_excluded | array | — | Linhas deixadas de fora porque sua última atualização está fora da janela de atualidade. vazio nas amostras usadas para gerar esta tabela |
| coverage.field_gaps | array | — | Colunas que uma corretora não publica; elas são `null` para essa corretora. |
| coverage.field_gaps[] | object | — | Colunas que uma corretora não publica; elas são `null` para essa corretora. |
| coverage.field_gaps[].exchange | string | — | ID da corretora (em minúsculas). |
| coverage.field_gaps[].fields | array | — | Nomes das colunas ausentes. |
| coverage.field_gaps[].fields[] | string | — | Nomes das colunas ausentes. |
| coverage.field_gaps[].kind | string | — | Família de contratos: `inverse` (liquidados em cripto) ou `linear` (liquidados em stablecoin). |
| method | object | — | Descrição em texto simples das fórmulas usadas nesta resposta, uma entrada por campo. |
| method.oi_usd | string | — | Nota sobre a fórmula de `oi_usd`, em texto simples. |
| method.vol_usd_24h | string | — | Nota sobre a fórmula de `vol_usd_24h`, em texto simples. |
| method.vol_premium_usd_24h | string | — | Nota sobre a fórmula de `vol_premium_usd_24h`, em texto simples. |
| method.pcr_oi | string | — | Nota sobre a fórmula de `pcr_oi`, em texto simples. |
| method.pcr_vol | string | — | Nota sobre a fórmula de `pcr_vol`, em texto simples. |
| method.max_pain | string | — | Nota sobre a fórmula de `max_pain`, em texto simples. |
| method.atm_iv | string | — | Nota sobre a fórmula de `atm_iv`, em texto simples. |
| method.atm_iv_30d | string | — | Nota sobre a fórmula de `atm_iv_30d`, em texto simples. |
| method.skew_25d | string | — | Nota sobre a fórmula de `skew_25d`, em texto simples. |
| method.expiry | string | — | Nota sobre a fórmula de `expiry`, em texto simples. |
| method.oi_share_pct | string | — | Nota sobre a fórmula de `oi_share_pct`, em texto simples. |
| meta | object | — | Linhagem e atualidade desta resposta. |
| meta.schema | string | — | ID do esquema desta resposta. Só muda quando um campo existente muda de significado ou de tipo. |
| meta.source | array | — | Endpoints públicos de origem dos quais os dados foram coletados. |
| meta.source[] | object | — | Endpoints públicos de origem dos quais os dados foram coletados. |
| meta.source[].exchange | string | — | ID da corretora (em minúsculas). |
| meta.source[].endpoint | string | — | Endpoint público da fonte que o coletor lê (exibido para fins de linhagem; os clientes nunca o chamam). |
| meta.observed_at | number | ms | Timestamp informado pela fonte para os dados. |
| meta.received_at | number | ms | Horário em que o coletor da CoinBoss recebeu os dados. |
| meta.fetched_at | number | ms | Horário em que esta resposta foi montada. |
| meta.window | string | — | Janela de tempo coberta pelos números. |
| meta.quality | string | — | FRESH, PARTIAL, STALE, BROKEN ou UNAVAILABLE, avaliado a partir dos timestamps dos dados e da cobertura. |
| meta.is_stale | boolean | — | True quando os dados são mais antigos que sua janela de atualidade. |
| meta.cache_ttl_s | number | s | Tempo de vida do cache desta resposta. |
| meta.fallback | string | — | O que o endpoint retorna quando o coletor ou uma fonte falha. |
Gerada 2026-11-11 23:00 UTC a partir de 3 respostas reais.
Exemplo de resposta
/api/sd/options/expiries?coin=BTC · Resposta real capturada 2026-11-13 03:58:20 UTC. Arrays e mapas longos são encurtados para exibição: expiries tinha 12 itens; meta.source tinha 6 itens; coverage.field_gaps tinha 4 itens; coverage.unavailable tinha 12 itens; coverage.stale_included tinha 6 itens; expiries[].by_exchange_iv tinha 6 itens.
- "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"
- "coverage"
- "included_exchanges"
- "unavailable"
- "stale_excluded"
- "field_gaps"
- "stale_included"
- "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"
- "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…"
Amostras verificadas
Além do exemplo acima, a sonda chama este endpoint com estes parâmetros e verifica o esquema a cada vez.
| Parâmetros | HTTP | Latência | Resultado |
|---|---|---|---|
| coin=ETH&exchange=deribit | 200 | 46 ms | Aprovado STALE |
| coin=SOL | 200 | 22 ms | Aprovado STALE |
| coin=BTC&exchange=nope | 400 | 1 ms | Aprovado retorna o erro esperado |
Verificado 2026-11-13 03:58:20 UTC
Detalhes
- Autenticação
- Nenhuma. Endpoint público.
- Limite de requisições
- 1200 requisições por minuto por IP
- Cache do servidor
- 60s
- Microcache de borda
- 10s
- Frequência de atualização
- Rodada do coletor a cada 10 minutos; uma corretora é considerada atualizada por 25 minutos após sua última rodada bem-sucedida.
- Janela
- Snapshot mais recente por vencimento; os campos de volume cobrem as últimas 24 horas.
- Fontes de dados
- Endpoints REST públicos de opções de Deribit, Binance, Bybit, OKX, Gate e Coincall, coletados e armazenados pela CoinBoss (sd_opt_latest, sd_opt_summary_hourly). Nenhum agregador terceiro está envolvido.
- Cobertura de corretoras
- Seis corretoras de opções. Uma moeda sem opções listadas nas corretoras selecionadas retorna HTTP 200 com campos nulos, `meta.quality = "UNAVAILABLE"` e o motivo em `coverage.unavailable`. As corretoras sem feed público de opções também são listadas ali.
- Ordenação
- Data de vencimento em ordem crescente.
- Unidades
- 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.
- Método
- 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.
- Timestamps
- Milissegundos da época Unix (UTC), salvo se a descrição do campo indicar o contrário
- Formato da resposta
- json
- Estabilidade
- Estável
- Disponível desde
- 2026-11-11
Status ao vivo
O endpoint reporta qualidade dos dados STALE
Disponibilidade, últimos 30 dias
100% de 407 verificações aprovadas
- Retornado, mas não documentado: coverage.stale_included, coverage.stale_included[], coverage.stale_included[].exchange, coverage.stale_included[].age_s
Erros
As chamadas com falha têm o mesmo formato em todos os endpoints. A lista completa está na página de erros. Erros e limites de requisições →
| Código | HTTP | Significado | O que fazer |
|---|---|---|---|
| INVALID_PARAM | 400 | Falta um parâmetro obrigatório ou um valor não é aceito. `param` indica o nome do parâmetro quando ele é conhecido. | Não repita a requisição sem alterações; corrija-a. |
| UNAUTHORIZED | 401 | O cabeçalho `CB-API-KEY` foi enviado, mas a chave é desconhecida ou foi revogada. Dados públicos não exigem chave — remova o cabeçalho ou use uma chave válida. | Não repita a requisição sem alterações. |
| FORBIDDEN | 403 | A rota não faz parte da API pública (é interna ou exclusiva de conta). | Não tente novamente. |
| NOT_FOUND | 404 | Rota desconhecida, ou a moeda / corretora / fundo solicitado não existe. | Não tente novamente; confira o caminho e os identificadores no catálogo. |
| RATE_LIMITED | 429 | Mais requisições do que o limite por minuto. `Retry-After` informa os segundos a aguardar. | Aguarde `Retry-After` e então tente novamente com backoff. |
| INTERNAL | 500 | Erro inesperado do servidor. A mensagem é genérica de propósito; cite `request_id` ao reportá-lo. | Tente novamente uma vez após alguns segundos; se persistir, reporte-o com o ID da requisição. |
| UPSTREAM_FAILED | 503 | A fonte de dados por trás deste endpoint não respondeu a tempo. Nenhum número desatualizado ou substituto é retornado em seu lugar. | Tente novamente com backoff; consulte a página de status. |
| UNAVAILABLE | 501 / 503 | O conjunto de dados ainda não está pronto temporariamente (aquecimento do cache) ou o endpoint ainda não tem uma fonte pública lícita. | Tente novamente mais tarde; o catálogo marca os endpoints que são indisponíveis por design. |
| REQUEST_FAILED | 200 | Alguns endpoints mais antigos respondem HTTP 200 com `success: false`. Verifique sempre `success`, não apenas o status HTTP. | Depende da mensagem; trate como uma requisição com falha. |
Experimente
/api/sd/options/expiriesDegradadostring — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.
string · padrão all — One venue, or `all` for the cross-venue aggregate.
https://www.coinboss.com/api/sd/options/expiries?coin=BTCMais nesta categoria
- Cadeia de opções (uma corretora) /api/sd/options/chain
- Opções por vencimento /api/sd/options/expiries
- Histórico de opções (horário) /api/sd/options/history
- Visão geral de opções (todas as corretoras) /api/sd/options/overview
- Opções por strike /api/sd/options/strikes
- Resumo de opções da página da moeda /api/currency/options-summary
- Sorriso / estrutura a termo da volatilidade implícita de opções /api/options/iv
- Histórico da volatilidade implícita de opções /api/options/iv-history
- Max pain de opções /api/options/max-pain
- OI de opções por vencimento /api/options/oi-by-expiry
- OI de opções por strike /api/options/oi-by-strike
- Visão geral de opções /api/options/overview
- Distribuição do volume de opções /api/options/volume-dist