Dynamisk kovarians i portföljoptimering

GARCH-modeller i Python

Chelsea Yang

Data Science Instructor

Vad är kovarians

  • Beskriver sambandet mellan rörelsen hos två variabler
  • Positiv kovarians: rör sig i samma riktning
  • Negativ kovarians: rör sig i motsatt riktning

Exempel på kovarians

GARCH-modeller i Python

Dynamisk kovarians med GARCH

Om två tillgångars avkastningar har korrelation $\rho$ och tidsberoende volatilitet $\sigma_1$ och $\sigma_2$:

$Covariance = \rho \cdot \sigma_1 \cdot \sigma_2$

covariance =  correlation * garch_vol1 * garch_vol2
GARCH-modeller i Python

Beräkna GARCH-kovarians i Python

Steg 1: Anpassa GARCH-modeller och beräkna volatiliteten för varje avkastningsserie

# gm_eur, gm_cad are fitted GARCH models
vol_eur = gm_eur.conditional_volatility
vol_cad = gm_cad.conditional_volatility

Steg 2: Beräkna standardiserade residualer från de anpassade GARCH-modellerna

resid_eur = gm_eur.resid/vol_eur
resid_cad = gm_cad.resid/vol_cad
GARCH-modeller i Python

Beräkna GARCH-kovarians i Python (forts.)

Steg 3: Beräkna $\rho$ som enkel korrelation av standardiserade residualer

corr = np.corrcoef(resid_eur, resid_cad)[0,1]

Steg 4: Beräkna GARCH-kovariansen genom att multiplicera korrelationen med volatiliteterna.

covariance =  corr * vol_eur * vol_cad
GARCH-modeller i Python

Modern portföljteori (MPT)

  • Grundlades av Harry Markowitz i artikeln "Portfolio Selection" (1952)
  • Utnyttjar diversifieringseffekten
  • Den optimala portföljen ger maximal avkastning med minimal risk
GARCH-modeller i Python

MPT – intuition

  • Varians för en enkel tvåtillgångsportfölj:

_W1$*$ Variance1 + W2$*$ Variance2 + 2$*$W1$*$W2$*$Covariance _

 

  • Diversifieringseffekten:

Risken i en portfölj kan minskas genom att para ihop tillgångar med negativ kovarians

GARCH-modeller i Python

Nu kör vi en övning!

GARCH-modeller i Python

Preparing Video For Download...