Open-source crypto market making and high-frequency trading bot framework supporting CEX/DEX multi-exchange strategy customization and automated execution.
Hummingbot Project Overview#
Hummingbot is an open-source algorithmic trading bot framework with a core mission to "democratize high-frequency trading," enabling ordinary traders to use market making and high-frequency strategies previously accessible only to large institutions.
Core Problems Solved#
- High barrier to market making: Provides ready-made strategy frameworks without complex mathematical models or expensive infrastructure
- Exchange fragmentation: Unified connector layer abstracts API differences between CEXs (Binance, Coinbase, etc.) and DEXs (Uniswap, dYdX, etc.)
- Strategy customization difficulty: Supports flexibility from graphical configuration to pure code (Python)
Core Strategy Engine#
- Pure Market Making: Place buy/sell orders around benchmark price on a single exchange to earn spreads
- Cross-Exchange Market Making: Use prices from other exchanges as reference to place orders on target exchange (requires hedging)
- Arbitrage: Monitor price differences between two exchanges or trading pairs, automatically buy low and sell high
- AMM Arbitrage: Connect AMM protocols (like Uniswap) with CEX for arbitrage
- Liquidity Mining: Support participation in specific project liquidity mining reward programs
Connector Support#
- CEX Connectors: Binance, Coinbase Pro, Kraken, KuCoin, Crypto.com, etc.
- DEX Connectors: DEXs on Ethereum, Polygon, BSC networks (Uniswap, SushiSwap, PancakeSwap, dYdX)
- Gateway: Middleware handling blockchain node communication, wallet signing, and on-chain transactions
Risk and Order Management#
- Order Levels: Support for multi-tier order placement
- Inventory Risk Control: Dynamically adjust mid-price based on base currency inventory
- Hanging Orders: Allow orders to be re-placed with specific logic after cancellation
- Price Source: Support using external feeds as internal pricing reference
Architecture Highlights#
- Written in Python, core architecture uses
asynciofor high-concurrency network I/O - Cython acceleration: Performance-sensitive modules (like order book reconstruction) use Cython or C++ libraries
- Event-driven: Strategy logic triggered by events (
on_tick,on_order_filled) - Configuration separation: YAML files manage configuration with global and strategy-specific separation
- Gateway container: DEX support runs Gateway service via Docker container
Installation and Deployment#
Requirements#
- OS: Linux (Ubuntu 20.04+), macOS, Windows (via WSL2/Docker)
- Docker: Highly recommended for deployment
- Native: Python 3.10+
Docker Quick Start#
docker pull hummingbot/hummingbot:latest
docker run -it --name hummingbot-instance \
-e CONFIG_PASSWORD=my_password \
-v $(pwd)/hummingbot_files:/home/hummingbot \
hummingbot/hummingbot:latest
CLI Command System#
connect <exchange_name>: Configure API keyscreate: Interactive wizard to create strategiesstart: Start current strategystatus: View positions and order statushistory: View P&L historyconfig: Dynamically modify parameters
Interaction and Monitoring#
- CLI Interface: Primary interaction interface
- Telegram Integration: Remote control and receive alerts
- Kill Switch: Emergency circuit breaker, one-click position close or strategy stop
Use Cases#
- Individual traders running passive market making strategies to earn spreads
- Liquidity mining supported by Hummingbot Foundation grants
- Developers building custom commercial quantitative strategies based on the framework
Governance and Ecosystem#
- DAO governance using HBOT token
- Bounty System: Community developers earn rewards by submitting Connectors or strategies
- Hummingbot Dashboard: Web interface monitoring panel