对于量化研究而言,拿到一份基础数据,首先需要对数据做预处理,以便于更好的探究数据规律,基于不同目标有不同处理环节,其中去极值、标准化、中性化这三点经常被放在一起讨论。整理网络资料,理解如下。
-
去极值
数据(单个因子的时间序列数据)中存在异常值,可能会导致拉大标准差、拉偏统计规律…
常规处理理念就是确定此数据指标(比如某个因子)的上下限阈值,然后超过(或低于)此限度的数据均设置为阈值,以提高数据结论的准确性。
上下限的判定方法有三种:MAD、 3 σ 3\sigma 3σ法、百分位法。
-
MAD(Median Absolute Deviation, 绝对值差中位数法)
MAD,先计算所有因子与平均值之间的距离总和来检测离群值。
-
计算所有因子的中位数 X m e d i a n X_{median} Xmedian
-
计算每个因子与中位数的绝对偏差值 X i − X m e d i a n X_i-X_{median} Xi−Xmedian
-
计算绝对偏差值的中位数 M A D MAD MAD
-
确定参数 n n n,从而确定合理的范围为 [ X m e d i a n − n ∗ M A D , X m e d i a n + n ∗ M A D ] [X_{median}-n*MAD,X_{median}+n*MAD] [Xmedian−n∗MAD,Xmedian+n∗MAD],针对超出合理范围的值做如下调整:
X i ′ = { X m e d i a n + n ∗ M A D        i f    X i > X m e d i a n + n ∗ M A D X m e d i a n − n ∗ M A D        i f    X i < X m e d i a n − n ∗ M A D X i                                                              i f    X m e d i a n − n ∗ M A D < X i < X m e d i a n + n ∗ M A D
-
-