CommencerCommencer gratuitement

Repérer une série temporelle volatile

Dans cet exercice, vous allez tracer les rendements logarithmiques du Dow Jones pour 2008-2011 aux côtés de données normales indépendantes et identiquement distribuées (iid) et de données iid de Student t.

L’objet xts djx contient l’indice Dow Jones, et les objets npars et tpars contiennent les estimations des paramètres obtenues lorsqu’une loi normale et une loi t sont ajustées à djx. Ces trois objets sont chargés dans votre environnement de travail.

Dans cet exercice, vous générerez un échantillon normal à partir du modèle ajusté en produisant des données normales standard, puis en les mettant à l’échelle avec la seconde composante npars[2] et en les décalant avec la première composante npars[1]. Pour l’échantillon de Student t, vous ferez quelque chose de similaire, mais notez que cette fois la première composante tpars[1] contient le paramètre de degrés de liberté et que tpars[2] et tpars[3] contiennent respectivement les paramètres de position et d’échelle.

Après avoir réalisé les graphiques, vous comparerez le comportement des rendements réels avec celui des rendements iid, en particulier autour de la crise financière de 2008.

Cet exercice fait partie du cours

Gestion quantitative des risques avec R

Afficher le cours

Instructions

  • Calculez la longueur n de djx.
  • Générez un échantillon normal de taille n avec les paramètres donnés par npars et assignez les données à ndata.
  • Générez un échantillon t de taille n avec les paramètres donnés par tpars et assignez les données à tdata.
  • Convertissez ndata et tdata en objets xts nommés ndatax et tdatax avec les mêmes dates que djx.
  • Fusionnez les séries temporelles djx, ndatax et tdatax en un seul objet appelé alldata et tracez-le avec plot.zoo() en utilisant type = "h".

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Compute the length n of djx 
n <- ___

#  Generate a normal sample of size n with parameters given by npars
ndata <- rnorm(___)*npars[2] + npars[1]

# Generate a t-distributed sample of size n with paramaters given by tpars
___ <- rt(___, df = ___)*tpars[3] + tpars[2]

# Make ndata and tdata into xts objects
ndatax <- xts(___, time(djx))
tdatax <- xts(___, time(djx))

# Merge djx, ndatax, and tdatax and plot
alldata <- ___
plot.zoo(___, ___, ylim = range(alldata))
Modifier et exécuter le code