3. 因子体系设计原则

多因子行业轮动的第一步不是写代码,而是把"因子体系"设计对。一个可用的因子体系需要同时回答三个问题:用哪些因子(分类与覆盖)、每个因子为什么有效(金融逻辑)、如何保证回测结果可信(避免未来函数与幸存者偏差)。三者缺一,评分模型就可能"看起来很美、实盘失效"。

一、因子分类:五类因子各司其职

行业轮动中常用的因子可归为五类,它们刻画的是行业不同维度的属性:

  • 动量类:过去20/60/120日收益率、相对强弱(行业指数/基准指数)、动量加速度。逻辑是趋势延续与资金惯性,适合捕捉中短期轮动。
  • 估值类:行业PE、PB、PS及其历史分位数、股息率。逻辑是均值回归与风险溢价补偿,低估值行业在中期具备更高预期收益。
  • 质量类:ROE、毛利率、经营现金流/净利润、资产负债率。逻辑是盈利能力与财务稳健性带来持续超额收益,防御属性强。
  • 成长类:营收增速、净利润增速、分析师一致预期上调比例。逻辑是景气度上行驱动盈利预期修正。
  • 情绪类:换手率、成交额占比、北向资金净流入、融资余额变化。逻辑是资金行为与市场关注度,常作为反转或确认信号。

分类的意义在于控制共线性与覆盖度:同一类因子高度相关,若五类中只取动量,模型就退化为单因子趋势跟踪;若五类均衡配置,则能兼顾进攻与防御。实践中建议每类保留1~2个代表因子,总因子数以8~12个为宜。

二、因子构建的金融逻辑:先有假设,再有公式

因子不是"算出来有效就用",而是先有经济假设。以动量因子为例,其金融逻辑是"投资者对信息反应不足导致价格趋势延续",因此构建时应使用剔除最近一个月的收益率(12-1动量),以规避短期反转效应。若直接使用最近20日收益,测出的可能不是动量而是反转。

再以估值因子为例,直接用行业PE绝对值会受行业属性干扰(银行天然低PE、科技天然高PE),因此应转换为行业内历史分位数或相对全市场估值折溢价。质量因子则需注意财务数据的披露滞后:一季报4月底才披露,若在3月就用一季报ROE,就是典型的未来函数。

构建因子的通用检查顺序:①经济逻辑是否成立;②数据在决策时点是否可得;③是否需要行业中性化或标准化;④方向(正负号)是否与假设一致。

三、两类致命偏差:未来函数与幸存者偏差

未来函数指在时点t使用了t之后才可得的信息。常见形式包括:用当期收盘价计算当日信号并当日成交、用未披露的财报数据、用事后修正过的历史数据、用全样本分位数做标准化。防护方法是严格建立信息可用时点表:行情数据T日收盘后可用、T+1开盘成交;财务数据按法定披露截止日延后使用;所有滚动统计只用截至t的历史窗口。

幸存者偏差指回测样本只包含"活到今天"的行业或成分股,剔除了已退市、已合并或已更名的对象,导致收益被高估。行业轮动中尤其要注意行业分类的历史变更:申万行业分类多次调整,若用最新分类回溯历史,等于用未来信息重构了过去的行业归属。防护方法是使用Point-in-Time(PIT)行业归属表,按每个历史时点当时生效的分类与成分构建行业指数。

因子体系设计:分类—逻辑—偏差防护 五类因子 动量 20/60/120日收益、相对强弱 估值 PE/PB分位数、股息率 质量 ROE、现金流、负债率 成长 营收/利润增速、预期上调 情绪 换手率、资金流、融资余额 金融逻辑 反应不足 → 趋势延续 动量需剔除最近1个月 均值回归 → 风险补偿 估值需行业中性化 盈利持续 → 超额收益 质量需按披露日滞后 景气上行 → 预期修正 成长需防预期数据回填 偏差防护 未来函数 T日信号 → T+1开盘成交 财报按披露截止日滞后 滚动窗口只用历史数据 禁用全样本分位数 幸存者偏差 使用PIT行业归属表 保留退市/合并样本 按历史时点分类回溯 成分股按当时名单

四、落地示例:一个可执行的因子清单

假设我们为28个申万一级行业构建月度轮动评分,可采用如下配置(示例参数,非实测结果):

类别因子计算口径方向数据处理
动量12-1月收益过去252日收益剔除最近21日正行业中性化
估值PB历史分位近5年PB分位数负取负号后标准化
质量ROE(TTM)最近四个季度滚动正按披露日滞后
成长营收增速最新报告期同比正按披露日滞后
情绪换手率变化近20日均换手/近120日均换手负缩尾处理

每个因子先做去极值(MAD法)→ 标准化(Z-score)→ 行业中性化(对行业哑变量回归取残差),再按类别等权合成类别得分,最后按动量30%、估值20%、质量20%、成长20%、情绪10%加权得到综合分。权重是示例假设,实际应通过IC/IR检验与滚动优化确定。

五、设计阶段的验收清单

在进入评分与回测前,建议逐项核对:因子是否覆盖至少四类;每个因子是否有明确的经济假设与方向约定;所有输入数据是否标注了"可用时点";行业归属是否使用PIT数据;是否保留了已退市/已变更样本;标准化是否只用滚动窗口。任何一项不通过,都应先修正数据管道,而不是调整权重去"拟合"出好看的结果——后者本身就是一种隐蔽的未来函数。

常见误区:为了让回测曲线更平滑而反复调整因子权重或窗口参数,本质是在用全样本信息反向优化,属于过拟合型未来函数。正确做法是先固定逻辑与参数规则,再做样本外检验。

因子体系设计是整个轮动模型的"地基"。分类保证覆盖度,金融逻辑保证可解释性,偏差防护保证可信度。三者确定之后,后续的评分合成、IC检验与组合构建才有意义。