1
colblk 因子库
hm104 共 21,968 列(横截面算好的因子)
▼
2
切回测轴 + 加载回测输入
模板轴按窗口截取;加载风格因子、行业码、收益、限制状态、指数收益
▼
3
引擎逐因子处理:预处理 → 中性化
横截面 rank + 缺失中位数填充;10 列风格因子,行业版再加 31 个行业哑变量
▼
4
完整回测
按因子值分 10 个等数量组,算每组组均收益,再算多空组合。IC-only 模式会跳过这一步
▼ SSM 的原料从这里来
5
算 SSM新增
10 组时间平均收益 → 统一方向(末组低于首组则整条倒序)→ 五段各自算「净位移 ÷ 台阶幅度之和」→ 取最小
五段 = 整体(1-10)、空头段(1-5)、多头段(6-10)、首段(1-4)、尾段(7-10)。值域 −1 到 1,只有接近 +1 才是好。
▼
6
写 summary parquet
每个因子一行,含中性化 RankIC、多空收益、夏普,以及新加的 SSM 列
▼
7
cover 过滤 + SSM 门槛新增
先筛 ratio_mean ≥ 0.5,再筛 SSM ≥ 0.9,把阶梯排不齐的因子挡在门外
SSM 只当门槛,不参与排序。过了门槛之后排序仍然是中性化 |IC| 降序。
▼
8
四通道并行初筛 + 两道相关去重
neu_ic(|IC| ≥ 0.01)、neu_ret(hedge ≥ 0.055)、raw_ic(|IC| ≥ 0.03)、raw_ret(hedge ≥ 0.1);每通道内部先按 0.5 / 0.8 去重,合并后再按 0.8 去重一次
▼
9
分配名额 → 35 个因子
neu_ic 拿满 35 个名额;写入 selected/gap5_selected.parquet
▼
10
base 落盘 → fulltest 出图 → doc 出 docx
只对筛出的 35 个做完整回测与文档,产出 HF_Documentation docx 与十组收益走势图