偏度与峰度

Python 投资组合风险管理入门

Dakota Wixom

Quantitative Analyst | QuantCourse.com

偏度(Skewness)是分布的第三阶矩。

  • 负偏度: 分布质量集中在右侧。曲线通常向右倾斜
  • 正偏度: 分布质量集中在左侧。曲线通常向左倾斜
  • 在金融中,通常更偏好正偏度

 

Python 投资组合风险管理入门

在 Python 中计算偏度

假设已在 StockData 对象中预加载了股票收益数据。

计算收益的偏度:

from scipy.stats import skew
skew(StockData["Returns"].dropna())
0.225

注意此例偏度大于 0,表明可能非正态。

Python 投资组合风险管理入门

峰度(Kurtosis)度量分布尾部的厚度。

  • 大多数金融收益呈高峰厚尾(leptokurtic)
  • 高峰厚尾(Leptokurtic): 分布具有正的超额峰度(峰度 > 3)
  • 超额峰度(Excess Kurtosis): 用样本峰度减去 3

 

Python 投资组合风险管理入门

在 Python 中计算超额峰度

假设已在 StockData 对象中预加载了股票收益数据。要计算收益的超额峰度

from scipy.stats import kurtosis
kurtosis(StockData["Returns"].dropna())
2.44

注意此例超额峰度大于 0,表明可能非正态。

Python 投资组合风险管理入门

在 Python 中检验正态性

如何进行正态性统计检验?

Shapiro–Wilk 检验的原假设:数据服从正态分布。

# 在 Python 中运行 Shapiro–Wilk 正态性检验
from scipy import stats
p_value = stats.shapiro(StockData["Returns"].dropna())[1]
if p_value <= 0.05:
     print("Null hypothesis of normality is rejected.")
else:
     print("Null hypothesis of normality is accepted.")

p 值是返回列表中的第二个变量。若 p 值 < 0.05,则拒绝原假设,因数据很可能非正态。

Python 投资组合风险管理入门

Passons à la pratique !

Python 投资组合风险管理入门

Preparing Video For Download...