Modele de cointegrare

Analiza seriilor de timp în Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Ce este cointegrarea?

  • Două serii, $\large P_t$ și $\large Q_t$, pot fi mersuri aleatoare
  • Dar combinația liniară $\large P_t - c \ Q_t$ poate să nu fie un mers aleatoriu!
  • Dacă acest lucru este adevărat
    • $\large P_t - c \ Q_t$ este previzibilă
    • $\large P_t$ și $\large Q_t$ sunt cointegrate
Analiza seriilor de timp în Python

Analogie: Câine în lesă

  • $\large P_t = $ Stăpânul
  • $\large Q_t = $ Câinele
  • Ambele serii arată ca mersuri aleatoare
  • Diferența, sau distanța dintre ele, pare să revină la medie
    • Dacă câinele rămâne prea în urmă, este tras înainte
    • Dacă câinele se depărtează prea mult, este tras înapoi
Analiza seriilor de timp în Python

Exemplu: Păcură și gaz natural

  • Păcura și gazul natural arată amândouă ca mersuri aleatoare...

Analiza seriilor de timp în Python

Exemplu: Păcură și gaz natural

  • Dar diferența (spread-ul) revine la medie

Analiza seriilor de timp în Python

Ce tipuri de serii sunt cointegrate?

  • Substitute economice
    • Păcură și gaz natural
    • Platină și paladiu
    • Porumb și grâu
    • Porumb și zahăr
    • ...
    • Bitcoin și Ethereum?
  • Dar concurenții?
    • Coca-Cola și Pepsi?
    • Apple și Blackberry? Nu! Lesa s-a rupt și câinele a fugit
Analiza seriilor de timp în Python

Doi pași pentru testarea cointegrării

  • Regresați $\large P_t$ față de $\large Q_t$ și obțineți panta $\large c$
  • Aplicați testul Augmented Dickey-Fuller pe $\large P_t - c \ Q_t$ pentru a testa mersul aleatoriu
  • Alternativ, utilizați funcția coint din statsmodels, care combină ambii pași
from statsmodels.tsa.stattools import coint
coint(P,Q)
Analiza seriilor de timp în Python

Să exersăm!

Analiza seriilor de timp în Python

Preparing Video For Download...