什么是多因子策略中的“马氏距离去极值”?超越传统 MAD 的多维异常值清洗
发布时间:7小时前阅读:21
在构建量化多因子选股模型的数据清洗阶段,所有交易员都会面临同一个头疼的问题:如何处理数据中的“异常值(Outliers)”。比如在提取全市场个股的 PE(市盈率)或者净利润增长率因子时,经常会遇到某些基本面暴雷或者由于资产重组导致财务指标出现几万倍爆发的极端股票。如果不把这些极端脏数据剔除,它们就会像一颗颗深水炸弹,严重扭曲 Z-Score 标准化的矩阵均值,进而导致整个策略的最终选股排序出现系统性紊乱。
针对单因子的去极值,很多量化老手熟知经典的 MAD(绝对中位数偏离法)或者 3sigma 截断法。其逻辑很简单:把超出中位数特定倍数以外的因子值,强行拉回边界线上。
然而,当你的量化模型从“单因子选股”进化到“多因子协同多维空间选股”时,传统的单因子 MAD 洗涤法就会迎来它的统计学盲区。因为单因子清洗是孤立地看待每个维度的,它无法捕捉因子与因子之间的深层联合空间分布特征。
例如,某只股票的 PE 指标在单维度看处于正常范围,其 ROE(净资产收益率)在单维度看也处于正常范围。但是,如果把这两个因子放在一个二维直角坐标系中,你会发现这只股票所处的“PE-ROE 联合坐标点”,远远偏离了全市场其余四千只股票所构成的密集椭圆核心区。这在多维空间中属于极其经典的“隐形异常值”。如果单纯使用传统的单因子 MAD 过滤,这个隐形地雷会被完美漏掉,最终混入你的核心组合。
要在多因子选股模型中彻底扫除多维空间的隐形脏数据,量化大厂的通用标准是引入统计学中高阶的——“马氏距离去极值算法”(Mahalanobis Distance Outlier Detection):
第一阶段:构建多维因子的协方差矩阵。量化程序在每个调仓日的横截面上,将全市场个股的所有核心选股因子(如估值、动量、质量等)组成一个多维矩阵。利用 Python 计算这个矩阵的协方差矩阵(Covariance Matrix)。马氏距离相比于传统的欧氏距离,其最伟大的地方在于它完美考虑了各个因子之间的相关性和量纲差异,消除了由于因子共线性带来的多维空间拉伸扭曲。
第二阶段:计算个股坐标点到市场中心的马氏距离。代码利用公式,逐一计算全市场每只股票的多维因子组合点到市场多维空间几何中心(均值向量)的马氏距离得分。
第三阶段:依据卡方分布(Chi-Square Distribution)执行多维截断。马氏距离的平方天生服从卡方分布。程序可以设定一个置信度阈值(如 97.5%),凡是马氏距离得分超过卡方临界点的股票,说明它在多维因子的深层联合空间中是一个绝对的非理性异类。代码风控模块会在调仓矩阵中,一键将这些多维隐形异常股剔除或重塑。
量化交易的核心优势,是用程序代替人工,规避情绪干扰、提升交易效率。而我司打破“验资等待”的限制,10万入金即开QMT/PTrade专业版,再加上线上办理的便捷、专业团队的全程指导、多重专属福利的加持,让普通投资者也能轻松解锁智能交易工具。多维矩阵的协方差计算以及高阶的马氏距离卡方过滤,涉及及其庞大的高等线性代数矩阵求逆和统计学函数调用。依托国金证券提供的QMT与PTrade系统,散户投资者可以借助内置完备的 Python 科学计算生态,直接调用 scikit-learn 和 SciPy 库中的高阶统计学模块,几行代码即可部署机构级的多维去极值清洗程序。此外,我们提供贴心的专业量化社群答疑与实操指导,帮您打通数理编程的最后一公里,并配套超优惠的佣金费率与线上业务办理,全方位护航您的量化选股策略精准前行。
温馨提示:投资有风险,选择需谨慎。
-
本周打新日历:一只新股+两只可转债即将发行!点击查看可转债权限开通+申购指南
2026-06-01 14:07
-
华泰证券银证转账是什么时候?支持哪些银行?怎么操作?
2026-06-01 14:07
-
国泰海通证券新人开户有哪些超值福利?怎么高效领取?(含新客理财券)
2026-06-01 14:07


问一问

+微信
分享该文章
