Ajustar una distribución t a los datos
Una distribución t de Student suele ajustarse mucho mejor que una normal a los rendimientos diarios, semanales y mensuales.
Puedes crearla usando la función fit.st() del paquete QRM. El modelo ajustado resultante tiene un componente de estimaciones de parámetros par.ests, que puedes asignar a una lista tpars para guardar los valores de nu, mu y sigma y usarlos más adelante:
> tfit <- fit.st(ftse)
> tpars <- tfit$par.ests
> tpars
nu mu sigma
2.949514e+00 4.429863e-05 1.216422e-02
En este ejercicio, ajustarás una distribución t de Student a los rendimientos logarítmicos diarios del índice Dow Jones entre 2008 y 2011 contenidos en djx. Después, representarás un histograma de los datos y superpondrás una línea roja que muestre la densidad t ajustada. Los datos djx y el paquete QRM ya están cargados.
Este ejercicio forma parte del curso
Gestión Cuantitativa del Riesgo en R
Instrucciones del ejercicio
- Usa
fit.st()para ajustar una distribución t de Student a los datos endjxy asigna el resultado atfit. - Asigna el componente
par.estsdel modelo ajustado atparsy los elementos detparsanu,muysigma, respectivamente. - Completa
hist()para trazar un histograma dedjx. - Completa
dt()para calcular la densidad t ajustada en los valoresdjxy asígnala ayvals. Consulta el vídeo para esta ecuación. - Completa
lines()para añadir una línea roja al histograma dedjxque muestre la densidad t ajustada.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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")