Browse our curated market data catalog across exchanges and asset types.
The following datasets are available to any authenticated user — even without a paid plan. Pass preview=True in the Python client, or call /api/v1/data/preview/:metric_id directly.
| Dataset | Exchange | Symbol | Interval | Timestamp | Date range |
|---|---|---|---|---|---|
| Candlesticks | binance-futures | perpetual-BTC-USDT:USDT | 5m | exchange | 2025-05-01 — 2025-05-31 |
| L2 Order Book Imbalance | binance-futures | perpetual-BTC-USDT:USDT | 5m | exchange | 2025-05-01 — 2025-05-31 |
/api/v1/data/l2_imbalance
L2 (Order Book)
Requires timestamp=true
imbalance_5Imbalance (5 levels)Last top-5 bid quantity minus top-5 ask quantityimbalance_10Imbalance (10 levels)Last top-10 bid quantity minus top-10 ask quantityimbalance_20Imbalance (20 levels)Last top-20 bid quantity minus top-20 ask quantityimbalance_25Imbalance (25 levels)Last top-25 bid quantity minus top-25 ask quantityimbalance_ratio_5Imbalance Ratio (5 levels)Last normalized difference between top-5 bid and ask quantityimbalance_ratio_10Imbalance Ratio (10 levels)Last normalized difference between top-10 bid and ask quantityimbalance_ratio_20Imbalance Ratio (20 levels)Last normalized difference between top-20 bid and ask quantityimbalance_ratio_25Imbalance Ratio (25 levels)Last normalized difference between top-25 bid and ask quantitybid_ask_ratio_5Bid/Ask Ratio (5 levels)Last top-5 bid quantity divided by top-5 ask quantitybid_ask_ratio_10Bid/Ask Ratio (10 levels)Last top-10 bid quantity divided by top-10 ask quantitybid_ask_ratio_20Bid/Ask Ratio (20 levels)Last top-20 bid quantity divided by top-20 ask quantitybid_ask_ratio_25Bid/Ask Ratio (25 levels)Last top-25 bid quantity divided by top-25 ask quantityimbalance_5_avgAvg Imbalance (5 levels)Average top-5 bid quantity minus top-5 ask quantity in the intervalimbalance_10_avgAvg Imbalance (10 levels)Average top-10 bid quantity minus top-10 ask quantity in the intervalimbalance_20_avgAvg Imbalance (20 levels)Average top-20 bid quantity minus top-20 ask quantity in the intervalimbalance_25_avgAvg Imbalance (25 levels)Average top-25 bid quantity minus top-25 ask quantity in the intervalimbalance_ratio_5_avgAvg Imbalance Ratio (5 levels)Average normalized difference between top-5 bid and ask quantity in the intervalimbalance_ratio_10_avgAvg Imbalance Ratio (10 levels)Average normalized difference between top-10 bid and ask quantity in the intervalimbalance_ratio_20_avgAvg Imbalance Ratio (20 levels)Average normalized difference between top-20 bid and ask quantity in the intervalimbalance_ratio_25_avgAvg Imbalance Ratio (25 levels)Average normalized difference between top-25 bid and ask quantity in the intervalbid_ask_ratio_5_avgAvg Bid/Ask Ratio (5 levels)Average top-5 bid quantity divided by top-5 ask quantity in the intervalbid_ask_ratio_10_avgAvg Bid/Ask Ratio (10 levels)Average top-10 bid quantity divided by top-10 ask quantity in the intervalbid_ask_ratio_20_avgAvg Bid/Ask Ratio (20 levels)Average top-20 bid quantity divided by top-20 ask quantity in the intervalbid_ask_ratio_25_avgAvg Bid/Ask Ratio (25 levels)Average top-25 bid quantity divided by top-25 ask quantity in the intervalfrom datetime import datefrom aperiodic import get_metricsdf = get_metrics( api_key="YOUR_API_KEY", metric="l2_imbalance", exchange="binance-futures", symbol="perpetual-BTC-USDT:USDT", interval="1d", start_date=date(2024, 1, 1), end_date=date(2024, 3, 1),)print(df.head())timestampreqstringTimestamp source. 'exchange' uses the exchange-reported timestamp, 'true' uses actual arrival time at our servers.
exchangetrueintervalreqstringAggregation time interval for the data.
1m5m15m30m1h4h1dexchangereqstringSource exchange for L2 order book data.
binance-futuresokx-perpssymbolreqstringTrading pair symbol in the format of Atlas' universal symbology: https://github.com/aperiodic-io/atlas
start_datereqstring<date>Start date for the data range (YYYY-MM-DD format). Data is partitioned by year and month.
end_datereqstring<date>End date for the data range (YYYY-MM-DD format). Must be greater than or equal to start_date.
Successful response with download URLs for each monthly file
filesobject[]requiredArray of file information for each month in the requested date range
yearintegerrequiredYear of the data file
monthintegerrequiredMonth of the data file (1-12)
urlstring<uri>requiredPresigned URL for direct file download (valid for 5 minutes). URLs are served from dataset-specific subdomains, e.g. ohlcv.aperiodic.io, trade-metrics.aperiodic.io, l1-metrics.aperiodic.io, l2-metrics.aperiodic.io, derivative-metrics.aperiodic.io.
{
"files": [
{
"year": 2024,
"month": 1,
"url": "https://ohlcv.aperiodic.io/binance-futures/1h/BTCUSDT/2024-01.parquet?X-Amz-Expires=300&..."
},
{
"year": 2024,
"month": 2,
"url": "https://ohlcv.aperiodic.io/binance-futures/1h/BTCUSDT/2024-02.parquet?X-Amz-Expires=300&..."
}
]
}
/api/v1/data/l2_imbalance?timestamp=exchange&interval=5m&exchange=binance-futures&symbol=perpetual-BTC-USDT%3AUSDT&start_date=2025-05-01&end_date=2025-05-31