2. 量化投资与Alpha因子基础
在进入遗传编程自动挖掘因子之前,必须先建立一套关于Alpha因子的共同语言。否则,后续的符号回归、适应度设计、因子去相关都会变成“调参玄学”。本节围绕五个问题展开:Alpha因子是什么、从哪里来、如何分类、怎样评价、在策略中承担什么角色。
一、核心原理:Alpha因子的定义与收益分解
量化策略的收益通常可以拆成两部分:与市场共同波动的部分,以及独立于市场的超额部分。用经典表述即:
R_p = α + β · R_m + ε
R_p:组合收益
R_m:基准(市场)收益
β :组合对基准的暴露
α :剔除基准暴露后的超额收益
ε :残差(噪声或未解释部分)
Alpha因子,就是能够对未来这段超额收益(或未来收益排序)具有稳定预测能力的变量或表达式。它可以是估值、动量、波动率等原始字段,也可以是由多个字段经过算子组合而成的表达式,例如 rank(ts_delta(close, 5) / ts_std(volume, 20))。遗传编程挖掘的目标,正是自动搜索这类表达式,而不是人工枚举。
二、Alpha因子的来源:从经济逻辑到数据挖掘
因子的来源决定了它的可解释性与衰减风险。常见来源可归纳为四类:
- 基本面来源:估值(PE、PB)、盈利质量(ROE、毛利率)、成长(营收增速)。逻辑清晰,但更新频率低、拥挤度高。
- 量价来源:动量、反转、换手率、波动率、流动性。数据频率高,适合短周期,但易受交易成本侵蚀。
- 事件与情绪来源:财报公告、分析师预期修正、新闻情感、资金流。信息增量大,但清洗与对齐难度高。
- 数据挖掘来源:由遗传编程、神经网络等在大量算子空间中自动搜索得到。覆盖广、非线性强,但必须用严格样本外检验防止过拟合。
本课程聚焦第四类,但前两类是理解因子经济含义的基础。没有逻辑约束的纯挖掘,往往得到的是噪声的精致拟合。
三、Alpha因子的分类与评价指标
按预测方向可分为正向因子与反向因子;按处理方式可分为原始因子、标准化因子、中性化因子;按周期可分为高频(分钟级)、中频(日频)、低频(周月频)。分类的意义在于:不同类别对应不同的评价方式与组合方式。
评价一个候选因子,不能只看IC均值。下表给出常用指标及其含义:
| 指标 | 含义 | 经验参考 |
|---|---|---|
| IC(信息系数) | 因子值与未来收益的横截面相关系数 | |IC| > 0.03 值得关注 |
| ICIR | IC均值 / IC标准差,衡量稳定性 | > 0.3 较稳健 |
| Rank IC | 秩相关,抗极端值 | 与IC结合看 |
| 多空收益 | 分组后多头减空头的收益差 | 需扣除成本 |
| 换手率 | 因子导致的持仓变化频率 | 越高成本越大 |
| 衰减速度 | 预测能力随持有期下降的快慢 | 决定调仓周期 |
这些指标之间存在权衡。高IC但换手极高的因子,实盘可能亏损;低IC但稳定且低换手的因子,反而更适合组合。
四、方法流程:从原始数据到可用因子
- 数据准备:对齐价格、成交量、财务字段,处理停牌与缺失。
- 因子构造:人工或遗传编程生成表达式。
- 预处理:去极值、标准化、行业与市值中性化。
- 评价:计算IC、ICIR、分组收益、换手率。
- 筛选与组合:剔除高相关因子,等权或优化权重合成。
- 回测与归因:验证样本外表现,分析收益来源。
# 因子评价伪代码
ic = cross_section_corr(factor, forward_return)
icir = ic.mean() / ic.std()
groups = quantile_group(factor, n=5)
long_short = groups[4].mean() - groups[0].mean()
turnover = position_change(factor)
五、案例与场景:一个动量因子的评价
假设构造因子 mom20 = close / ts_delay(close, 20) - 1。在A股日频数据上评价,可能得到:IC均值约0.02,ICIR约0.25,多空年化约8%,但换手率极高。此时结论不是“因子无效”,而是“需要降频或叠加反转过滤”。这正是遗传编程可以发挥作用的地方:自动搜索 mom20 与波动率、换手率的组合,寻找更稳定的表达式。
六、误区与复盘
- 误区一:IC高就是好因子。未考虑换手与容量,实盘可能被成本吞噬。
- 误区二:忽略中性化。因子可能只是市值的代理,暴露了风格风险。
- 误区三:样本内过拟合。遗传编程搜索空间大,必须留出严格样本外与滚动检验。
- 误区四:因子越多越好。高相关因子堆叠不会提升信息增量,反而放大噪声。
理解Alpha因子的定义、来源、分类与评价,是后续遗传编程挖掘的“坐标系”。只有评价标准清晰,自动搜索才不会沦为盲目拟合。