ComeçarComece de graça

Identificando uma série temporal volátil

Neste exercício, você vai plotar os log-retornos do Dow Jones de 2008–2011 ao lado de dados normais independentes e identicamente distribuídos (iid) e dados iid com distribuição t de Student.

O objeto xts djx contém o índice Dow Jones, e os objetos npars e tpars trazem as estimativas de parâmetros obtidas ao ajustar uma distribuição normal e uma distribuição t a djx. Os três objetos já estão carregados no seu workspace.

Aqui, você vai gerar uma amostra normal a partir do modelo ajustado gerando dados normais padrão, escalando-os com o segundo componente npars[2] e deslocando-os com o primeiro componente npars[1]. Para a amostra t de Student, o procedimento é semelhante, mas note que, desta vez, o primeiro componente tpars[1] contém o parâmetro de graus de liberdade, e tpars[2] e tpars[3] contêm os parâmetros de localização e escala.

Depois de criar os gráficos, compare o comportamento dos retornos reais com o dos retornos iid, especialmente ao redor da crise financeira de 2008.

Este exercício faz parte do curso

Gerenciamento de Risco Quantitativo em R

Ver curso

Instruções do exercício

  • Calcule o tamanho n de djx.
  • Gere uma amostra normal de tamanho n com parâmetros dados por npars e atribua os dados a ndata.
  • Gere uma amostra t de tamanho n com parâmetros dados por tpars e atribua os dados a tdata.
  • Converta ndata e tdata em objetos xts chamados ndatax e tdatax, com as mesmas datas de djx.
  • Una as séries temporais djx, ndatax e tdatax em um único objeto chamado alldata e faça o gráfico com plot.zoo() usando type = "h".

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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))
Editar e executar o código