Prévoir les taux d’intérêt
Vous allez maintenant utiliser les techniques de prévision vues dans l’exercice précédent et les appliquer à de vraies données plutôt qu’à des données simulées. Vous allez reprendre un jeu de données du premier chapitre : les données annuelles des taux d’intérêt à 10 ans sur 56 ans, disponibles dans une Series appelée interest_rate_data. Savoir prévoir les taux d’intérêt est crucial, non seulement pour les investisseurs obligataires, mais aussi pour des particuliers comme les nouveaux propriétaires qui doivent choisir entre un prêt à taux fixe ou variable.
Vous avez vu au premier chapitre qu’il existe une certaine réversion vers la moyenne des taux d’intérêt sur de longs horizons. Autrement dit, quand les taux sont élevés, ils ont tendance à baisser, et quand ils sont faibles, à remonter avec le temps. Actuellement, ils sont en dessous des taux de long terme, donc on s’attend à une hausse, mais un modèle AR vise à quantifier l’ampleur de cette hausse attendue.
La classe ARIMA et la fonction plot_predict ont déjà été importées.
Cet exercice fait partie du cours
Analyse des séries temporelles en Python
Instructions
- Créez une instance de la classe
ARIMAappeléemoden utilisant les données annuelles de taux d’intérêt et en choisissant l’argumentordercorrespondant à un modèle AR(1). - Ajustez le modèle
modavec la méthode.fit()et enregistrez le résultat dans un objet de résultats appeléres. - Tracez les données ainsi que les prévisions in-sample et out-of-sample à l’aide de la fonction
.plot_predict().- Le premier argument de
plot_predict()doit être le modèle ajusté. - Passez les arguments
start=0pour démarrer la prévision in-sample dès le début, et choisissezendégal à '2027' pour prévoir plusieurs années dans le futur. - Notez que l’argument
end2027 doit être entre guillemets ici puisqu’il représente une date et non une position entière.
- Le premier argument de
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Forecast interst rates using an AR(1) model
mod = ARIMA(interest_rate_data, order=___)
res = mod.fit()
# Plot the data and the forecast
fig, ax = plt.subplots()
interest_rate_data.plot(ax=ax)
plot_predict(___, start=___, end=___, alpha=None, ax=ax)
plt.show()