Pas d'effort, pas de résultat

Modèles GARCH en R

Kris Boudt

Professor of finance and econometrics

Modèle GARCH-dans-la-moyenne

  • Quantifier le compromis risque-rendement.
  • Risque : $\sigma^2_t$. Rendement : $\mu_t$.
  • Modèle GARCH-dans-la-moyenne :

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

$\lambda > 0$ est le paramètre risque/rendement indiquant l'augmentation du rendement espéré 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

Rendements moyens prévus

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

Modèles GARCH en R

Série chronologique des rendements prévus

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

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

  • Le GARCH-dans-la-moyenne s'appuie sur la théorie financière du compromis risque-rendement pour construire une moyenne conditionnelle.
  • Utilisons maintenant la théorie statistique pour bâtir un modèle de moyenne exploitant 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 « autorégressif d'ordre 1 ».
    • Il prédit le prochain rendement à partir de l'écart au rendement moyen à 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$ : Réversion vers la moyenne : les écarts de $R_t$ par rapport à $\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 surré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...