您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[东方证券]:《金工磨刀石系列之二》:选股因子数据的异常值处理和正态转换 - 发现报告
当前位置:首页/其他报告/报告详情/

《金工磨刀石系列之二》:选股因子数据的异常值处理和正态转换

2016-06-23朱剑涛东方证券劣***
《金工磨刀石系列之二》:选股因子数据的异常值处理和正态转换

HeaderTable_User 1122253200 HeaderTable_Stock 股票代码 投资评级 评级变化 行业code HeaderTable_Excel 东方证券股份有限公司经相关主管机关核准具备证券投资咨询业务资格,据此开展发布证券研究报告业务。 东方证券股份有限公司及其关联机构在法律许可的范围内正在或将要与本研究报告所分析的企业发展业务关系。因此,投资者应当考虑到本公司可能存在对报告的客观性产生影响的利益冲突,不应视本证券研究报告为作出投资决策的唯一因素。 有关分析师的申明,见本报告最后部分。其他重要信息披露见分析师申明之后部分,或请与您的投资代表联系。并请阅读本证券研究报告最后一页的免责申明。 专题报告 【金融工程·证券研究报告】 选股因子数据的异常值处理和正态转换 —《金工磨刀石系列之二》 研究结论 数据处理是因子选股实证研究的第一步。本报告将结合我们的因子库数据分析比较多种极值处理和正态转换方法。 数据极值侦测手段通常有四种:固定比例、均值标准差、MAD和Boxplot方法,实证比较发现经过偏度调整的Boxplot方法对异常数值的侦测效率最高,需要人力干预的地方少,建议在实证研究中采用。 数据的非正态性会影响alpah因子的zscore计算和风险因子的因子收益率显著性检验。Box-Cox变换是最常用的数据正态转换,它的参数lambda可以通过极大似然方法估计,但在实际操作中,这个数值只能作为参考,不宜直接采用,转换后因子的经济含义是否便于理解是更值得关注的事情,应优先考虑取对数或取倒数这样简单的转换方式。 风险提示 模型失效风险; 极端行情对模型的冲击; 报告发布日期 2016年06月23日 证券分析师 朱剑涛 021-63325888*6077 zhujiantao@orientsec.com.cn 执业证书编号:S0860515060001 相关报告 常用股票行业分类方法的比较 2016-01-22 金融工程 目录 一、异常数据的影响与侦测 ............................................................................. 3 1.1 异常数据的影响 ........................................................................................................... 3 1.2 固定比例法 .................................................................................................................. 3 1.3 均值标准差法............................................................................................................... 3 1.4 MAD法 ...................................................................................................................... 4 1.5 Boxplot法 .................................................................................................................. 4 1.6 偏度调整Boxplot和MAD方法对比 ............................................................................ 5 二、数据正态转换 ........................................................................................... 6 2.1 非正态数据的影响 ....................................................................................................... 6 2.2 Box-Cox变换 ............................................................................................................... 7 2.3 正态变换的选择 ........................................................................................................... 8 三、总结 .......................................................................................................... 9 风险提示 .......................................................................................................... 9 参考文献 ........................................................................................................ 10 一、异常数据的影响与侦测 1.1 异常数据的影响 数据异常值对线性回归的影响在统计学教科书中多有论述,这里主要讨论其对alpha因子zscore得分的影响。 以2016年5月底全市场股票的ROE(TTM)数据为例,总共有2837个数据,最小值-10.9,中位数0.067,均值0.06,最大值26.08,标准差0.5720。可以看到98%的数据分布在[-0.5,0.5] 这个区间内,如果去掉上下各1%的数据,剩余数据的均值为0.0625,标准差变为0.1056。异常值使得样本总体均值变化不大,但是标准差却放大了五倍多,因此如果不剔除异常值,大部分股票在ROE因子上的zscore得分将明显偏小,影响该因子在整个alpha模型中的贡献。 侦测单变量异常值的方法有很多,常用的有以下几种: 1.2 固定比例法 固定比例法的想法是把数据从小到大排列,去掉最小和最大的固定比例数据(例如:1%)来排除异常值。固定比例的设定非常主观,最好是对照数据的分布特点来设定,但这在选股因子数量较多、历史数据较长的情况下可行性太差,而且对于一些数值散落在“合理”区间的数据,强行删除固定比例的数据反而会面临不必要的信息损失。因此这种方法只能作为一种粗略筛法,以获得对异常值数据影响的初步认识,数据建模前需要更精细的异常值侦测工具。 1.3 均值标准差法 这种想法的思路来自于正态分布,假设2~(),XN ,则 0.317)0.0460.0031P(23kXkkk 通常把离均值 三个标准差以外的数据作为异常值数据。不过要注意的是样本均值和样本标准差都不是稳健统计量,其计算本身受极值的影响就非常大,所以可能会出现一种情况,那就是我们从数据分布图上能非常明显的看到异常点,但按照上面的计算方法,这个异常点可能仍在均值三倍标准差的范围内。因此按照这种方法剔除掉异常值后,需要重新观察数据的分布情况,看是否仍然存在显著异常点,若存在则继续重复上述步骤寻找异常点。 在样本数据不符合正态分布的情况下,根据Chebyshev不等式,我们仍然可以对均值三倍标准差外的样本数据数量占比做出估计 2)P(1 / kXk   但不等式右边的上界数值过于偏大,在数据分布的偏度和峰度影响下,这种方法可能会把过量的数据认定为异常点。 另外,本报告的第二部分介绍了非正态分布数据的正态转换方法,那是否可以先把数据转换成正态分布,然后再用均值方差法来剔除异常点呢?理论上来说可行,特别是如果后续还要用转换后的数据来做统计分析。但需要注意的是后文介绍的Box-Cox变换虽是单调变换,不会改变数据的大小排序关系,但是会改变数据与数据之间的距离大小,所以这些变换可能会使得原始数据的异常点在变换后变得不异常,而原来的正常点却变换成异常值(参考Seo (2002)里的示例)。另外,Box-Cox变换并非万能,转换后的数据仍然可能呈现非常明显的非正态特征,而且有时为了保证变换后数据有充分的经济含义,不一定采用最优的Box-Cox参数来做变化,转换后数据的正态性更难保证,均值标准差仍然不适用。因此我们在量化选股研究中采取的都是先处理异常值,后做数据转换的作业方式。 1.4 MAD法 MAD法是针对均值标准差方法的改进,把均值和标准差替换成稳健统计量,样本均值用样本中位数代替,样本标准差用样本MAD (Median Absolute Deviation)代替: ({ ,1, 21, 21.483*})({,}MADiienMAD mediamd median x imd ixMADnn 通常把偏离中位数三倍 (如果样本满足正态分布,且数据量较大,可以证明 ) 以上的数据作为异常值。和均值标准差方法比,中位数和MAD的计算不受极端异常值的影响,结果更加稳健。 1.5 Boxplot法 Boxplot法由Turkey(1977)年提出, 是一种经验处理方法,假设 和 分别为数据从小到大排列的25%和75%分位数,记 , 把( ) ( ) 区间里的数据标识为异常点。分位数也是稳健统计量,因此Boxplot方法对极值不敏感,但如果样本数据正偏严重,且右尾分布明显偏厚时,Boxplot方法会把过多的数据划分为异常数据,因此Hubert & Vandervieren (2007)对原有Boxplot方法进行了偏度调整。首先样本偏度定义采用了Brys(2004)提出的MedCouple方法: ( ,1, 2)(,)&(,)()iijijijnxmd median x imdmd xxmdxmdxmc medianx 然后再给出了经过偏度调整Boxplot方法上下限 13311.5* exp( 3.5*) * IQR1.5* exp( 4 *) * IQR01.5* exp(4 *) * IQR1.5* exp(3.5*) * IQR000Qmcif mcLQmcif mcQmcif mcUQmcif mc 区间( ) ( )里的数据被定义为异常数据。和原始Boxplot方法相比,当样本数据分布右偏时,此法会提升正常数据区间上限的数值;样本数据左偏时,则会降低正常数据区间下限的数值。Hubert & Vandervieren (2007)仿真生成了不同偏度分布的数据样本,并在其中人为加入一些异常数据,发现调整后Boxplot方法对异常数据的识别能力比传统方法要强很多。 1.6 偏度调整Boxplot和MAD方法对比 异常数据不是一个完全客观的定义,那些极大和极小的数据可能蕴含了样本分布的重要信息,这些数据的去留决定存在人为