Exchanges¶
dccd supports 8 exchanges: the 7 spot venues below plus Kraken Futures
(krakenfutures), a derivatives-only adapter (hourly funding + deep perp
klines — see Collect derivative data (funding, open interest, …)). Each adapter declares its
Capability per data type and transport, and the
engine honours them — an unsupported request is rejected early rather than
silently returning wrong or partial data.
Binance and Bybit additionally serve derivative data (funding, open interest,
futures klines) on their :perp/:quarter markets — also covered in
Collect derivative data (funding, open interest, …).
Capabilities¶
You pick a data type and an operation — backfill (download history) or stream (collect live). Each cell lists the data types supported for that operation; the notes below qualify the limits.
Exchange |
Backfill (history) |
Stream (live) |
|---|---|---|
Binance |
OHLC · trades · book |
OHLC · trades · book |
Coinbase |
OHLC (300/req) · book · trades (recent) |
trades |
Kraken |
OHLC (720 recent) · trades · book |
OHLC · trades · book |
Bybit |
OHLC · book |
OHLC · trades · book |
OKX |
OHLC · trades · book |
OHLC · trades · book |
Bitfinex |
OHLC · trades · book |
OHLC · trades |
BitMEX |
OHLC (1m/5m/1h/1d) · trades · book |
OHLC · trades · book |
Note
Trades backfill is cursor-paginated — it drains the full requested window, not just the first capped page.
recent means no deep history through the public API; a deeper request is rejected or clamped early, never silently truncated. Bybit spot has no trade history at all.
Order-book backfill captures a single point-in-time snapshot (there is no historical order book); use a stream to record the book over time.
The stream column lists only channels with a real implementation; undeclared channels raise
NoCapability.
OHLC field fidelity¶
Not every exchange returns every OHLC field natively. Missing fields are stored
as null — never fabricated.
Exchange |
|
|
|---|---|---|
Binance |
✅ native |
✅ native |
Bybit / OKX |
✅ native |
— null |
Kraken |
✅ vwap × volume (exact) |
✅ native |
Coinbase / Bitfinex / BitMEX |
— null |
— null |
Per-exchange pages¶
Adding an exchange¶
Add an adapter under dccd/sources/ implementing the relevant Source
protocol mixins and a capabilities() declaration, then register it in
dccd.application.service_factory.build_registry.