Pronósticando la tasa libre de riesgo (CETES)

Descargamos el archivo de datos

Con toda la información disponible de la tasa libre de riesgo en México, los famosos CETES.

Creamos la tabla de datos que usaremos

Gráfica inicial

¿Cómo se hace un pronóstico?⁠

En términos sencillos, se deben seguir los siguientes pasos:

  1. Seleccionar los datos con los que se trabajará (la serie de tiempo)
  2. Limpiar los datos, eliminar/interpolar los datos vacíos
  3. Una vez tenemos los datos completos y limpios, debemos decidir si utilizar la serie completa, o seleccionar un intervalo de tiempo relevante; no siempre tener todos los datos te dan información útil para hacer el pronóstico.
  4. Si fuera necesario, para estabilizar la varianza de la serie o para volver los datos más claros y poderlos manipular, se puede aplicar una transformación o descomposición.
  5. Dividimos los datos sobre el intervalo decidido, entre los datos con los que entrenaremos el modelo, y los datos contra los que probaremos la eficiencia del modelo. (Se recomienda tener entre 70%-90% de los datos para el entrenamiento)
  6. Se generan modelos de acuerdo a las características de la serie.
  7. Se hace un análisis de residuos generados para pulir los modelos.
  8. Una vez que se tenga un buen modelo, se prueba en el test set.
  9. Si se está contento con los resultados en el test set, se genera el pronóstico para el futuro.

Dividimos los datos

Creamos un Train Set y agregamos un índice para poder manipularlos

Repetimos el proceso

Ahora para el Test Set⁠

Descomposición STL

Analizamos los componentes de la serie (TREND, SEASON, REMAINDER)

Consideramos una transformación

Ya que la serie es parecida con o sin la transformación, evitamos usarla.

MODELOS

Generamos tres modelos ARIMA, SUAVIZACIÓN EXPONENCIAL y un modelo con DESCOMOPOSICIÓN

Series: value 
Model: ARIMA(1,2,1) 

Coefficients:
         ar1      ma1
      0.0813  -0.9380
s.e.  0.0357   0.0136

sigma^2 estimated as 0.01005:  log likelihood=825.67
AIC=-1645.35   AICc=-1645.32   BIC=-1630.82
Series: value 
Model: ETS(A,Ad,N) 
  Smoothing parameters:
    alpha = 0.9999 
    beta  = 0.08186848 
    phi   = 0.9659553 

  Initial states:
     l[0]      b[0]
 8.461068 0.1265611

  sigma^2:  0.01

     AIC     AICc      BIC 
2109.439 2109.530 2138.508 
Series: value 
Model: STL decomposition model 
Transformation: log(value) 

Drift: 3e-04 (se: 6e-04)
sigma^2: 3e-04 

DIAGNÓSTICO DE RESIDUOS

Analizamos los residuos de cada modelo para verificar su eficiencia.

ARIMA

ETS

STL

MÉTRICAS DE ERROR

Analizamos el MAPE como métrica de error para verificar la bondad del modelo a los datos.

FORECAST

Pronosticamos el modelo sobre el Test Set

Gráfica Forecast

PRONOSTICANDO EL FUTURO

Sabiendo que nuestro modelo replicó correctamente tanto el Train como el Test set, pronosticamos para el futuro.

Gráfica Forecast