Modelli di cointegrazione

Analisi delle serie temporali in Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Cos'è la cointegrazione?

  • Due serie, $\large P_t$ e $\large Q_t$, possono essere random walk
  • Ma la combinazione lineare $\large P_t - c \ Q_t$ può non esserlo!
  • Se è così
    • $\large P_t - c \ Q_t$ è prevedibile
    • $\large P_t$ e $\large Q_t$ sono dette co-integrate
Analisi delle serie temporali in Python

Analogia: cane al guinzaglio

  • $\large P_t = $ Proprietario
  • $\large Q_t = $ Cane
  • Entrambe le serie sembrano un random walk
  • La differenza, o distanza tra loro, sembra mean-reverting
    • Se il cane resta troppo indietro, viene tirato avanti
    • Se va troppo avanti, viene tirato indietro
Analisi delle serie temporali in Python

Esempio: Heating Oil e Natural Gas

  • Heating Oil e Natural Gas sembrano entrambi random walk...

Analisi delle serie temporali in Python

Esempio: Heating Oil e Natural Gas

  • Ma lo spread (differenza) è mean-reverting

Analisi delle serie temporali in Python

Quali tipi di serie sono co-integrate?

  • Sostituti economici
    • Heating Oil e Natural Gas
    • Platino e Palladio
    • Mais e Grano
    • Mais e Zucchero
    • ...
    • Bitcoin ed Ethereum?
  • E i concorrenti?
    • Coke e Pepsi?
    • Apple e Blackberry? No! Il guinzaglio si è rotto e il cane è scappato
Analisi delle serie temporali in Python

Due passaggi per testare la cointegrazione

  • Regressa $\large P_t$ su $\large Q_t$ e ottieni la pendenza $\large c$
  • Esegui il test Augmented Dickey-Fuller su $\large P_t - c \ Q_t$ per verificare il random walk
  • In alternativa, usa la funzione coint in statsmodels che combina entrambi i passaggi
from statsmodels.tsa.stattools import coint
coint(P,Q)
Analisi delle serie temporali in Python

Esercitiamoci!

Analisi delle serie temporali in Python

Preparing Video For Download...