Descrierea modelului

Analiza seriilor de timp în Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Descrierea matematică a modelului MA(1)

$\large \quad \quad \quad \quad R_t \ = \ \ \mu \ \ + \ \ \epsilon_t \ + \ \ \theta \ \epsilon_{t-1} $

  • Deoarece există un singur termen de eroare decalat în membrul drept, modelul se numește:
    • model MA de ordin 1, sau
    • model MA(1)
  • Parametrul MA este $\large \theta$
  • Staționar pentru orice valoare a lui $\theta$
Analiza seriilor de timp în Python

Interpretarea parametrului MA(1)

$\large \quad \quad \quad \quad R_t \ \ = \ \ \mu \ \ + \ \ \epsilon_t\ + \ \ \theta \ \epsilon_{t-1} $

  • $\large \theta$ negativ: revenire la medie pe o perioadă
  • $\large \theta$ pozitiv: moment pe o perioadă
  • Notă: autocorrelarea pe o perioadă este $\large \theta/(1+\theta^2)$, nu $\large \theta$
Analiza seriilor de timp în Python

Compararea funcțiilor de autocorelare MA(1)

  • $\large \theta=0.9$

  • $\large \theta=0.5$

  • $\large \theta=-0.9$

  • $\large \theta=-0.5$

Analiza seriilor de timp în Python

Exemplu de proces MA(1): randamente intraday

Analiza seriilor de timp în Python

Funcția de autocorelare a randamentelor intraday

Analiza seriilor de timp în Python

Modele MA de ordin superior

  • MA(1)

$\large \quad \quad R_t = \mu + \epsilon_t - \theta_1 \ \epsilon_{t-1}$

  • MA(2)

$\large \quad \quad R_t = \mu + \epsilon_t - \theta_1 \ \epsilon_{t-1} - \theta_2 \ \epsilon_{t-2}$

  • MA(3)

$\large \quad \quad R_t = \mu + \epsilon_t - \theta_1 \ \epsilon_{t-1} - \theta_2 \ \epsilon_{t-2} - \theta_3 \ \epsilon_{t-3}$

  • ...
Analiza seriilor de timp în Python

Simularea unui proces MA

from statsmodels.tsa.arima_process import ArmaProcess
ar = np.array([1])
ma = np.array([1, 0.5])
AR_object = ArmaProcess(ar, ma)
simulated_data = AR_object.generate_sample(nsample=1000)
plt.plot(simulated_data)
Analiza seriilor de timp în Python

Să exersăm!

Analiza seriilor de timp în Python

Preparing Video For Download...