LoslegenKostenlos loslegen

Äquivalenz von AR(1) und MA(Unendlich)

Um den Zusammenhang zwischen MA- und AR-Modellen besser zu verstehen, zeigst du, dass ein AR(1)-Modell einem MA(\(\small \infty\))-Modell mit passenden Parametern entspricht.

Du simulierst ein MA-Modell mit den Parametern \(\small 0{,}8, 0{,}8^2, 0{,}8^3, \ldots \) für eine große Anzahl (30) von Lags und zeigst, dass es die gleiche Autokorrelationsfunktion hat wie ein AR(1)-Modell mit \(\small \phi=0{,}8\).

Hinweis: Um eine Zahl x auf die Potenz n zu erhöhen, verwende das Format x**n.

Diese Übung ist Teil des Kurses

Zeitreihenanalyse in Python

Kurs anzeigen

Anleitung zur Übung

  • Importiere die Module aus statsmodels zum Simulieren von Daten und zum Plotten der ACF
  • Verwende eine List Comprehension, um eine Liste mit exponentiell abklingenden MA-Parametern zu erstellen: \(\small 1, 0{,}8, 0{,}8^2, 0{,}8^3, \ldots\)
  • Simuliere 5000 Beobachtungen des MA(30)-Modells
  • Plotte die ACF der simulierten Zeitreihe

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# import the modules for simulating data and plotting the ACF
from statsmodels.tsa.arima_process import ArmaProcess
from statsmodels.graphics.tsaplots import plot_acf

# Build a list MA parameters
ma = [___ for i in range(30)]

# Simulate the MA(30) model
ar = np.array([1])
AR_object = ArmaProcess(ar, ___)
simulated_data = ___.generate_sample(nsample=5000)

# Plot the ACF
plot_acf(___, lags=30)
plt.show()
Code bearbeiten und ausführen