Un modelo para el rendimiento diario
Todo número de riesgo parte de un modelo del rendimiento diario. El modelo más simple es una curva normal con la media y la desviación típica de la muestra. El modelo t de Student añade un número, los grados de libertad ν: un ν pequeño significa colas gruesas, y cuando ν es grande la curva t se convierte en la normal. scipy.stats da a cada distribución los mismos cuatro métodos: fit halla los parámetros por máxima verosimilitud, logpdf da el logaritmo de la densidad, cdf la probabilidad de caer por debajo de un valor y ppf su inversa, el cuantil. Apréndalos una vez y todas las distribuciones de SciPy funcionan igual: cambiar de modelo es cambiar una palabra.
Para elegir entre modelos hacen falta una puntuación y una prueba. La log-verosimilitud log L=Σᵢlog f(rᵢ) suma lo verosímil que es toda la muestra bajo el modelo, y el criterio de Akaike AIC=2k-2log L, con k el número de parámetros ajustados, cobra un precio por cada parámetro extra: cuanto menor, mejor. La prueba de Kolmogorov–Smirnov mide la mayor distancia entre la curva acumulada de la muestra y la del modelo. stats.kstest(r, dist.cdf, args=params) la devuelve con un valor p, y un valor p minúsculo dice que la muestra no parece un sorteo de ese modelo. Como los parámetros se ajustaron con la misma muestra, el valor p es favorable: úselo para comparar modelos, no como veredicto final. Por último, el modelo se convierte en un número de riesgo: el VaR a un día es menos el cuantil, -dist.ppf(alpha, *params), y el número esperado de días malos es el tamaño de la muestra por dist.cdf(-level, *params).
- Los mismos cuatro métodos en todas partes:
fit,logpdf,cdfyppfsirven para toda distribución descipy.stats, así que los modelos son intercambiables. - Puntuar y luego probar: el AIC compara modelos con un precio por parámetro, la prueba KS pregunta si la muestra puede venir de un modelo.
- El recuento de colas delata al modelo: cuente los días por debajo de -5 % y compárelos con
n * cdf; una normal falla por un factor de cientos.
Lab: qué se califica
- Rendimientos diarios de una columna10 pts
- Dos modelos ajustados15 pts
- Una log-verosimilitud10 pts
- Comparar modelos con el AIC10 pts
- Un valor p de Kolmogorov–Smirnov15 pts
- Un VaR a partir de un cuantil10 pts
- Días extremos observados y esperados10 pts
- El estudio completo20 pts