遗传编程因子挖掘:让表达式树自己进化出可交易 alpha
手工构造因子是『人想公式、数据验证』,遗传编程反过来:把因子表达式编码成树(叶子是特征、内部节点是算子),用交叉互换子树、变异随机替换、锦标赛选择淘汰弱者,让公式在 IC 适应度的驱动下自己进化。本文纯 Python 实现极简 GP 引擎:600×100 合成面板埋入非线性真结构 mom*exp(-|vol|)-0.5*rev,进化 25 代后找到 (mom - rev),验证集 IC 0.098——超过最强单因子(0.078)、逼近真实结构上限(0.105),而且简约压力把树从平均 6.1 节点压到 3.8,没有膨胀成垃圾。但要害在最后一图:500 个随机公式在纯噪声特征上搜索,训练 IC 被『迄今最优』推着单调上涨到 0.018——数据挖掘偏差意味着 GP 天生是过拟合机器,防御靠简约压力+验证集早停+多种子重跑看表达式是否稳定(中阶)。