因子与打分篇:从因子库到聚合 Z-score
对应原书第 4~5 章:因子从哪里来、怎么初选,以及全书最亲民的模型——股票筛选与聚合 Z-score 打分。这两章是本平台因子工作流最直接的理论对照。
第 4 章:因子的分类学
书中把候选因子整理成一张大表(附录 4A 逐个给定义),大致八类:估值(市盈率、市净率、股息率)、偿债能力(流动比率、利息保障)、运营效率(资产周转率)、盈利能力(ROE、毛利率)、财务风险(杠杆率)、流动性(换手率、市值)、技术面(动量、反转、波动率)、经济与其他(宏观敏感度、分析师预期)。
因子初选的两条标准,与七大原则一脉相承:
- 经济逻辑先行:能讲清”为什么这个特征应该带来超额收益”(风险补偿?行为偏差?制度约束?);
- 统计证据跟上:单因子检验看它与后续收益的相关性(就是 IC)与分组收益单调性——本平台因子分析页的 IC 序列与分层回测,正是这一步的标准作业。
还有一条工程忠告:因子间高相关就是冗余。合成前先看相关矩阵,留代表、去马甲,否则等权合成实际上是给同一类信息偷偷加权。
第 5 章:筛选、排序与聚合 Z-score
序贯筛选:最古老的选股法
筛选(screening)按条件逐层过滤:先留 PE 最低的 30%,再留其中 ROE 最高的 50%……附录 5A 收录了格雷厄姆、林奇、奥肖内西等著名投资策略的筛选法版本——量化不神秘,老派大师的选股清单本来就是一组筛选规则。缺点:条件顺序影响结果,且”差一点点”的股票被一票否决,信息浪费。
聚合 Z-score:本书的招牌模型
更好的做法是让所有因子同时说话。对每个因子 k,在截面上标准化:
z(i,k) =(因子值 − 截面均值)÷ 截面标准差
再加权合成总分:Z(i) = w₁·z(i,1) + w₂·z(i,2) + …。权重可以等权起步,也可以按各因子历史 IC 或 IC 稳定性加权——预测力强、更稳定的因子话语权更大。按总分排序,买入高分组,就得到一个组合。
两个实务细节(附录 5B):异常值要先处理——财务比率动辄出现极端值,标准做法是缩尾(winsorize)或直接用排名代替原始值;量纲问题被 Z-score 天然解决——市盈率倍数和动量百分比在标准化后才可相加。
对应本平台
这条链在平台上完整存在:因子函数返回截面值 → 以 RankIC 评价(排名就是最稳健的标准化)→ 回测按因子值排序取 top-N。平台目前是单因子 Z-score 模型;写一个把多个因子截面标准化后加权求和的新因子函数注册进 factors.py,你就把它升级成了聚合 Z-score 模型——不需要改动平台任何其他代码。
本页带走的三句话
- 因子初选双标准:经济逻辑讲得通 + 单因子 IC 与分组单调性撑得住;
- 聚合 Z-score = 截面标准化 + 加权求和:解决量纲问题,让所有因子同时说话;
- 合成前先查因子相关性、先处理异常值——等权合成高相关因子等于偷偷加权。