Free crypto OHLCV from 1 second to daily.
OKX & Binance perpetuals — built for systematic backtesting.
from backdb import BackDB db = BackDB(api_key="bdb_your_key") # ETH 3s bars — grid-friendly alignment df = db.get_bars("okx", "ETH-USDT-SWAP", "2024-01-01", "2026-03-01", interval=3) # Same data — switch to 1m with one parameter df_1m = db.get_bars("okx", "ETH-USDT-SWAP", "2024-01-01", "2026-03-01", interval=60) # 100× stream replay — like live feed for bar in db.stream("okx", "ETH-USDT-SWAP", "2026-01-01", "2026-01-02", speed=100): strategy.on_bar(bar)
1s base data aggregated to 3s / 5s / 10s / 30s / 1m / 5m / 1h / 1d — one parameter.
SSE-style streaming from 1× to 1000× speed — test how your model behaves on a realistic time axis.
Compact binary + gzip — roughly 300MB/year for ETH. Work fully offline with zero API latency.
DataFrame, NumPy, or iterators — pip install backdb and pair with pandas.
OKX & Binance perpetuals in one schema — compare venues with the same code path.
Daily coverage, gap detection, spike alerts — trust the bars you backtest on.
# ETH 1m bars (free tier, no key) curl "https://api.backdb.io/v1/bars?\ exchange=okx&symbol=ETH-USDT-SWAP&\ start=2026-01-01&end=2026-01-02&interval=60" # Pro: 1s bars curl -H "X-API-Key: bdb_your_key" \ "https://api.backdb.io/v1/bars?\ exchange=okx&symbol=ETH-USDT-SWAP&\ start=2026-01-01&end=2026-01-02&interval=1"
Sign up with email and start backtesting.