因子投资-17-IC分层回测与因子评价

QUANT RESEARCH NOTE LESSON 17

因子评价不是找一个最好看的指标。同一信号可能 Rank IC 稳定,却因极端值导致 Pearson IC 差;可能分层单调,却因高换手扣费后无收益;也可能 H-L 显著,但覆盖率低且只来自微盘股。本讲建立多维验收表。

类型核心课程
模块研究工程
阅读约 5 分钟
材料10 节 · 1 段代码

本节解决什么问题

因子评价不是找一个最好看的指标。同一信号可能 Rank IC 稳定,却因极端值导致 Pearson IC 差;可能分层单调,却因高换手扣费后无收益;也可能 H-L 显著,但覆盖率低且只来自微盘股。本讲建立多维验收表。

前置知识与学习目标

需要第 03、09、10 讲。学完后能区分 Pearson/Spearman IC、ICIR、分层单调性、H-L、Alpha、换手和覆盖率,并能给冲突结果作出降级结论。

直觉与手算

某月 5 只股票信号排名与下月收益排名完全一致,Rank IC=1。若最高信号股票数据错误、收益写成 100%,Pearson IC 会被它支配;Rank IC 仍只看顺序。两者回答不同问题:线性幅度关系与排序能力。

若 60 个月 IC 均值 0.04、时间标准差 0.08:

年化常写 0.5×√12≈1.73,但仍需报告自相关和均值标准误;ICIR 不是 t 统计量。

定义与公式

IC 与 Rank IC

Pearson IC 对尺度和极端值敏感;Spearman Rank IC 是排名的 Pearson 相关,对单调非线性更稳健。每月在当期覆盖股票横截面计算,再研究 IC 时间序列。

ICIR 与显著性

均值 t 值则是均值除以均值标准误;若 IC 自相关,用 HAC 标准误。不要用 ICIR 冒充 t。

分层与单调性

G 组未来收益应展示 Q1…QG 全路径,不只 H-L。可用组序号与组收益的 Spearman 相关、相邻组差为正的比例等描述单调性,但不要为了通过指标改变组数。

H-L、Alpha、换手与覆盖

  • H-L:高组减低组毛收益;
  • Alpha:H-L 对预定因子模型的截距;
  • 换手:漂移后权重到目标权重的交易量;
  • 覆盖率:有效信号股票数/合格股票池数,也应报告市值覆盖;
  • 净收益:毛收益减佣金、税费、价差、冲击和借券融资成本。

一个最低评价矩阵:

定义与公式 6 行 × 3 列
维度 指标 失败警报
预测 Pearson/Rank IC 只靠极端值或少数月
排序 组收益、单调性 只有两端、组内过少
收益 H-L、Alpha 仅空头腿、模型敏感
稳定 子期、行业、规模 符号翻转
实现 换手、成本、容量 净收益归零
数据 数量/市值覆盖 缺失选择、微盘支配

Python 最小实验

PYTHON 可复现实验
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import numpy as np
import pandas as pd

frame = pd.DataFrame({
"month": np.repeat(range(4), 6),
"signal": np.tile([1, 2, 3, 4, 5, 6], 4),
"future_return": np.array([
-0.02, -0.01, 0.00, 0.01, 0.02, 0.03,
-0.01, 0.00, 0.01, 0.00, 0.03, 0.02,
-0.03, -0.01, 0.01, 0.00, 0.02, 0.04,
0.00, -0.02, 0.01, 0.02, 0.01, 0.03,
]),
})
ics = frame.groupby("month").apply(
lambda x: x["signal"].corr(x["future_return"], method="spearman"),
include_groups=False,
)
frame["group"] = frame.groupby("month")["signal"].transform(
lambda x: pd.qcut(x, 3, labels=False)
)
groups = frame.groupby(["month", "group"])["future_return"].mean().unstack()
hl = groups[2] - groups[0]

assert len(ics) == 4
assert np.allclose(hl, groups[2] - groups[0])
print(ics.mean(), ics.std(ddof=1), hl.mean())

A 股实现注意事项

覆盖率必须相对历史合格股票池;财报缺失、停牌和退市不能按未来收益删除。并列信号、涨跌停不可成交、微盘权重、空头不可得和板块制度都要单独报告。行业中性后 IC 与全市场 IC 回答不同问题,应并列而非选更好者。

常见错误与边界

  • 用同期收益算 IC;全样本标准化后再切时间。
  • 只报 IC 均值,不报分布、自相关和覆盖。
  • 只报 H-L,不展示各组和两腿。
  • 用毛 H-L 推断可交易收益。
  • 参数和股票池反复调到指标最好。
  • IC 正就认为组合一定赚钱;权重、非线性和成本会改变结果。

原书与论文

原书第 3–5 章(PDF 文件页 97–223)连接因子策略、组合与实践。Hou、Xue、Zhang(2020)显示微盘和实现口径可让大量异象失效:DOI。McLean、Pontiff(2016)讨论样本外与发表后衰减:DOI。

练习

  1. 加一个极端收益,比较 Pearson 与 Rank IC。
  2. 分别用 3、5、10 组,比较单调性与每组样本量。
  3. 将 H-L 分成多头和空头贡献。
  4. 按规模、行业、年份报告 IC、覆盖和净收益。
  5. 写出因子“支持、证伪、证据不足”三类判定规则。

小结与下一步

可信因子需要预测、排序、收益、稳定、实现和数据六个维度同时过关。指标冲突时应解释对象并降低结论强度,而不是挑最好看的数字。下一讲审计回测偏差、成本与容量。


因子投资-17-IC分层回测与因子评价
https://www.polarishaw.top/2026/07/17/因子投资-17-IC分层回测与因子评价/
作者
Polaris
发布于
2026年7月17日
许可协议