Previsión con el modelo MA
Al igual que hiciste con los modelos AR, utilizarás modelos MA para predecir datos dentro y fuera de la muestra utilizando la función plot_predict()
de statsmodels.
Para la serie simulada simulated_data_1
con \(\small \theta=-0,9\), trazarás previsiones dentro y fuera de la muestra. Una gran diferencia que verás entre las previsiones fuera de muestra con un modelo MA(1) y un modelo AR(1) es que las previsiones MA(1) a más de un periodo en el futuro son simplemente la media de la muestra.
Este ejercicio forma parte del curso
Análisis de Series Temporales en Python
Instrucciones de ejercicio
- Importa la clase
ARIMA
e importa también la funciónplot_predict
- Crea una instancia de la clase
ARIMA
llamadamod
utilizando los datos simuladossimulated_data_1
y el orden (p,d,q) del modelo (en este caso, para un MA(1)),order=(0,0,1)
- Ajusta el modelo
mod
utilizando el método.fit()
y guárdalo en un objeto de resultados llamadores
- Traza los datos de la muestra a partir del punto 950
- Traza previsiones fuera de muestra de los datos y los intervalos de confianza utilizando la función
plot_predict()
, comenzando con el punto de datos 950 y terminando la previsión en el punto 1010.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Import the ARIMA and plot_predict from statsmodels
from statsmodels.tsa.arima.model import ARIMA
from statsmodels.graphics.tsaplots import plot_predict
# Forecast the first MA(1) model
mod = ARIMA(___, order=___)
res = mod.fit()
# Plot the data and the forecast
fig, ax = plt.subplots()
simulated_data_1.loc[950:].plot(ax=ax)
plot_predict(res, start=___, end=___, ax=ax)
plt.show()