Opções
Use a API de opções para montar telas de cadeia, acompanhar séries negociadas, consultar histórico EOD e adicionar gregas/volatilidade implícita ao seu produto.
O fluxo mais comum é:
- escolher o ativo subjacente
- descobrir os vencimentos
- ver os preços de exercício
- listar as séries negociadas
- consultar gregas e volatilidade implícita
- pegar o histórico de uma série específica
Esta seção cobre opções sobre ações, ETFs e índices (PETR4, VALE3, BOVA11, IBOV, etc.). Para opções sobre futuros (boi gordo, café, milho, soja e similares), veja Opções sobre Futuros.
Dados disponíveis
A API entrega dados EOD: abertura, máxima, mínima, média, fechamento, bid, ask, negócios, volume, volume financeiro, gregas e volatilidade implícita. O arquivo diário é processado após o fechamento do pregão.
Cobertura e frequência
- Histórico: a partir de 2009, com consolidação diária após o fechamento.
- Atualização: o arquivo EOD é processado após ~19h de Brasília (BRT/BRT-3). Até lá, o "último pregão disponível" corresponde ao pregão anterior.
- Contratos cobertos: opções de ações, ETFs e índices (ex.: IBOV) listados na bolsa brasileira.
- Fuso horário: todas as datas estão em
America/Sao_Paulo. Em respostas de preços/histórico,dateé timestamp Unix em segundos; em respostas de analytics,datevem emYYYY-MM-DD. - Formato de datas em query params:
YYYY-MM-DD.
Acesso por plano
Opções fazem parte do plano Pro. O sandbox abaixo permite experimentação sem token para PETR4.
| Plano | Acesso a opções |
|---|---|
| Sandbox (sem token) | PETR4 |
| Free | Não incluso |
| Startup | Não incluso |
| Pro | Todos os ativos |
Termos que você vai ver
- Ativo subjacente: a ação, ETF ou índice da opção. Ex.:
PETR4. - Vencimento (
expirationDate): a data em que a opção vence. Ex.:2026-05-15. - Preço de exercício / strike: preço combinado na opção. Ex.:
34. - Série: a combinação prática que o mercado negocia. Na resposta da API,
aparece como
symbol,expirationDate,sideestrike. symbol: o ticker da série (ex.:PETRE370), composto pelo ativo subjacente + letra do mês/tipo + identificador do strike (veja abaixo).- Opção de compra (
call): direito de comprar o ativo subjacente. - Opção de venda (
put): direito de vender o ativo subjacente. - Titular: quem compra a opção. Paga o prêmio e exerce o direito se for vantajoso.
- Lançador: quem vende a opção. Recebe o prêmio e assume a obrigação.
- Prêmio: preço pago/recebido pela opção. É o que aparece como
close,bid,askno histórico. - Opção americana: pode ser exercida a qualquer momento até o vencimento (padrão de opções de ações).
- Opção europeia: só pode ser exercida no vencimento (padrão de opções de índice, como IBOV).
Formato do symbol
O ticker de uma série segue o padrão da bolsa brasileira:
{ATIVO}{LETRA_MÊS}{ID_STRIKE}.
- Ativo: as 4 letras do subjacente (ex.:
PETR). - Letra do mês + tipo:
A–Lpara calls (A = janeiro, B = fevereiro, ..., L = dezembro).M–Xpara puts (M = janeiro, N = fevereiro, ..., X = dezembro).
- ID do strike: número de 1 a 3 dígitos atribuído pela bolsa para aquele strike no vencimento.
Exemplos:
PETRE370→ PETR4, call (E= maio), strike mapeado como370.PETRQ28→ PETR4, put (Q= maio), strike mapeado como28.
O ID do strike não é o valor em reais. Para saber o strike em reais,
use /api/v2/options/chain ou /api/v2/options/strikes.
Início rápido
Exemplo do fluxo vencimentos → séries negociadas → histórico para opções de
PETR4. Funciona no sandbox sem token.
# 1) Descubra os vencimentos disponíveis
curl "https://brapi.dev/api/v2/options/expirations?underlying=PETR4"
# 2) Liste as séries negociadas em um vencimento
curl "https://brapi.dev/api/v2/options/chain?underlying=PETR4&expirationDate=2026-05-15"
# 3) Consulte o histórico de uma série específica
curl "https://brapi.dev/api/v2/options/historical?symbol=PETRE370&expirationDate=2026-05-15"const BASE = 'https://brapi.dev/api/v2/options';
const token = process.env.BRAPI_TOKEN; // dispensável para PETR4 no sandbox
const headers = token ? { Authorization: `Bearer ${token}` } : undefined;
// 1) Vencimentos
const expirations = await fetch(
`${BASE}/expirations?underlying=PETR4`,
{ headers },
).then((r) => r.json());
const nextExpiration = expirations.expirations[0];
// 2) Séries negociadas no vencimento
const chain = await fetch(
`${BASE}/chain?underlying=PETR4&expirationDate=${nextExpiration}`,
{ headers },
).then((r) => r.json());
// 3) Histórico da série ATM mais próxima
const firstSeries = chain.series[0];
const history = await fetch(
`${BASE}/historical?symbol=${firstSeries.symbol}&expirationDate=${firstSeries.expirationDate}`,
{ headers },
).then((r) => r.json());
console.log(history);import os
import requests
BASE = "https://brapi.dev/api/v2/options"
token = os.getenv("BRAPI_TOKEN") # dispensável para PETR4 no sandbox
headers = {"Authorization": f"Bearer {token}"} if token else {}
# 1) Vencimentos
expirations = requests.get(
f"{BASE}/expirations", params={"underlying": "PETR4"}, headers=headers
).json()
next_exp = expirations["expirations"][0]
# 2) Séries negociadas no vencimento
chain = requests.get(
f"{BASE}/chain",
params={"underlying": "PETR4", "expirationDate": next_exp},
headers=headers,
).json()
# 3) Histórico da primeira série
first_series = chain["series"][0]
history = requests.get(
f"{BASE}/historical",
params={"symbol": first_series["symbol"], "expirationDate": first_series["expirationDate"]},
headers=headers,
).json()
print(history)Fluxo recomendado
Descubra os vencimentos
Comece em /api/v2/options/expirations quando
você só sabe o ativo, como PETR4, e ainda não sabe qual vencimento usar.
Descubra os preços de exercício
Depois de escolher o vencimento, use
/api/v2/options/strikes para saber
quais strikes existem naquele vencimento.
Liste as séries negociadas
Use /api/v2/options/chain para montar a tela que a
maioria das pessoas espera ver: séries negociadas por vencimento, com preço
e volume.
Busque o histórico de uma série
Quando você já sabe qual série quer acompanhar, use
/api/v2/options/historical com symbol e
expirationDate. Se precisar, informe também strike.
Consulte gregas e IV
Use /api/v2/options/analytics para a foto EOD
de um vencimento, ou
/api/v2/options/analytics/history
para a série temporal de uma opção específica.
Casos de uso mais comuns
- Tela simples de opções no seu app:
expirations -> chain - Filtro por strike:
expirations -> strikes -> chain - Gregas e volatilidade implícita por vencimento:
expirations -> analytics - Gráfico de uma opção específica:
chain -> historical - Backtest ou persistência diária: escolher a série via
chaine depois buscar o histórico emhistoricaleanalytics/history
Quando você pode pular etapas
- Se você já sabe o vencimento, pode ir direto para
strikesouchain. - Se você já sabe a série, pode ir direto para
historical. - Se você quer só montar uma tela simples por vencimento, pode pular
strikese ir direto parachain.
Perguntas frequentes
Receitas prontas
Guias e tutoriais publicados no blog com código pronto para copiar:
Opções para iniciantes
Entenda calls, puts, strikes e vencimentos do zero, em português.
Covered call passo a passo
Como usar opções para gerar renda extra sobre ações que você já tem.
Cadeia de Opções em Python
Monte uma options chain visual com calls e puts.
Backtest de Opções
Teste covered call e cash-secured put com PETR4.
Backtesting com Python
Puxe histórico da brapi e teste estratégias em notebook Python.
Próximas melhorias
O foco atual é histórico EOD, cadeia, strikes, vencimentos, gregas e IV. As próximas frentes em avaliação são:
- Snapshots intraday durante o pregão.
- Interesse em aberto por série.
Pedidos de clientes ajudam a definir a ordem dessas entregas.
Sandbox sem token
Para facilitar a experimentação, todos os endpoints de opções aceitam consultas no sandbox sem token, restritas a opções de PETR4:
GET /api/v2/options/expirations,/strikese/chain: apenas comunderlying=PETR4.GET /api/v2/options/analytics: apenas comunderlying=PETR4.GET /api/v2/options/historical: apenas comsymbolcomeçando comPETR(ou seja, opções do subjacente PETR4).GET /api/v2/options/analytics/history: apenas comsymbolcomeçando comPETR.
Para qualquer outro ativo, é necessário autenticar com um token do plano Pro.
Endpoints
Vencimentos
Descubra os vencimentos disponíveis para um ativo.
Preços de Exercício
Veja os strikes disponíveis em um vencimento.
Séries Negociadas
Liste as séries negociadas de um vencimento com preço e volume.
Gregas e IV
Consulte volatilidade implícita e gregas por vencimento.
Histórico de Gregas e IV
Consulte a série temporal de gregas e IV de uma opção.
Histórico
Consulte o histórico diário de uma série específica.
Opções sobre Futuros →
Para opções sobre boi gordo, café, milho, soja e outros futuros.