CCXT unified crypto exchange library (100+ exchanges). Free public market data. Fallback when OKX is unavailable.
71
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Medium
Suggest reviewing before use
CCXT is a unified cryptocurrency exchange trading library supporting 100+ exchanges including Binance, Bybit, OKX, Coinbase, Kraken, and more. Public market data (OHLCV, tickers, order books) requires no API key.
pip install ccxtimport ccxt
exchange = ccxt.binance({"enableRateLimit": True})
# Fetch daily OHLCV
ohlcv = exchange.fetch_ohlcv("BTC/USDT", "1d", limit=100)
# Returns: [[timestamp, open, high, low, close, volume], ...]
# Fetch ticker
ticker = exchange.fetch_ticker("ETH/USDT")
print(f"ETH price: {ticker['last']}")| Method | Description | Returns |
|---|---|---|
fetch_ohlcv(symbol, timeframe, since, limit) | Historical candles | [[ts, o, h, l, c, v], ...] |
fetch_ticker(symbol) | Latest quote | {last, bid, ask, volume, ...} |
fetch_tickers(symbols) | Batch quotes | {symbol: ticker} |
fetch_order_book(symbol, limit) | Order book | {bids, asks, timestamp} |
fetch_trades(symbol, since, limit) | Recent trades | [{price, amount, side, timestamp}, ...] |
1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 12h, 1d, 1w, 1M
Note: not all exchanges support all timeframes. Use exchange.timeframes to check.
CCXT uses slash format: BTC/USDT, ETH/BTC, SOL/USDT
The project's DataLoader automatically converts BTC-USDT (hyphen) to BTC/USDT (slash).
Set via environment variable: CCXT_EXCHANGE=binance (default)
Popular exchanges: binance, bybit, okx, coinbase, kraken, bitget, gate
The project has a built-in CCXT DataLoader at backtest/loaders/ccxt_loader.py. It serves as a fallback when the OKX loader is unavailable.
For long history, CCXT paginates via the since parameter (millisecond timestamp). The built-in loader handles this automatically (up to 200 pages).
8643fcd
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.