Hummingbot 第1章:Hummingbot 简介与安装
Hummingbot 是一个开源的加密货币量化交易机器人框架,专注于做市和套利策略。它支持连接各大交易所,通过自动化策略执行交易操作。
什么是 Hummingbot
Hummingbot 由 CoinAlpha 公司于 2019 年创立,是一个用 Python 编写的开源项目。它提供了一系列预置的交易策略模板,用户无需编写大量代码即可快速搭建自己的交易机器人。
核心特性
| 特性 | 说明 |
|---|---|
| 开源免费 | Apache 2.0 协议,完全开源,社区活跃 |
| 多交易所支持 | 支持 20+ CEX 和 DEX 交易所连接 |
| 策略模板 | 内置纯做市、跨交易所做市、套利等策略 |
| 脚本扩展 | 支持 Python 脚本自定义策略逻辑 |
| 回测引擎 | 内置历史数据回测功能,验证策略有效性 |
适用场景
- 做市(Market Making):在交易所提供买卖深度,赚取买卖价差
- 套利(Arbitrage):利用不同交易所之间的价差进行低买高卖
- 流动性管理:为代币项目提供交易对流动性支持
系统要求
在安装 Hummingbot 之前,需要确认系统满足以下最低要求:
操作系统
| 操作系统 | 支持状态 | 说明 |
|---|---|---|
| Ubuntu 20.04+ | 完全支持 | 推荐使用 Linux 服务器部署 |
| macOS 12+ | 完全支持 | 适合开发和测试 |
| Windows 10/11 | 有限支持 | 部分功能受限,建议使用 WSL2 |
硬件要求
- CPU:2 核以上(推荐 4 核)
- 内存:最低 4 GB(推荐 8 GB)
- 磁盘:至少 10 GB 可用空间
- 网络:稳定的互联网连接,延迟越低越好
软件依赖
- Docker(推荐安装方式)或 Python 3.9+
- Git(源码编译安装时需要)
- Conda(可选,用于环境管理)
安装方式概述
Hummingbot 提供三种主要的安装方式:
Docker 安装(推荐)
Docker 安装是最简便的方式,所有依赖都封装在容器中:
# 拉取最新镜像
docker pull hummingbot/hummingbot:latest
# 创建数据目录
mkdir -p ~/hummingbot_data
# 运行容器
docker run -it \
--name hummingbot \
--network host \
-v ~/hummingbot_data:/home/hummingbot/data \
hummingbot/hummingbot:latest
源码编译安装
适合需要二次开发或定制功能的用户:
# 克隆仓库
git clone https://github.com/hummingbot/hummingbot.git
cd hummingbot
# 安装依赖
conda create -n hummingbot python=3.10
conda activate hummingbot
pip install -r requirements.txt
# 编译安装
python setup.py build_ext --inplace
pip install -e .
Conda 一键安装
通过 Conda 包管理器快速安装:
# 创建并激活环境
conda create -n hummingbot python=3.10
conda activate hummingbot
# 使用 pip 安装
pip install hummingbot
验证安装
启动 Hummingbot 后,可以通过以下命令验证安装是否成功:
# 进入交互式终端
hummingbot
# 在 Hummingbot 终端中输入
>>> status
# 如果显示以下信息,说明安装成功:
# ====== Status ======
# Currently not connected to any exchange
# No strategy is currently running
检查版本号
# 使用 Docker
docker exec hummingbot hummingbot --version
# 使用源码安装
hummingbot --version
# 示例输出
# Hummingbot v1.26.0
目录结构
Hummingbot 安装后的主要目录结构如下:
~/hummingbot_data/
├── conf/
│ ├── conf_client.yml # 客户端配置
│ └── conf_strategy.yml # 策略配置模板
├── logs/
│ └── hummingbot.log # 运行日志
├── data/
│ └── ... # 交易数据和回测结果
└── scripts/
└── ... # 自定义脚本
社区资源
- 官方网站:https://hummingbot.org
- GitHub 仓库:https://github.com/hummingbot/hummingbot
- 官方文档:https://docs.hummingbot.org
- Discord 社区:https://discord.gg/hummingbot