การหาเวกเตอร์ cointegration โดยใช้วิธี Johansen


9

ฉันพยายามเข้าใจวิธี Johansen ให้ดีขึ้นดังนั้นฉันจึงพัฒนาตัวอย่าง 3.1 ที่ได้รับจากหนังสือLikelihood-Based-Inference-Cointegrated-Autoregressive-Econometrics ที่เรามีสามกระบวนการ:

X1t=i=1tϵ1i+ϵ2t

X2t=αi=1tϵ1i+ϵ3t

X3t=ϵ4t

ดังนั้นเวกเตอร์ cointegration ควรเป็น [a, -1, 0] และ [0, 0 1] แต่เมื่อฉันใช้วิธี Johansen ฉันไม่สามารถรับพวกเขาได้

รหัสที่ฉันพยายามทำมีดังต่อไปนี้:

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)

ฉันลองใช้ค่า p หลาย ๆ ค่าแล้วไม่สามารถหาพหุเวกเตอร์ได้ฉันรู้ว่าฉันทำอะไรผิดไป ขอบคุณ


สมุดบันทึกอ้างอิงอยู่ที่นี่: github.com/mapsa/seminario-doc-2014/blob/master/…
ab3

คำตอบ:


6

ฉันพบคำตอบแล้ว ถ้าเป็นประโยชน์กับใครบางคนสามารถตรวจสอบสมุดบันทึกต่อไปนี้:

http://nbviewer.ipython.org/github/mapsa/seminario-doc-2014/blob/master/cointegration-example.ipynb


1
เนื่องจากลิงก์สามารถไปตายทำไมไม่คัดลอกส่วนสำคัญของที่นี่?
gung - Reinstate Monica

ดูเหมือนว่าวิธีการ coint_johansen ไม่มีอยู่? ฉันหายไปนี่อะไร โปรดยอมรับคำขอโทษของฉันสำหรับคำถาม noob
RAY

2
มันอยู่ในสาขา coint ของ repo github.com/josef-pkt/statsmodels
mapsa
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.