@Ri1zob 这个问题问得很关键,我简单分两点说一下自己的体会,供参考。
一、关于“数据是否清洗干净”怎么判断
我个人的经验是:不太会去追求“一次性把数据洗得很完美”,而是用结果反推数据问题。常用的几个检查点包括:
1)IC/RankIC 是否长期稳定、有显著偏正;
2)IC 分布是否近似对称、是否存在明显厚尾/异常尖峰;
3)策略收益是否过度依赖极少数交易日或个股。
如果这些都比较正常,一般说明数据层面没有明显系统性问题。即便使用官方数据,不同 label、窗口、过滤规则下,效果差异也会很大,这一点很常见。
二、LightGBM里树结构和L1/L2的重要性
在截面因子场景下,我的体感是:树结构相关参数更重要:max_depth / num_leaves / min_data_in_leaf。L1/L2(lambda_l1 / lambda_l2)更多是抑制噪声和极端权重,属于“微调项”。如果树结构没约束好,单纯调大 L1/L2 很难救回泛化能力。所以我的顺序一般是:先定树结构,再调learning rate,最后才是 L1/L2。
2026-01-25