Skip to content

Alpha Zoo:452 个因子武装你的策略库

一行命令,跑完整个因子动物园的横截面评分:vibe-trading alpha bench --zoo gtja191 --universe csi300 --period 2018-2025 --top 20

什么是 Alpha Zoo?

Alpha Zoo(因子动物园)是 Vibe-Trading 内置的量化因子库。它收集了来自学术界和业界经典研报的 452 个横截面 alpha 因子,并在此基础上构建了一套完整的因子研究工具链:浏览、评分、对比、分类、代码导出。

它的核心理念是:你不必从零创造因子,但你需要知道哪些因子在你的市场里有效

四大量子动物园

Zoo数量来源许可
qlib158154微软 Qlib Alpha158(Apache-2.0)Apache-2.0
alpha101101Kakushadze (2015) 论文 arXiv:1601.00991公式属数学内容
gtja191191国泰君安《191 个短周期交易型 alpha 因子》公式属数学内容
academic6Fama-French 5 + Carhart 动量公开学术文献

每个因子都以纯函数的形式实现,附带完整的公式文档和中文注释。因子之间不存在 lookahead 风险——在算子层就已经禁用。

Qlib158(154 个)

源自微软 Qlib 的 Alpha158 因子集。这些因子主要基于价格和成交量数据计算,覆盖趋势、反转、波动率、流动性等常见量化维度。由于来自 Apache-2.0 开源项目,代码风格与 Qlib 保持高度一致,适合熟悉 Qlib 的用户直接上手。

Alpha101(101 个)

来自 Zura Kakushadze 在 2015 年发表的经典论文《101 Formulaic Alphas》。这是全球被引用最广泛的 alpha 因子集合之一,涵盖了从简单移动平均到复杂横截面排名的各种公式化策略。Vibe-Trading 的实现忠实于论文公式,并标记为"公式属于数学内容"以避免版权争议。

GTJA191(191 个)

来自国泰君安证券 2014 年的研报《191 个短周期交易型 alpha 因子》。这是四个 zoo 中数量最多的一个,也是对 A 股市场最具针对性的因子集合。所有因子都附带中文名称和中文 docstring,方便国内量化研究者快速理解和使用。

Academic(6 个)

包括 Fama-French 五因子(市场、规模、价值、盈利、投资)和 Carhart 动量因子。这些是金融学术界的"标准参照系",适合作为基准对比和回归分析的控制变量。

核心工具链

因子浏览

bash
vibe-trading alpha list          # 列出全部因子
vibe-trading alpha show <id>      # 查看单个因子的公式与源码

支持按 zoo 筛选、关键词搜索、按类别分组。每个因子的展示页面包含:

  • 因子编号与名称
  • 公式逻辑与计算说明
  • 完整 Python 源码
  • 所属 zoo 与引用来源

因子评分(Bench)

bash
# 对整个 zoo 评分
vibe-trading alpha bench --zoo gtja191 --universe csi300 --period 2018-2025 --top 20

# 严格模式:加入随机控制 + OOS 切分
vibe-trading alpha bench --strict --zoo qlib158 --universe hs300 --period 2020-2025

评分输出包含:

  • IC(信息系数):因子值与未来收益的截面相关性
  • IR(信息比率):IC 均值 / IC 标准差
  • Alive / Reversed / Dead:因子有效性的三态分类
  • Rank IC:秩相关系数,减少极端值影响
  • IC Positive Ratio:IC 大于零的比例

因子对比(Compare)

bash
vibe-trading alpha compare <id1> <id2> ... --sort ir

这一功能让你把手选的几个因子放在同一 universe 和同一时间区间上做头对头比较。仅评估指定因子,不会把整个 zoo 跑一遍。结果以排名表展示,标出每个因子与榜首的差距。

四端支持:CLI / Web UI Compare 视图 / REST API(POST /alpha/compare + SSE)/ Agent Tool。

Alpha 对比展示

在 Web UI 中,你可以在因子目录中勾选多个因子,点击 Compare 按钮即可生成流式更新的排名对比表。对比结果支持导出。

安全机制

Alpha Zoo 的因子实现有严格的安全保护:

  • AST 纯度门禁:自动检查因子函数是否包含副作用、网络调用或非纯操作
  • 300 行 lookahead 哨兵测试:确保因子不会使用未来数据
  • pytest-socket 网络阻断:在测试期间禁止网络访问,确保因子不依赖外部数据
  • 每 zoo 独立 LICENSE.md:明确因子代码的授权边界

实战提示

1. 选哪个 Zoo 开始?

  • 如果你主要做 A 股:从 GTJA191 开始
  • 如果你做 美股:从 Alpha101 或 Qlib158 开始
  • 如果你想做学术研究:加上 Academic 作为基准

2. 怎么组合因子?

Vibe-Trading 支持 Multi-Factor Skill,可以将多个 alpha 因子加权组合形成复合因子。你可以用 multi-factor skill 实现等权、IC 加权、IR 加权等组合方式。

3. 怎么验证因子有效性?

除了标准的 Rank IC 指标,建议使用严格模式 bench(--strict),它会在同 universe 上加入随机控制 + 训练/测试 OOS 切分,帮助你识别"只是跟随市场 beta"的伪因子。

4. 从因子到策略

Alpha Zoo 的因子本身是横截面信号。你需要结合 strategy-generate skill 将因子信号转化为可交易的策略逻辑(如选股排序、阈值开仓、行业中性化),再用回测引擎验证完整策略表现。

检验标准

读完本文后,你应该能回答:

  • 四个 Zoo 分别来自哪里?它们各自的主要特点是什么?
  • 如何用 CLI 完成一个因子的评分和对比?
  • Vibe-Trading 如何保证因子实现的安全性和纯洁性?
  • 从因子到完整交易策略,一般需要经过哪些步骤?
最近更新

基于 MIT LICENSE 许可发布