Coinbase Pro × Tardis.dev — Documentation Presentation

This presentation explains how to combine Coinbase Advanced Trade APIs (successor to Coinbase Pro) with Tardis.dev historical market data to build robust research and trading workflows. It covers API roles, authentication, data access patterns, integration architecture, safeguards, and references to 10 official resources.

Why pair exchange trading APIs with historical datasets?

Live trading requires fast, authenticated order endpoints; research and model calibration need deep, reliable history. Coinbase’s Advanced Trade suite provides secure account, order, and product management with both REST and WebSocket interfaces suitable for production trading. Tardis.dev supplies tick-level market history and replayable feeds across major venues, letting you simulate strategies under realistic microstructure conditions and stress-test against volatile regimes. Together, they form a clean split of responsibilities: Coinbase for execution, Tardis.dev for history and replay.

Core components and responsibilities

Coinbase (Advanced Trade)

  • Private REST: create/cancel orders, manage portfolios, query fills and fees.
  • Public endpoints: products, order books, tickers—handy for lightweight state checks.
  • WebSocket: live market data streams for low-latency monitoring and reactive logic.
  • SDKs: official Python and examples for TypeScript/Go/Java to reduce boilerplate.

Tardis.dev

  • HTTP API: minute-sliced NDJSON with exchange-native messages and timestamps.
  • Replay APIs: stream whole periods for backtesting and event-driven simulation.
  • Local server: tardis-machine offers HTTP/WebSocket with built-in caching.
  • Clients: Python and Node libraries with async iteration and on-disk caching.

End-to-end workflow (reference design)

  1. Collect & curate history: Use Tardis.dev to download or replay granular trades and order-book updates for your markets of interest. Normalize where needed, but preserve exchange-native fields for microstructure analysis.
  2. Research: Build factors and features (e.g., imbalance, queue position proxies, volatility buckets). Validate on multiple regimes to reduce overfitting.
  3. Paper trade via replay: Drive your strategy with Tardis.dev’s replay stream to test handling of disconnects, gaps, and bursty updates—conditions that mirror production.
  4. Promote to live: Port strategy logic to consume Coinbase WebSocket for live market state while placing authenticated orders via Advanced Trade REST endpoints.
  5. Monitor & roll back: Implement latency, P&L, and slippage dashboards. Keep a kill-switch and safe defaults (e.g., cancel-on-disconnect) to contain risk.
Authentication, rate limits, and reliability tips

Minimal integration sketch

Pseudocode outline showing the handoff from historical replay to live trading. Replace with official SDKs:

// 1) Backtest with Tardis.dev replay
for (event of tardis.replay("coinbase", "BTC-USD", "2024-01-01", "2024-06-30")) {
  strategy.update(event);
  if (strategy.should_trade()) simBroker.place(strategy.order());
}

// 2) Go live with Coinbase Advanced Trade
ws = coinbase.ws("BTC-USD");
ws.on("book_update", (u) => strategy.update(u));
if (strategy.should_trade()) {
  rest.placeOrder({ product_id: "BTC-USD", side: "buy", size: "0.01", type: "limit" });
}

Common pitfalls & troubleshooting

s