Вступ до керування ризиком портфеля в Python
Dakota Wixom
Quantitative Analyst | QuantCourse.com
Асиметрія — це третій момент розподілу.

Припустімо, що дані дохідностей акцій завантажено в об'єкт StockData.
Щоб обчислити асиметрію дохідностей:
from scipy.stats import skew
skew(StockData["Returns"].dropna())
0.225
Зверніть увагу: асиметрія вища за 0, отже розподіл, ймовірно, не нормальний.
Ексцес — міра «товщини» хвостів розподілу.

Припустімо, що дані дохідностей акцій завантажено в об'єкт StockData. Щоб обчислити надлишковий ексцес дохідностей:
from scipy.stats import kurtosis
kurtosis(StockData["Returns"].dropna())
2.44
Зверніть увагу: надлишковий ексцес більший за 0, отже розподіл, ймовірно, не нормальний.
Як виконати статистичний тест на нормальність?
Нульова гіпотеза тесту Шапіро—Вілка: дані мають нормальний розподіл.
# Запустіть тест Шапіро—Вілка на нормальність у Python
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