Corrélation de deux séries temporelles

Analyse des séries temporelles en Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Corrélation de deux séries temporelles

  • Courbes S&P500 et action JPMorgan
Analyse des séries temporelles en Python

Corrélation de deux séries temporelles

  • Nuage de points des rendements S&P500 et JP Morgan
Analyse des séries temporelles en Python

Autres nuages de points

  • Corrélation = 0,9

  • Corrélation = -0,9

  • Corrélation = 0,4

  • Corrélation = 1,0

Analyse des séries temporelles en Python

Erreur fréquente : corrélation de deux séries en tendance

  • Dow Jones Industrial Average et observations d'OVNI (www.nuforc.org)

  • Corrélation des niveaux : 0,94

  • Corrélation des variations en % : $\large \approx$ 0
Analyse des séries temporelles en Python

Exemple : corrélation grandes vs petites capitalisations

  • Partir des cours des actions SPX (grandes capitalisations) et R2000 (petites capitalisations)
  • Première étape : calculer les variations en pourcentage des deux séries
      df['SPX_Ret'] = df['SPX_Prices'].pct_change()
      df['R2000_Ret'] = df['R2000_Prices'].pct_change()
    
Analyse des séries temporelles en Python

Exemple : corrélation grandes vs petites capitalisations

  • Visualiser la corrélation avec un nuage de points
      plt.scatter(df['SPX_Ret'], df['R2000_Ret'])
      plt.show()
    

Analyse des séries temporelles en Python

Exemple : corrélation grandes vs petites capitalisations

  • Utiliser la méthode de corrélation pandas pour Series
correlation = df['SPX_Ret'].corr(df['R2000_Ret'])
print("Correlation is: ", correlation)
Correlation is: 0.868
Analyse des séries temporelles en Python

Passons à la pratique !

Analyse des séries temporelles en Python

Preparing Video For Download...