CCXT

Connect and trade with over 100 cryptocurrency exchanges through a unified API library for JavaScript, Python, PHP, C#, and Go.

Connect and trade with over 100 cryptocurrency exchanges through a unified API library for JavaScript, Python, PHP, C#, and Go.

The gist

CCXT (CryptoCurrency eXchange Trading Library) is an open-source library that provides a unified interface for connecting to and trading with over 100 cryptocurrency exchanges. It is designed for developers, data scientists, and technically-skilled traders who need to build trading bots, conduct market analysis, develop indicators, or create any software that interacts with cryptocurrency markets. The library abstracts away the differences between various exchange APIs, simplifying cross-exchange operations.

What it does

  • Connects to over 100 cryptocurrency exchanges via a single, unified API.
  • Implements both public API endpoints for market data and private endpoints for authenticated trading and account management.
  • Normalizes market data across different exchanges to simplify cross-exchange analysis and arbitrage.
  • Fetches tickers, order books, trade histories, OHLCV data, and account balances.
  • Creates, cancels, and queries market and limit orders programmatically.
  • Provides a command-line interface (CLI) for direct interaction with exchanges from the terminal.

How it works

Users install CCXT as a package in their preferred language (JavaScript/TypeScript, Python, PHP, C#, or Go). To use it, a developer instantiates a client for a specific exchange, optionally providing API keys for private access. The library handles the API requests, rate limiting, and data parsing, returning structured objects. It's an open-source library distributed under the MIT license, meaning it is free to use for commercial and open-source projects.

Best for

Developers and quantitative traders building custom cryptocurrency trading bots, market analysis tools, or any application requiring programmatic access to multiple crypto exchanges.

Watch out for

When using certain exchanges participating in the 'builder program', a small, optional fee is added by default to support the project; this fee can be disabled in the configuration.