---
title: "Histórico de futuros"
method: GET
path: "/api/v2/futures/historical"
tags: ["Futuros"]
---

# Histórico de futuros

`GET /api/v2/futures/historical`

## Request

- Base URL: `https://brapi.dev`
- URL: `https://brapi.dev/api/v2/futures/historical`
- Auth: HTTP bearer

Série diária de um contrato futuro: máxima, mínima, fechamento, preço de
ajuste, taxa de ajuste em contratos de juros, variação e volume.

Use para gráficos, backtests ou para estudar o ajuste diário de um vencimento.

Sem `startDate`, a série começa 12 meses antes de hoje. Sem `endDate`,
termina hoje. O histórico cobre cerca de 1 ano. `open` vem sempre `null`,
porque os dados de fim de dia não trazem abertura.

A série termina no vencimento do contrato. Para seguir um ativo por mais tempo,
junte contratos seguidos e trate o salto de preço na troca. Para vários
contratos, use a [cotação](https://brapi.dev/docs/futuros/cotacao) ou a
[curva de vencimentos](https://brapi.dev/docs/futuros/curva-de-vencimentos).

Plano Pro. Sem token, aceita só `symbol` que começa com `WIN` ou `WDO`.

## Query parameters

- `symbol` string, required: Código do contrato. Ex.: `WINM26`.
- `startDate` string: Data inicial no formato YYYY-MM-DD. Padrão: 12 meses antes de hoje.
- `endDate` string: Data final no formato YYYY-MM-DD. Padrão: hoje.
- `sortOrder` 'asc' | 'desc': Ordem das datas. `desc` traz o pregão mais recente primeiro.

## Response `200`

Histórico.

- FutureHistoricalResponse
  - `future` FutureWithHistory, required
    - `symbol` string, required: Código do contrato. Ex.: `WINM26`, `BGIF27`, `DI1F27`.
    - `underlyingAsset` string, required: Código do ativo, sem mês e ano. Ex.: `WIN`, `BGI`, `DI1`.
    - `assetDescription` string, nullable, required: Nome do ativo em português.
    - `segment` 'financial' | 'agribusiness', required: `financial` para índices, juros e moedas. `agribusiness` para commodities.
    - `quotationType` 'price' | 'rate', required: `rate` em contratos de juros, como DI1 e DAP, com preços em % a.a. `price` nos demais.
    - `expirationDate` string, required: Data de vencimento, no formato YYYY-MM-DD.
    - `firstTradeDate` string, nullable, required: Data do primeiro pregão, no formato YYYY-MM-DD.
    - `lastTradeDate` string, nullable, required: Data do último pregão, no formato YYYY-MM-DD.
    - `contractMultiplier` number, nullable, required: Valor de um ponto, em reais. Ex.: `WIN` 0,2, `BGI` 330, `DI1` 1.
    - `allocationRoundLot` integer, nullable, required: Tamanho do lote, em contratos.
    - `tradingCurrency` string, nullable, required: Moeda de negociação. Quase sempre `BRL`.
    - `deliveryType` string, nullable, required: Tipo de entrega: `Financial` ou `Physical`.
    - `exerciseType` string, nullable, required: Forma de cotação: `Price` ou `Rate`.
    - `isin` string, nullable, required: Código ISIN.
    - `cficCode` string, nullable, required: Código CFI.
    - `history` FuturePricePoint[], required: Um item por pregão no período pedido.
      - `date` integer, required: Data do pregão, em Unix timestamp (segundos).
      - `open` number, nullable, required: Preço de abertura. Sempre `null`, porque os dados de fim de dia não trazem abertura.
      - `high` number, nullable, required: Máxima do dia. Em % a.a. nos contratos de juros.
      - `low` number, nullable, required: Mínima do dia. Em % a.a. nos contratos de juros.
      - `average` number, nullable, required: Preço médio do dia. Em % a.a. nos contratos de juros.
      - `close` number, nullable, required: Último negócio do dia. Em % a.a. nos contratos de juros.
      - `settlement` number, nullable, required: Preço de ajuste oficial do dia. Nos contratos de juros, vem em reais, como preço unitário.
      - `settlementRate` number, nullable, required: Taxa do ajuste, em % a.a. Só vem em contratos de juros.
      - `referencePrice` number, nullable, required: Preço de referência oficial.
      - `oscillationPct` number, nullable, required: Variação em relação ao pregão anterior, em %.
      - `trades` number, nullable, required: Número de negócios.
      - `volume` number, nullable, required: Contratos negociados.
      - `financialVolume` number, nullable, required: Volume financeiro, em reais.
  - `requestedAt` string, date-time, required: Data e hora da requisição em ISO 8601.
  - `took` integer, required: Tempo de processamento, em milissegundos.

## Other responses

- `400`: Requisição inválida. Confira os parâmetros.
- `401`: Token ausente ou inválido.
- `403`: O plano não inclui este recurso ou parâmetro.
- `404`: Nenhum dado encontrado para o pedido.
- `500`: Erro interno do servidor.

## Changes

- **2026-05-22** `c9743d203cb0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/brapi-dev/apis/brapi-api-do-mercado-financeiro-brasileiro/changes/api/v2/futures/historical/get.md)

---

[API](https://skmtc.dev/brapi-dev/apis/brapi-api-do-mercado-financeiro-brasileiro.md) - [All operations](https://skmtc.dev/brapi-dev/apis/brapi-api-do-mercado-financeiro-brasileiro/llms.txt) - [OpenAPI document](https://skmtc.dev/brapi-dev/apis/brapi-api-do-mercado-financeiro-brasileiro/revisions/7c732d79148a?raw)
