Ajustando a distribuição t aos dados
A distribuição t de Student geralmente se ajusta muito melhor aos retornos diários, semanais e mensais do que a distribuição normal.
Você pode criar uma usando a função fit.st() do pacote QRM. O modelo ajustado resultante tem um componente de estimativas de parâmetros par.ests, que pode ser atribuído a uma lista tpars para guardar os valores de nu, mu e sigma para uso posterior:
> tfit <- fit.st(ftse)
> tpars <- tfit$par.ests
> tpars
nu mu sigma
2.949514e+00 4.429863e-05 1.216422e-02
Neste exercício, você vai ajustar uma distribuição t de Student aos log-retornos diários do índice Dow Jones de 2008–2011 contidos em djx. Em seguida, você vai traçar um histograma dos dados e sobrepor ao gráfico uma linha vermelha mostrando a densidade t ajustada. Os dados djx e o pacote QRM já foram carregados para você.
Este exercício faz parte do curso
Gerenciamento de Risco Quantitativo em R
Instruções do exercício
- Use
fit.st()para ajustar uma distribuição t de Student aos dados emdjxe atribua o resultado atfit. - Atribua o componente
par.estsdo modelo ajustado atparse os elementos detparsanu,muesigma, respectivamente. - Complete
hist()para traçar um histograma dedjx. - Complete
dt()para calcular a densidade t ajustada nos valores dedjxe atribua ayvals. Consulte o vídeo para essa equação. - Complete
lines()para adicionar uma linha vermelha ao histograma dedjxmostrando a densidade t ajustada.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Fit a Student t distribution to djx
tfit <- ___(___)
# Define tpars, nu, mu, and sigma
tpars <- ___
nu <- ___
mu <- ___
sigma <- ___
# Plot a histogram of djx
hist(___, nclass = 20, probability = TRUE, ylim = range(0, 40))
# Compute the fitted t density at the values djx
yvals <- dt((___ - ___)/___, df = ___)/___
# Superimpose a red line to show the fitted t density
lines(___, yvals, col = "red")