Aperiodic
Metrics
MarketsLive
DocsPricing
Get the data
Exchange APIs · Binance

Binance open interest history API: 30 days, 500 rows a call

Binance gives you open interest history for its USDⓈ-M perps through one free REST endpoint, openInterestHist. The catch is that it only goes back 30 days. The long/short ratio and taker volume endpoints next to it have the same limit, so for anything older you need Binance’s download archive or someone who recorded the data at the time.

Endpoint limits read from Binance’s official Python connector and API docs on November 5, 2026. Binance’s docs remain the authority.

The endpoints and their limits

Public market-data endpoints on Binance, no API key needed.
  • Open interest statistics

    GET /futures/data/openInterestHist
    How far back
    Latest 30 days
    Rows a call
    30 by default, 500 at most
    Rate limit
    Per IP
    Returns
    Open interest and its value per period, 5m to 1d
  • Long/short ratios

    GET /futures/data/globalLongShortAccountRatio, topLongShortAccountRatio, topLongShortPositionRatio
    How far back
    Latest 30 days
    Rows a call
    30 by default, 500 at most
    Rate limit
    Per IP
    Returns
    Account and position ratios per period
  • Taker buy/sell volume

    GET /futures/data/takerlongshortRatio
    How far back
    Latest 30 days
    Rows a call
    30 by default, 500 at most
    Rate limit
    Per IP
    Returns
    Taker buy and sell volume per period
  • Funding rate history

    GET /fapi/v1/fundingRate
    How far back
    No limit stated
    Rows a call
    500 by default, 1,000 at most
    Rate limit
    500 requests per 5 minutes per IP, shared with /fapi/v1/fundingInfo
    Returns
    One row per funding settlement
EndpointReturnsRows a callHow far backRate limit
Open interest statisticsGET /futures/data/openInterestHistOpen interest and its value per period, 5m to 1d30 by default, 500 at mostLatest 30 daysPer IP
Long/short ratiosGET /futures/data/globalLongShortAccountRatio, topLongShortAccountRatio, topLongShortPositionRatioAccount and position ratios per period30 by default, 500 at mostLatest 30 daysPer IP
Taker buy/sell volumeGET /futures/data/takerlongshortRatioTaker buy and sell volume per period30 by default, 500 at mostLatest 30 daysPer IP
Funding rate historyGET /fapi/v1/fundingRateOne row per funding settlement500 by default, 1,000 at mostNo limit stated500 requests per 5 minutes per IP, shared with /fapi/v1/fundingInfo

What the limits mean for a backtest

At 5-minute bars, 30 days is 8,640 points, so reading one symbol in full takes 18 calls of 500. Setting startTime further back gets you nothing, so if you want to study how open interest behaved through a 2022 or 2024 sell-off, this endpoint can’t help.

Limits are per IP. Go over and Binance answers with HTTP 429. Keep going and you get a 418 and an IP ban of anywhere from 2 minutes to 3 days, according to its API docs. So if you want every listed perp, even inside the 30 days, pace yourself.

Calling Binance yourself

One call, no key: the latest 500 five-minute points for the BTCUSDT perpetual, about 41 hours.
example.py
import httpx

rows = httpx.get(
    "https://fapi.binance.com/futures/data/openInterestHist",
    params={"symbol": "BTCUSDT", "period": "5m", "limit": 500},
).json()

Binance’s download archive

Binance publishes daily metrics files for USDⓈ-M futures at data.binance.vision: open interest, its value and the long/short ratios every 5 minutes, as zipped CSV per symbol per day. A sample day for BTCUSDT (May 1, 2025) has 288 rows. That gets you past 30 days, at the cost of one download per symbol per day.

The archive is licensed CC BY-NC-SA 4.0, which makes it free for non-commercial use like personal backtesting. Commercial use needs a separate written licence from Binance. Its README also warns that archived files may be changed later as issues are found.

If you need more history

We have open interest and funding for Binance perps from 2020, including contracts that have since been delisted.

The open interest and funding datasets come as parquet bars from 1 minute to 1 day, timestamped by the exchange or by when each update reached us, and we never recalculate a bar after publishing it. Open interest comes with its change, volatility and ratio to the price move in each bar. Funding comes as the rate in each bar plus how often it updated.

One request returns links to every monthly or daily file in your date range, so a year of 5-minute bars is one call instead of a paging loop. Pro has high rate limits and 5 years of history. Prime has no rate limits and the full history (pricing). You can try it on real history for free: a free account gets every metric for 2025 on BTC, ETH, SOL and 10 RWA perps, on all three venues, open interest and funding included (catalog).

example.py
from datetime import date

from aperiodic import get_metrics

# 2022 at 5 minutes, a year Binance's endpoints no longer serve
oi = get_metrics(
    api_key="YOUR_KEY",
    metric="open_interest",
    exchange="binance-futures",
    symbol="perpetual-BTC-USDT:USDT",
    interval="5m",
    timestamp="exchange",
    start_date=date(2022, 1, 1),
    end_date=date(2022, 12, 31),
)

Questions

How far back does Binance’s open interest history API go?
Thirty days. GET /futures/data/openInterestHist returns only the latest 30 days, at most 500 rows a call, per Binance’s docs and its official Python connector, checked November 5, 2026.
Does Binance’s long/short ratio history have the same limit?
Yes. The global and top-trader long/short ratio endpoints and the taker buy/sell volume endpoint also return only the latest 30 days, 500 rows at most a call.
Where can I get Binance open interest history older than 30 days?
Binance’s own archive at data.binance.vision has daily metrics files with open interest every 5 minutes, licensed for non-commercial use. Aperiodic’s open_interest dataset covers Binance USDⓈ-M perps from 2020, delisted contracts included, as parquet from 1-minute to daily bars.
Is Binance’s funding rate history limited to 30 days too?
No. GET /fapi/v1/fundingRate pages back by startTime, 1,000 settlements a call at most, and shares a limit of 500 requests per 5 minutes per IP with the funding info endpoint. You get one row per settlement, and nothing about the rate in between.

Sources

  • Binance API docs: Open Interest Statistics
  • Binance API docs: Get Funding Rate History
  • Binance API docs: General info (limits and bans)
  • Binance futures connector for Python: market endpoints
  • Binance public data and its terms

Also: OKX funding rate and open interest history API, measured · open interest, every venue · funding rates, every venue

Aperiodic

Built from hundreds of terabytes of raw data and distilled into point-in-time metrics you can pull as parquet files. Plus the raw trades, quotes and derivatives data behind them.

Use Cases
  • Improve your backtest
  • Find new alpha
  • Execute smarter
Indices
  • All indices
  • Aperiodic Cost Index
  • Aperiodic Depth Index
  • Aperiodic Impact Index
Metrics
  • Metrics library
  • Data Catalog
  • Free data
  • Live markets dashboard
  • Every perp, A–Z
  • Global Liquidity
  • Unusual activity
  • Order Flow
  • L1 & L2
  • Derivatives
  • RWA
  • Live funding rates
  • Raw Data
Developers
  • Docs
  • API Docs
  • MCP Server
  • Notebooks
  • Integrations
  • For AI Agents
  • Atlas Security Master
  • TParquet
  • Binance OI history API
  • OKX history APIs
  • Pre-flight
  • Changelog
  • Roadmap
  • llms.txt
Learn
  • Markets from First Principles
  • Replays
  • Microstructure Guide
  • Architecture
  • Research Blog
  • FAQ
Compare
  • All vendors
  • Pricing compared
  • vs. Tardis
  • vs. CoinGlass
  • vs. Kaiko
  • vs. Amberdata
  • vs. Crypto Lake
  • vs. Laevitas
  • vs. Coinalyze
  • vs. Binance public data
  • vs. Hyperliquid data
  • Binance archive
  • Hyperliquid data
Company
  • Team
  • Pricing
  • Contact
  • Book a call
  • Terms of Service
  • Privacy Policy
  • Licensing
  • SLA

© Copyright 2026 Aperiodic. All Rights Reserved.

Aperiodic Limited · Registered in Ireland · Company No. 815273 ·
136 Capel Street, Dublin D01 T2C9, Ireland