Awesome Systematic Trading 是一个精选的量化交易资源集合库
Awesome Systematic Trading 详细部署教程
1. 项目简介
Awesome Systematic Trading 是一个精选的系统化交易(量化交易)资源集合库,汇集了用于研究、开发和运行系统化交易策略的优质论文、软件、书籍、文章等资源。该项目由 paperswithbacktest 团队维护,包含 108 个用于研究和实际交易的库和包,以及 4,843 篇已复现的论文策略。
核心特点:
- 完整的资源索引:涵盖回测框架、交易机器人、技术指标、投资组合优化、数据源、经纪商 API 等多个类别
- 实证复现结果:每个策略都附带实测的夏普比率等性能指标
- 持续更新:社区驱动的资源集合,定期更新维护
注意:该项目本身是一个资源集合库(Awesome List),不是一个可直接运行的软件。因此,本教程主要讲解如何搭建用于量化交易的开发环境,以及如何使用相关的配套工具。
2. 环境准备
2.1 系统要求
根据官方开发环境文档,推荐使用以下配置:
| 组件 | 用途 | 说明 |
|---|---|---|
| Git | 版本控制 | 用于克隆和管理仓库 |
| Miniconda | Python 环境管理 | 推荐使用 Miniconda 管理 Python 环境 |
| VSCode | 集成开发环境 | 推荐使用 VSCode 作为 IDE |
| Python | 运行环境 | 推荐 Python 3.8+ |
2.2 安装前置依赖
安装 Git:
1 | # Ubuntu/Debian |
安装 Miniconda:
从 Miniconda 官网下载对应系统的安装包并安装。
安装 VSCode:
从 VSCode 官网下载安装,并安装以下扩展:
- Python 扩展
- Jupyter 扩展(如需使用 Notebook)
3. 获取项目
3.1 克隆仓库
1 | git clone https://github.com/paperswithbacktest/awesome-systematic-trading.git |
3.2 创建 Python 环境
该项目使用 Miniconda 管理 Python 环境:
1 | # 创建 conda 环境 |
4. 配置开发环境
4.1 VSCode 配置
该仓库包含预配置的 VSCode 配置文件:
settings.json 配置:
editor.formatOnSave:设置为 true,保存文件时自动格式化代码python.defaultInterpreterPath:指向 Miniconda Python 解释器路径
launch.json 配置:
- 配置名称:“Current file”
- 调试器类型:debugpy
- 调试程序:当前打开的文件
- Python 解释器路径:指向 Miniconda Python
4.2 选择 Python 解释器
在 VSCode 中选择正确的 Python 解释器:
- 按
Ctrl+Shift+P(macOS 为Cmd+Shift+P) - 输入 “Python: Select Interpreter”
- 选择 conda 环境中的解释器
5. 安装核心依赖包
该项目涉及多个 Python 包用于系统化交易实现:
5.1 基础依赖
1 | # 数据分析和计算 |
5.2 交易相关库
1 | # 投资组合和风险分析 |
5.3 推荐工具库
根据项目资源列表,以下库值得安装:
| 类别 | 推荐库 | 用途 |
|---|---|---|
| 回测框架 | vectorbt | 基于 pandas/numpy 的快速回测 |
| 回测框架 | zipline | 事件驱动回测系统 |
| 回测框架 | backtesting.py | 轻量级回测框架 |
| 事件驱动 | vnpy | 开源量化交易系统框架 |
| 数据源 | yfinance | Yahoo Finance 数据获取 |
| 数据源 | AkShare | 中国股票数据接口 |
| 投资组合 | PyPortfolioOpt | 投资组合优化 |
| 风险分析 | pyfolio | 投资组合和风险分析 |
6. 运行策略示例
6.1 浏览策略文件
仓库中的策略实现位于 static/strategies/ 目录下,包含以下示例策略:
| 策略名称 | 类型 | 说明 |
|---|---|---|
| FED Model | 宏观经济指标 | 使用收益率差距预测市场回报 |
| FX Carry Trade | 外汇套利 | 外汇套利交易策略 |
| Value Factor CAPE Effect | 价值策略 | 基于 CAPE 比率选择最低估值国家 |
| Crude Oil Predicts Equity Returns | 宏观经济指标 | 利用原油价格预测股票回报 |
| Momentum Rotational System | 动量策略 | 资产类别动量轮动 |
6.2 运行策略
在 VSCode 中运行策略:
- 打开
static/strategies/目录下的策略文件 - 按
F5使用调试器运行 - 在调试控制台中观察结果
注意:这些示例策略基于 QuantConnect 平台实现,继承自
QCAlgorithm基类。如需在本地运行,可能需要适配相应的回测框架。
7. 使用 PWB Toolbox(推荐)
paperswithbacktest 团队开发了 pwb-toolbox 工具包,提供数据集、策略模板、执行模块和性能分析功能。
7.1 安装
1 | pip install pwb-toolbox |
需要 Python 3.10 或更高版本。
7.2 配置数据集访问
1 | # 方式一:使用 PWB API Key |
7.3 加载数据集
1 | import pwb_toolbox.datasets as pwb_ds |
7.4 运行回测
1 | import pwb_toolbox.backtesting as pwb_bt |
8. 常见问题与解决方案
8.1 Python 解释器未找到
问题:VSCode 无法找到 Python 解释器。
解决方案:确保 Miniconda 已安装,且 settings.json 中的路径与系统匹配。
8.2 缺少依赖包
问题:运行时提示缺少包。
解决方案:使用 conda 或 pip 安装缺失的包:
1 | conda install package_name |
8.3 调试不工作
问题:F5 无法启动调试。
解决方案:验证 launch.json 配置,确保 debugpy 已安装。
9. 部署架构总结
| 环节 | 工具/配置 | 说明 |
|---|---|---|
| 环境管理 | Miniconda | Python 3.8+ 环境 |
| IDE | VSCode | 含预配置的调试设置 |
| 核心依赖 | pandas/numpy/backtrader | 数据分析和回测 |
| 数据访问 | pwb-toolbox | 多资产类别数据集 |
| 策略示例 | static/strategies/ | 基于论文的实现 |
需要注意的是,Awesome Systematic Trading 本质上是一个资源导航项目,部署工作的核心是搭建能够运行其推荐工具和策略的开发环境。你可以通过 Miniconda + VSCode 搭建基础环境,再配合 pwb-toolbox 获取数据和运行回测。建议从项目中的策略示例开始,逐步探索 108 个推荐库,构建适合自己的量化交易工具链。





