Zacznij terazZacznij za darmo

Prognozowanie stóp procentowych

Teraz wykorzystasz techniki prognozowania poznane w poprzednim ćwiczeniu i zastosujesz je do rzeczywistych danych. Wrócimy do zbioru danych z pierwszego rozdziału: rocznych danych dotyczących 10-letnich stóp procentowych z ostatnich 56 lat, zapisanych w serii interest_rate_data. Umiejętność prognozowania stóp procentowych ma ogromne znaczenie – nie tylko dla inwestorów obligacyjnych, ale też dla osób takich jak nowi właściciele domów, którzy muszą wybrać między kredytem o stałym a zmiennym oprocentowaniu.

W pierwszym rozdziale zauważyłeś(-aś), że stopy procentowe wykazują pewną tendencję do powrotu do średniej w długim horyzoncie czasowym. Innymi słowy, gdy stopy są wysokie, mają tendencję do spadku, a gdy są niskie – do wzrostu. Obecnie kształtują się poniżej długoterminowych poziomów, więc oczekuje się ich wzrostu. Model AR pozwala jednak skwantyfikować, jak duży wzrost jest spodziewany.

Klasa ARIMA oraz funkcja plot_predict zostały już zaimportowane.

To ćwiczenie jest częścią kursu

Analiza szeregów czasowych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz instancję klasy ARIMA o nazwie mod, używając rocznych danych o stopach procentowych i wybierając parametr order odpowiedni dla modelu AR(1).
  • Dopasuj model mod za pomocą metody .fit() i zapisz wynik w obiekcie wynikowym o nazwie res.
  • Wykreśl dane oraz prognozy wewnątrz- i pozapróbkowe, korzystając z funkcji plot_predict().
    • Pierwszym argumentem plot_predict() powinien być dopasowany model.
    • Przekaż argument start=0, aby prognoza wewnątrzpróbkowa zaczynała się od początku, oraz ustaw end na '2027', aby prognozować kilka lat w przyszłość.
    • Zwróć uwagę, że argument end o wartości 2027 musi być ujęty w cudzysłów, ponieważ reprezentuje datę, a nie pozycję całkowitoliczbową.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod