J'essaie de mieux comprendre la méthode Johansen, j'ai donc développé un exemple 3.1 donné par le livre Likelihood-Based-Inference-Cointegrated-Autoregressive-Econometrics où nous avons trois processus:
les vecteurs de cointégration doivent donc être [a, -1, 0] et [0, 0 1], mais lorsque j'exécute la méthode Johansen, je ne peux pas les obtenir.
Le code que j'essaie est le suivant:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from statsmodels.tsa.stattools import adfuller
from statsmodels.tsa.johansen import coint_johansen
mu, sigma = 0, 1 # mean and standard deviation
n = 1000
s1 = np.random.normal(mu, sigma, n)
s2 = np.random.normal(mu, sigma, n)
s3 = np.random.normal(mu, sigma, n)
x_1t = np.cumsum(s1)+s2
x_2t = 7*np.cumsum(s1)+s3
x_3t = s3
#Creating Pandas object
todays_date = datetime.datetime.now().date()
index = pd.date_range(todays_date-datetime.timedelta(10), periods=n, freq='D')
y = pd.DataFrame(index=index, data={'col1': x_1t, 'col2': x_2t, 'col3':x_3t} )
p = 4
jres = coint_johansen(y, 0, p)
J'ai essayé plusieurs valeurs de p et je ne peux pas obtenir les vecteurs de cointégration, je sais que je fais quelque chose de mal. Merci.
self-study
cointegration
vecm
mapsa
la source
la source
Réponses:
J'ai trouvé la réponse. Si c'est utile pour quelqu'un, vous pouvez vérifier le cahier suivant:
http://nbviewer.ipython.org/github/mapsa/seminario-doc-2014/blob/master/cointegration-example.ipynb
la source