Modèles ARCH et GARCH

Informatique — EViews, chapitre 5

Tous les modèles des chapitres précédents supposent une variance constante. Sur des données financières, cette hypothèse est manifestement fausse : les périodes agitées succèdent aux périodes calmes, et les fortes variations se regroupent.

Les modèles ARCH et GARCH modélisent cette variance changeante — et EViews les estime avec une facilité que peu de logiciels égalent.

Le regroupement de volatilité

Capture 1 — une série de rendements financiers Montrer le graphique d'une série de rendements quotidiens, faisant apparaître nettement l'alternance de périodes calmes et de périodes agitées.
ImportantCe que l’on observe sur tout actif financier

Les rendements eux-mêmes sont à peu près imprévisibles — c’est l’efficience des marchés.

Mais leur amplitude ne l’est pas : une forte variation aujourd’hui annonce une forte variation demain, quel qu’en soit le signe. C’est le volatility clustering, et c’est ce que les modèles GARCH capturent.

Conséquence pratique : le risque n’est pas constant. Une VaR calculée sur une volatilité historique moyenne sous-estime le risque en période de crise et le surestime en période calme.

Préparer les données

Les modèles s’appliquent aux rendements, jamais aux prix.

genr r = dlog(prix)          ' rendement logarithmique
genr r = @pch(prix)          ' variation en pourcentage

Le rendement logarithmique est préféré en finance : il s’additionne dans le temps, et se rapproche mieux d’une distribution symétrique.

Détecter l’effet ARCH

Le corrélogramme des carrés

Sur la série de rendements : View → Correlogram Squared Residuals

Ou, plus simplement, sur une équation déjà estimée :

View → Residual Diagnostics → Correlogram Squared Residuals

Capture 2 — corrélogramme des résidus au carré Montrer les colonnes AC et PAC des carrés, avec plusieurs barres nettement hors des bandes de confiance aux premiers retards.

Les rendements ne sont pas autocorrélés, mais leurs carrés le sont : voilà la signature de l’effet ARCH. Une amplitude élevée en t-1 prédit une amplitude élevée en t.

Le test ARCH-LM

View → Residual Diagnostics → Heteroskedasticity Tests → ARCH

Capture 3 — le test ARCH-LM Montrer la boîte demandant le nombre de retards, puis la sortie avec F-statistic, Obs*R-squared et leurs probabilités.

Le test régresse le carré des résidus sur ses propres retards. Une Prob. Chi-Square inférieure à 0,05 confirme la présence d’un effet ARCH.

AstuceEstimez d’abord un modèle pour la moyenne

Le test s’applique aux résidus d’une équation. Si les rendements sont à peu près imprévisibles, une régression sur la seule constante suffit :

ls r c

C’est un modèle sans intérêt pour la moyenne — mais c’est bien la variance de ses résidus qui nous intéresse.

Estimer un GARCH

Quick → Estimate Equation → Method : ARCH — Autoregressive Conditional Heteroskedasticity

Capture 4 — la boîte d'estimation ARCH Montrer l'équation de moyenne en haut, puis la section « Variance and distribution specification » avec le modèle (GARCH/TARCH), les ordres ARCH et GARCH, et la liste des distributions d'erreur.

La boîte comporte deux parties distinctes.

L’équation de moyenne — en haut, comme une régression ordinaire :

r c

La spécification de la variance — en bas : le type de modèle, les ordres, la distribution.

Réglage Choix habituel
Model GARCH/TARCH, EGARCH, PARCH, Component ARCH
ARCH order (q) 1
GARCH order (p) 1
Error distribution Normal, Student’s t, GED
AstuceGARCH(1,1) suffit presque toujours

Des décennies de littérature empirique aboutissent au même constat : sur des rendements financiers, le GARCH(1,1) capture l’essentiel, et les ordres supérieurs n’apportent presque rien.

Commencez toujours par là. Ne compliquez que si les diagnostics l’exigent.

Capture 5 — sortie d'un GARCH(1,1) Montrer la sortie complète : équation de moyenne en haut, puis le bloc « Variance Equation » avec C, RESID(-1)^2 et GARCH(-1), et leurs probabilités.

Lire l’équation de variance

Trois coefficients.

Terme Nom Ce qu’il mesure
C \omega la variance de long terme
RESID(-1)^2 \alpha réaction au choc de la veille
GARCH(-1) \beta persistance de la volatilité passée
ImportantTrois vérifications, dans cet ordre

1. \alpha et \beta doivent être positifs. Une variance négative n’a aucun sens. Si l’un ressort négatif, le modèle est mal spécifié — passez à l’EGARCH, qui ne souffre pas de cette contrainte.

2. \alpha + \beta doit être inférieur à 1. C’est la condition de stationnarité de la variance. Au-delà, la volatilité explose et le modèle ne peut pas servir à prévoir.

3. \alpha + \beta proche de 1 mesure la persistance. Une somme de 0,98 signifie qu’un choc de volatilité met très longtemps à se dissiper. C’est le cas usuel sur données quotidiennes, et c’est une information économique en soi.

La demi-vie d’un choc se calcule par \ln(0{,}5)/\ln(\alpha+\beta) : avec 0,98, elle dépasse trente jours.

La distribution des erreurs

AvertissementLa loi normale est presque toujours rejetée

Les rendements financiers ont des queues plus épaisses que la normale : les événements extrêmes y sont bien plus fréquents que la loi normale ne le prédit.

Estimez avec Student's t et comparez les critères d’information à ceux du modèle normal. Dans l’immense majorité des cas, Student l’emporte nettement.

L’enjeu n’est pas académique : une VaR calculée sous hypothèse de normalité sous-estime systématiquement le risque extrême. C’est précisément la critique adressée aux modèles de risque avant 2008.

EViews affiche alors un paramètre T-DIST. DOF — les degrés de liberté. En dessous de 10, les queues sont nettement plus épaisses que normales.

Les variantes asymétriques

TARCH — l’effet de levier

Sur les marchés d’actions, une baisse augmente la volatilité davantage qu’une hausse de même ampleur. Le GARCH symétrique ne capture pas cette asymétrie.

Model : GARCH/TARCH, avec « Threshold order » = 1

Capture 6 — sortie d'un TARCH Montrer l'équation de variance comportant le terme supplémentaire RESID(-1)^2*(RESID(-1)<0) et son coefficient.

Le terme supplémentaire RESID(-1)^2*(RESID(-1)<0) ne s’active que lorsque le choc précédent était négatif. Son coefficient \gamma :

  • positif et significatif : les mauvaises nouvelles augmentent plus la volatilité — l’effet de levier est confirmé ;
  • non significatif : le GARCH symétrique suffit.

EGARCH

Model : EGARCH

L’EGARCH modélise le logarithme de la variance, ce qui garantit sa positivité sans imposer de contrainte sur les coefficients. Il capture aussi l’asymétrie.

C’est le recours naturel quand le GARCH ordinaire produit des coefficients négatifs.

AstuceComment choisir entre les variantes

Estimez GARCH, TARCH et EGARCH sur les mêmes données, et comparez leurs critères de Schwarz.

Vérifiez ensuite que les résidus standardisés ne présentent plus d’effet ARCH — c’est le vrai test de validation.

En pratique, sur des actions, le TARCH ou l’EGARCH l’emportent presque toujours sur le GARCH symétrique. Sur des taux de change, l’asymétrie est plus faible.

Valider le modèle

View → Residual Diagnostics → Correlogram Squared Residuals

Capture 7 — corrélogramme des résidus standardisés au carré Montrer un corrélogramme dont toutes les barres restent dans les bandes de confiance, avec des probabilités toutes supérieures à 0,05.
ImportantLe seul diagnostic qui compte vraiment

Après estimation, les résidus standardisés au carré ne doivent plus présenter d’autocorrélation, et le test ARCH-LM ne doit plus rien détecter.

Si un effet ARCH subsiste, le modèle n’a pas absorbé toute la dynamique de la variance : augmentez les ordres, ou changez de variante.

Toutes les barres dans les bandes : le modèle a fait son travail.

Extraire et employer la variance conditionnelle

View → Conditional SD Graph pour la visualiser

Capture 8 — la volatilité conditionnelle estimée Montrer le graphique de l'écart-type conditionnel dans le temps, avec ses pics correspondant aux périodes de crise.

Proc → Make GARCH Variance Series pour l’enregistrer

Capture 9 — la boîte « Make GARCH Variance Series » Montrer les champs permettant de nommer la série de variance conditionnelle et, le cas échéant, la variance permanente.

La série obtenue est la variance conditionnelle h_t. L’écart-type s’en déduit par genr sigma = @sqrt(h).

Calculer une VaR conditionnelle

C’est l’application la plus directe, et celle qui intéresse un cours de gestion des risques.

genr h = ...                          ' variance conditionnelle enregistree
genr sigma = @sqrt(h)
genr var95 = -1.645 * sigma           ' VaR 95 % sous normalite
genr var99 = -2.326 * sigma

Sous hypothèse de Student à \nu degrés de liberté, le quantile change et les seuils s’écartent davantage — c’est tout l’intérêt d’avoir estimé la distribution.

AstuceLa différence avec une VaR historique

Une VaR calculée sur l’écart-type historique de l’échantillon entier est constante dans le temps. Elle ne réagit pas aux crises.

Une VaR conditionnelle GARCH s’élargit dès que la volatilité monte, donc dès l’entrée en crise. C’est exactement ce que la réglementation prudentielle attend d’un modèle interne.

Tracez les deux sur le même graphique avec les rendements réalisés : les dépassements de la VaR historique se concentrent en grappes pendant les crises, ceux de la VaR conditionnelle se répartissent uniformément. C’est le fondement du backtesting réglementaire.

Prévoir la volatilité

Proc → Forecast, en cochant GARCH variance

Capture 10 — prévision de la variance conditionnelle Montrer la courbe de variance prévue convergeant progressivement vers sa valeur de long terme.

La prévision de variance converge vers la variance inconditionnelle \omega/(1-\alpha-\beta). Plus \alpha+\beta est proche de 1, plus cette convergence est lente — ce qui rejoint la notion de persistance.

Le GARCH-M

Model : GARCH/TARCH, avec « ARCH-M » = Std. Dev. ou Variance

Le modèle GARCH-M introduit la volatilité dans l’équation de moyenne : le rendement attendu dépend du risque encouru. C’est la traduction empirique directe de l’arbitrage rendement-risque.

Un coefficient positif et significatif sur le terme ARCH-M constitue une estimation de la prime de risque.

En ligne de commande

genr r = dlog(prix)

ls r c                                    ' modele de moyenne
eq01.archtest(4)                          ' test ARCH-LM, 4 retards

arch(1,1) r c                             ' GARCH(1,1) normal
arch(1,1, tdist) r c                      ' avec loi de Student
arch(1,1, thrsh=1) r c                    ' TARCH
arch(1,1, egarch) r c                     ' EGARCH
arch(1,1, archm=sd) r c                   ' GARCH-M

eq02.makegarch h                          ' enregistrer la variance
eq02.archtest(4)                          ' verifier qu'il ne reste rien

À vous

Sur une série de prix d’actif — indice boursier, taux de change, matière première — quotidienne ou hebdomadaire :

  1. Calculez les rendements logarithmiques et tracez-les ; repérez visuellement le regroupement de volatilité ;
  2. Estimez ls r c et testez l’effet ARCH ;
  3. Estimez un GARCH(1,1) sous loi normale, puis sous Student ; comparez les critères de Schwarz ;
  4. Vérifiez que \alpha + \beta < 1 et calculez la demi-vie d’un choc ;
  5. Estimez un TARCH : l’effet de levier est-il significatif ?
  6. Enregistrez la variance conditionnelle et tracez la VaR à 99 % contre les rendements réalisés.

Sur la question 3 : la loi de Student l’emporte presque toujours, souvent nettement. Les degrés de liberté estimés se situent fréquemment entre 4 et 8 — des queues bien plus épaisses que la normale.

Sur la question 4 : \alpha + \beta dépasse généralement 0,95 sur données quotidiennes. Avec 0,97, la demi-vie vaut \ln(0{,}5)/\ln(0{,}97) \approx 23 jours : un choc de volatilité met plus d’un mois de bourse à s’estomper de moitié.

Sur la question 5 : sur un indice d’actions, l’effet de levier ressort presque systématiquement. Sur un taux de change, beaucoup moins — les deux devises étant symétriques, il n’y a pas de « mauvaise nouvelle » univoque.

Sur la question 6 : comptez les dépassements. Sur une VaR à 99 %, vous devriez en observer environ 1 % des jours. Nettement plus signale un modèle qui sous-estime le risque ; nettement moins, un modèle trop prudent qui immobilise du capital inutilement.

Ce qu’il faut retenir

Opération Chemin ou commande
préparer genr r = dlog(prix) — jamais sur les prix
détecter Correlogram Squared Residuals ou test ARCH-LM
estimer Quick → Estimate Equation → Method : ARCH
point de départ GARCH(1,1) — suffit presque toujours
distribution Student's t bat la normale dans la plupart des cas
\alpha, \beta > 0 sinon passer à l’EGARCH
\alpha + \beta < 1 condition de stationnarité
\alpha + \beta proche de 1 forte persistance — demi-vie \ln(0{,}5)/\ln(\alpha+\beta)
effet de levier TARCH, coefficient du terme seuil
valider plus aucun effet ARCH dans les résidus standardisés
visualiser View → Conditional SD Graph
enregistrer Proc → Make GARCH Variance Series
VaR conditionnelle -1{,}645 \times \sigma_t à 95 %, sous normalité
prime de risque GARCH-M

Le dernier chapitre change de dimension : les données de panel, où l’on suit plusieurs individus dans le temps.