Pas d'effort, pas de résultat

Modèles GARCH en R

Kris Boudt

Professor of finance and econometrics

Modèle GARCH-in-mean

  • Quantifier le compromis risque/rendement.
  • Risque : $\sigma^2_t$. Rendement : $\mu_t$.
  • Modèle GARCH-in-mean :

$$ \mu_{t} = \mu + \lambda \sigma^2_{t} $$

$\lambda > 0$ est le paramètre risque/rendement : hausse du rendement attendu par unité de variance du risque.

Modèles GARCH en R

Comment faire ?

Modifiez l'argument mean.model dans ugarchspec() de list(armaOrder = c(0, 0)) à list(armaOrder = c(0, 0), archm = TRUE, archpow = 2) :

garchspec <- ugarchspec(
              mean.model = list(armaOrder = c(0, 0)),
              variance.model = list(model = "gjrGARCH"),
              distribution.model = "sstd")
garchspec <- ugarchspec(
               mean.model = list(armaOrder = c(0, 0), archm = TRUE, archpow = 2),
               variance.model = list(model = "gjrGARCH"),
               distribution.model = "sstd")
Modèles GARCH en R

Application aux rendements quotidiens du S&P 500

Estimation

garchfit <- ugarchfit(data = sp500ret, spec = garchspec)

Inspection des coefficients estimés pour la moyenne

round(coef(garchfit)[1:2], 4)
    mu  archm 
0.0002 1.9950

Moyennes prévues des rendements

$$ \hat{\mu}_{t} = 0.0002 + 1.9950 \hat{\sigma}^2_{t} $$

Modèles GARCH en R

Série temporelle des rendements prédits

  • Tracez-les dans R
    plot(fitted(garchfit))
    
Modèles GARCH en R

Le rendement d'aujourd'hui prédit celui de demain

  • Le GARCH-in-mean s'appuie sur la théorie financière du compromis risque/rendement pour construire une moyenne conditionnelle.
  • Utilisons maintenant la théorie statistique pour modéliser la moyenne via la corrélation entre le rendement d'aujourd'hui et celui de demain.
  • Le modèle le plus courant est l'AR(1) :
    • AR(1) signifie modèle autorégressif d'ordre 1.
    • Il prédit le prochain rendement via l'écart au rendement moyen de long terme $\mu$ :

$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$

Modèles GARCH en R

Un coefficient autorégressif positif

$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$

  • $\rho > 0$ :
    • Un rendement supérieur (resp. inférieur) à la moyenne est suivi d'un rendement supérieur (resp. inférieur) à la moyenne.
    • Explication possible : les marchés sous‑réagissent aux nouvelles, d'où un momentum des rendements.
  • $|\rho|<1$ : Retour vers la moyenne : les écarts de $R_t$ à $\mu$ sont transitoires.
Modèles GARCH en R

Un coefficient autorégressif négatif

$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$

  • $\rho < 0$ :
    • Un rendement supérieur (resp. inférieur) à la moyenne est suivi d'un rendement inférieur (resp. supérieur) à la moyenne.
    • Explication possible : les marchés sur‑réagissent aux nouvelles, d'où une inversion des rendements.
Modèles GARCH en R

Application aux rendements quotidiens du S&P 500

Spécification et estimation d'un AR(1)-GJR GARCH avec distribution sst

garchspec <- ugarchspec( 
          mean.model = list(armaOrder = c(1, 0)),
          variance.model = list(model = "gjrGARCH"),
          distribution.model = "sstd")
garchfit <- ugarchfit(data = sp500ret, spec = garchspec)

Estimations du modèle AR(1)

round(coef(garchfit)[1:2], 4)
     mu     ar1     
 0.0003 -0.0292
Modèles GARCH en R

Modèles MA(1) et ARMA(1,1)

Le modèle à moyenne mobile d'ordre 1 utilise l'écart du rendement à sa moyenne conditionnelle :

$$ \mu_{t} = \mu + \theta(R_{t-1} - \mu_{t-1}) $$

ARMA(1,1) combine AR(1) et MA(1) :

$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) + \theta(R_{t-1} - \mu_{t-1}) $$

Modèles GARCH en R

Comment faire ?

MA(1)

garchspec <- ugarchspec( 
          mean.model = list(armaOrder = c(0, 1)),
          variance.model = list(model = "gjrGARCH"),
          distribution.model = "sstd")

ARMA(1, 1)

garchspec <- ugarchspec( 
          mean.model = list(armaOrder = c(1, 1)),
          variance.model = list(model = "gjrGARCH"),
          distribution.model = "sstd")
Modèles GARCH en R

À vous de modifier l'argument mean.model

Modèles GARCH en R

Preparing Video For Download...