Prévisions avec un modèle MA
Comme pour les modèles AR, vous allez utiliser des modèles MA pour produire des prévisions en et hors échantillon avec la fonction plot_predict() de statsmodels.
Pour la série simulée simulated_data_1 avec \(\small \theta=-0{,}9\), vous tracerez des prévisions en et hors échantillon. Une grande différence entre les prévisions hors échantillon d’un modèle MA(1) et celles d’un modèle AR(1) est que, au-delà d’un pas de temps, les prévisions MA(1) se réduisent simplement à la moyenne de l’échantillon.
Cet exercice fait partie du cours
Analyse des séries temporelles en Python
Instructions
- Importez la classe
ARIMAet la fonctionplot_predict - Créez une instance de la classe
ARIMAappeléemoden utilisant les données simuléessimulated_data_1et l’ordre (p,d,q) du modèle (ici, pour un MA(1)) :order=(0,0,1) - Ajustez le modèle
modavec la méthode.fit()et enregistrez le résultat dans un objet de résultats nomméres - Tracez les données en échantillon à partir du point 950
- Tracez les prévisions hors échantillon et leurs intervalles de confiance avec la fonction
plot_predict(), en commençant au point 950 et en terminant la prévision au point 1010
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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()