偏度與峰度

Python 投資組合風險管理入門

Dakota Wixom

Quantitative Analyst | QuantCourse.com

偏度是機率分配的第三動差。

  • 負偏度:分配的質量集中在右側。曲線通常右傾
  • 正偏度:分配的質量集中在左側。曲線通常左傾
  • 在金融中,通常會偏好正偏度

 

Python 投資組合風險管理入門

在 Python 計算偏度

假設已在 StockData 物件中預先載入報酬資料。

要計算報酬的偏度:

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

注意此例的偏度大於 0,表示可能偏離常態。

Python 投資組合風險管理入門

峰度衡量分配尾端的厚度。

  • 多數金融報酬呈現 leptokurtic(厚尾)
  • Leptokurtic:當分配的超額峰度為正(峰度大於 3)
  • 超額峰度:以樣本峰度減去 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-value 是回傳串列中的第二個值。若 p-value 小於 0.05,則拒絕虛無假設,因為資料很可能非常態。

Python 投資組合風險管理入門

一起來練習吧!

Python 投資組合風險管理入門

Preparing Video For Download...