2.2 如何辨别“伪因子”:p-hacking、样本内过拟合与多重检验

张开发
2026/4/9 6:52:25 15 分钟阅读

分享文章

2.2 如何辨别“伪因子”:p-hacking、样本内过拟合与多重检验
2.2 如何辨别“伪因子”p-hacking、样本内过拟合与多重检验一、引言因子动物园的陷阱金融学术界已识别出数百个“显著”的因子形成了所谓的“因子动物园”。在A股每天都有新的“神奇指标”被提出。然而大部分所谓的因子都是统计幻觉——它们并非真正的定价风险源或持续的错误定价而是数据挖掘的偶然产物。本节是因子研究的“免疫课程”。我们将剖析产生伪因子的三大根源并给出在A股实践中可操作的“防伪”检验清单。一个严谨的量化研究者其核心技能不是发现更多因子而是冷酷地证伪大部分因子。二、三大根源为什么会有伪因子1. p-hackingP值操纵定义在数据分析中通过反复尝试不同的数据处理、变量选择、模型设定等方法直到得到一个“统计显著”通常p值0.05的结果然后只报告这个结果而不报告所有失败的尝试。在因子研究中的典型操作尝试20个不同的估值指标PE, PB, PC, PS…只报告那个历史上表现最好的。对同一个因子尝试不同的计算参数如动量周期用3个月、6个月、12个月只报告最显著的。尝试不同的样本期、不同的股票池全市场、剔除ST、剔除次新股直到结果显著。本质滥用“5%显著性水平”。如果纯粹随机生成数据每20次尝试平均也会有1次出现p0.05的“显著”结果。2. 样本内过拟合定义模型或因子过度拟合了样本期内数据中的随机噪声而非捕捉普适规律。其表现高度依赖于特定样本在样本外未来表现会急剧恶化。在因子研究中的典型表现在样本内因子多空组合的夏普比率高达2.0年化收益超过20%曲线平滑向上。在样本外或实盘夏普比率降至0.5以下甚至为负。根源参数优化过度对因子计算、组合构建、交易规则进行了过于复杂的参数优化。数据窥探使用“未来函数”或者用全样本数据信息来指导样本内的研究设计。3. 多重假设检验定义当同时检验多个假设例如测试100个潜在的因子时即使所有因子都无效仅仅由于随机性也会有相当一部分被错误地认为是有效的。量化后果如果以5%的显著性水平独立检验100个无效因子那么预期将有约5个100 * 0.05因子被错误地认为是显著的。这5个就是纯粹的“伪因子”。与p-hacking的关系p-hacking是有意的数据操纵而多重假设检验问题是无意的统计陷阱。两者共同导致了“因子动物园”。三、A股因子研究的“防伪”检验清单以下是你在报告任何因子发现前必须完成的六项核心检验。每一项都是对因子稳健性的拷问。检验一样本外测试操作将数据在时间上分为两段样本内期和样本外期。样本内期用于因子发现和初步测试样本外期用于严格测试且不允许基于样本外数据做任何参数调整。A股实践建议经典划分2007年之前为样本内2007-2015年为样本内优化/验证2016年至今为样本外测试。考虑到A股市场结构变化如2015年股灾、2016年熔断、2019年注册制用2016年之后作为样本外测试期是更严峻的考验。滚动窗口测试是更稳健的方法例如始终用过去5年数据训练/优化测试下一年表现然后滚动向前。检验二子样本稳健性操作将全样本期划分为几个不同的子时期例如2005-2010, 2011-2015, 2016-2020, 2021至今检验因子在每个子时期是否都保持正向收益和一定的显著性。这能检验因子在不同市场环境下的普适性。A股实践要点A股市场有鲜明的风格周期如2013-2015小盘成长、2017-2020大盘价值。一个因子如果只在某个特定风格周期有效而在其他周期完全失效或反转其作为“Alpha源”的价值就值得怀疑。检验三多空组合的“高水位”检验操作观察因子多空组合的累计净值曲线。计算自曲线最高点高水位之后的最大跌幅和修复时间。解读如果一个因子在样本内出现过超过50%的回撤且长期如3-5年未创新高即使其长期年化收益不错也极有可能是一个高风险的周期性因子而非稳定的Alpha。在A股许多技术类因子在2017-2018年经历了此类“毁灭性”回撤。检验四经济逻辑的“压力测试”操作不要只看统计数字要追问其经济学或行为学逻辑。问自己风险补偿逻辑投资者承担了何种不可分散的风险这个风险当前还存在吗例如A股“小市值因子”的壳价值风险正在消失。行为金融逻辑它利用了哪类投资者的何种系统性认知偏差这类投资者在A股的比重是上升还是下降例如利用散户追涨杀跌的因子在机构化进程中会失效。套利限制为什么理性的套利者没有消除这个错误定价是制度限制如做空困难、行为限制如职业风险还是基本面风险结论一个无法用清晰、合理的逻辑解释的“显著”因子大概率是数据挖掘的产物。检验五控制已知风险因子后的“纯净性”检验操作使用Fama-MacBeth回归在方程中加入所有已知的、公认的重要风险因子如Barra CNE5模型中的风格因子市值、估值、动量、波动率、流动性、盈利、成长等作为控制变量。解读检验你的新因子在控制这些变量后其系数平均溢价是否仍然经济意义显著且统计显著。如果不显著说明你的因子可能只是某个已知因子的“代理变量”或“变体”。检验六排除微小市值股票的影响A股特有问题A股历史上微小市值股票市值后20%-30%具有异常高的收益和与其他股票极低的相关性这常常扭曲因子检验结果。操作在因子检验中至少进行一次剔除市值后30%股票的测试。如果因子在剔除微小市值股后变得不显著说明其有效性高度依赖这部分流动性差、难以大资金操作的股票实盘意义有限。四、量化防线Bonferroni校正与False Discovery Rate面对多重检验问题需采用严格的统计校正方法Bonferroni校正将显著性水平α αα除以测试的因子总数m mm。例如测试了100个因子则只有 p 值小于0.05 / 100 0.0005 0.05/100 0.00050.05/1000.0005的因子才能被认为是显著的。此方法非常保守可能错过一些真实因子但能极大控制假阳性。错误发现率控制被拒绝的原假设中错误拒绝即假阳性的比例。比Bonferroni校正更灵活在金融研究中应用渐广。对个人研究者的建议至少应明确报告你测试过的因子总数并对 p 值保持极度审慎。一个 p 值为0.03的因子如果是从100次尝试中挑出的那它毫无意义。五、本节核心从“寻找圣杯”到“避免愚蠢”在因子投资中防守避免错误比进攻发现新因子更重要。一个通过以上所有检验的因子即使收益不那么惊人也远比一个高收益但脆弱的“伪因子”更有价值。给你的行动清单先有逻辑再有数据。从坚实的经济学或行为学原理出发构建因子。设计严谨的样本外测试计划并在研究开始前就确定绝不事后更改。全面报告不仅要报告最佳参数的结果也要报告邻近参数和不同子样本的结果。展示因子的“全貌”包括其失效期。控制控制再控制永远用FM回归检验因子的“纯净”贡献。怀疑一切高得令人难以置信的夏普比率。在A股一个长期夏普比率超过1.5、回撤很小的多因子策略大概率存在过拟合或未考虑的关键成本。接下来我们将进入第2.3节《2.3 数据源详解Wind/TuShare/优矿从行情到财务》开始搭建因子研究的底层基础设施——数据。没有干净、可靠的数据所有精巧的模型都是空中楼阁。

更多文章