Ненормальное распределение доходностей

Введение в анализ портфеля на Python

Charlotte Werger

Data Scientist

В идеальном мире доходности распределены нормально

Нормальное распределение доходностей S&P500

1 Источник: распределение месячных доходностей S&P500 по данным evestment.com
Введение в анализ портфеля на Python

Но среднее и стандартное отклонение могут вводить в заблуждение

Два распределения с одинаковыми средним и стандартным отклонением

1 Источник: «An Introduction to Omega», Кон Китинг и Уильям Шедвик, The Finance Development Center, 2002
Введение в анализ портфеля на Python

Асимметрия: смещение в сторону отрицательных значений

Распределения с разной асимметрией

Введение в анализ портфеля на Python

Коэффициент асимметрии Пирсона

$ $ $ Skewness = \frac{3(mean - median)}{\sigma} $ $ $

Правило большого пальца:

  • $ Skewness < -1 $ или $ Skewness > 1 \Rightarrow$ Высокая асимметрия
  • $ -1 < Skewness < -0.5 $ или $ 0.5 < Skewness < 1 \Rightarrow$ Умеренная асимметрия
  • $ -0.5 < Skewness < 0.5 \Rightarrow$ Приблизительно симметричное распределение
1 Источник: https://brownmath.com/stat/shape.htm
Введение в анализ портфеля на Python

Эксцесс: распределение с тяжёлыми хвостами

Распределение с тяжёлыми хвостами в сравнении с нормальным

1 Источник: Pimco
Введение в анализ портфеля на Python

Интерпретация эксцесса

«Высокий эксцесс означает, что бо́льшая часть дисперсии обусловлена редкими экстремальными отклонениями, а не частыми умеренными.»

  • Нормальное распределение имеет эксцесс ровно 3 и называется мезокуртическим
  • Распределение с эксцессом <3 называется платикуртическим: хвосты короче и тоньше, центральный пик ниже и шире
  • Распределение с эксцессом >3 называется лептокуртическим: хвосты длиннее и тяжелее, центральный пик выше и острее (тяжёлые хвосты)
1 Источник: https://brownmath.com/stat/shape.htm
Введение в анализ портфеля на Python

Вычисление асимметрии и эксцесса

apple_returns=apple_price.pct_change()
apple_returns.head(3)

date
2015-01-02         NaN
2015-01-05   -0.028172
2015-01-06    0.000094
Name: AAPL, dtype: float64
apple_returns.hist()
Введение в анализ портфеля на Python

Гистограмма последних доходностей Apple

Введение в анализ портфеля на Python

Вычисление асимметрии и эксцесса

print("mean : ", apple_returns.mean())
print("vol  : ", apple_returns.std())
print("skew : ", apple_returns.skew())
print("kurt : ", apple_returns.kurtosis())
mean :  0.0006855391415724799
vol  :  0.014459504468360529
skew :  -0.012440851735057878
kurt :  3.197244607586669
Введение в анализ портфеля на Python

Давайте потренируемся!

Введение в анализ портфеля на Python

Preparing Video For Download...