CommencezCommencez gratuitement

Prévision avec un modèle MA

Comme vous l'avez fait avec les modèles AR, vous allez utiliser des modèles MA pour produire des prévisions à l'intérieur de l'échantillon et hors échantillon à l'aide de 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 intra-échantillon et hors échantillon. Une grande différence que vous observerez 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'une période dans le futur, les prévisions MA(1) se réduisent simplement à la moyenne de l'échantillon.

Cette activité fait partie du cours

Analyse des séries chronologiques en Python

Voir le cours

Instructions de l’exercice

  • Importez la classe ARIMA et la fonction plot_predict.
  • Créez une instance de la classe ARIMA appelée mod à partir des données simulées simulated_data_1 et de l'ordre (p,d,q) du modèle (ici, pour un MA(1)), order=(0,0,1).
  • Ajustez le modèle mod avec la méthode .fit() et enregistrez le résultat dans un objet de résultats nommé res.
  • Tracez les données intra-échantillon à partir du point de données 950.
  • Tracez les prévisions hors échantillon et les intervalles de confiance à l'aide de la fonction plot_predict(), en commençant au point de données 950 et en terminant la prévision au point 1010.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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()
Modifier et exécuter le code