Icke-normalfördelad avkastning

Introduktion till portföljanalys i Python

Charlotte Werger

Data Scientist

I en perfekt värld är avkastningen normalfördelad

Normalfördelning av S&P500-avkastning

1 Källa: Fördelning av månadsavkastning från S&P500 från evestment.com
Introduktion till portföljanalys i Python

Men medelvärde och standardavvikelse kan vara missvisande

Två fördelningar med samma medelvärde och standardavvikelse

1 Källa: "An Introduction to Omega", Con Keating och William Shadwick, The Finance Development Center, 2002
Introduktion till portföljanalys i Python

Skevhet: förskjutning mot det negativa

Fördelningar med olika skevhet

Introduktion till portföljanalys i Python

Pearsons skevhetskoefficient

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

Tumregel:

  • $ Skewness < -1 $ eller $ Skewness > 1 \Rightarrow$ Kraftigt skev fördelning
  • $ -1 < Skewness < -0.5 $ eller $ 0.5 < Skewness < 1 \Rightarrow$ Måttligt skev fördelning
  • $ -0.5 < Skewness < 0.5 \Rightarrow$ Ungefär symmetrisk fördelning
1 Källa: https://brownmath.com/stat/shape.htm
Introduktion till portföljanalys i Python

Kurtosis: tjocksvansat fördelning

Tjocksvansat fördelning jämfört med normalfördelning

1 Källa: Pimco
Introduktion till portföljanalys i Python

Tolka kurtosis

"Högre kurtosis innebär att en större del av variansen beror på ovanliga extrema avvikelser, snarare än frekventa måttliga avvikelser."

  • En normalfördelning har kurtosis exakt 3 och kallas mesokurtisk
  • En fördelning med kurtosis <3 kallas platykurtisk. Svansarna är kortare och tunnare, och det centrala toppet är lägre och bredare.
  • En fördelning med kurtosis >3 kallas leptokurtisk: Svansarna är längre och tjockare, och det centrala toppet är högre och skarpare (tjocksvansat)
1 Källa: https://brownmath.com/stat/shape.htm
Introduktion till portföljanalys i Python

Beräkna skevhet och kurtosis

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()
Introduktion till portföljanalys i Python

Histogram över Apples senaste avkastning

Introduktion till portföljanalys i Python

Beräkna skevhet och kurtosis

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
Introduktion till portföljanalys i Python

Nu kör vi en övning!

Introduktion till portföljanalys i Python

Preparing Video For Download...