다변량 선형 확률과정(VAR/Granger Causality/Cointegration)

2021. 1. 7. 17:16Data Science/02_Time Series Analysis

728x90

 

다변량 선형 확률과정(VAR/Granger Causality/Cointegration)

 

: 다변량 선형 확률과정을 공부하고자 함.

: 해당 모델들은 결국 AR 모형을 번갈아 사용, X인자 추가, 적분을 활용한 내용들로 구성 됨.

 1) 벡터자기회귀 모형(VAR) - 정상성 데이터 입력(차분 필요)

 2) 그래인저 인과관계(Granger Causality) - 정상성 데이터 입력(차분 필요)

 3) 공적분(Cointegration) - 비정상성 데이터 입력

 


다변량 선형 확률과정


 

 

: 다변량 선형 확률과정 복습을 위해 주식 데이터를 활용하기로 함


2020년 카카오, 네이버 주가


 

 

 

1. 벡터자기회귀 모형(VAR)

 

: 종속 변수와 독립 변수는 상호 영향을 받는 존재.

: 두 변수들 중 어떤 변수가 종속변수로 적합한지에 대한 문제를 해결하기 위해 VAR을 활용.

 

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import statsmodels import statsmodels.api as sm

## VAR(2) 모형 사용
## 데이터는 차분하여 정상화 
fit = sm.tsa.VAR(df.diff(1).dropna()).fit(maxlags=2)
display(fit.summary())

## 예측 및 시각화
forecast_num = 20 fit.plot_forecast(forecast_num)
plt.tight_layout()
plt.show()

# 임펄스반응함수 추정
fit.irf(forecast_num).plot()
plt.tight_layout() plt.show()

 


VAR(2)모형 결과값


 

: 카카오 주식가격네이버 주식가격은 모두 시차1(L1) 까지만 유의한 것으로 나타남.

: 유의수준을 0.01로 본다면(엄격) 카카오 주식가격이 네이버 주식가격에 비해 상대적으로 더 유의미한 변인이 많음.

: 해당 모형을 살펴봤을 때, 카카오 주식종속 변수로 바라보는게 상대적으로 맞다고 생각함.

 


VAR Impulse response 카카오 주식가격 < - > 네이버 주식가격


 

 

: 네이버 가격 변화시점1(하루)에 대해서 부정적인 영향을 미치지만 시점2로 1step 움직일 경우 영향이 거의 없어지는것으로 나타남.

: 반대로 살펴봤을 경우, 카카오의 주식가격네이버 주식가격시점1까지 긍정적인 영향을 주는것으로 나타남.

 

 

2. 그래인저 인과관계 모형(Granger Causality Model)

 

: '닭이 먼저냐 달걀이 먼저냐' 문제를 해결할 때 사용

  • 추론불가한 문제: "닭이 먼저인가 달걀이 먼저인가?" (인과관계)
  • 추론가능한 문제: "닭과 달걀의 생성순서 별 서로의 영향력은 어떤가?" (Granger 인과관계)

: 원인과 인과 관계를 규명하는 어렵기 때문에 상대적으로 두 요인 중 먼저 영향을 미치는 변수를 알아보고자 할 때 사용

  • 귀무가설(Null Hypothesis, 𝐻0H0): 한 변수가 다른 변수를 예측하는데 도움이 되지 않는다
  • 대립가설(Alternative Hypothesis, 𝐻1H1): 한 변수가 다른 변수를 예측하는데 도움이 된다

 

# Granger Causality 테스트
print('\n[naver -> kakao]') granger_result1 = sm.tsa.stattools.grangercausalitytests(df.diff(1).dropna().iloc[:,:].values, maxlag=3, verbose=True)

print('\n[kakao -> naver]') granger_result2 = sm.tsa.stattools.grangercausalitytests(df.diff(1).dropna().iloc[:,[1,0]].values, maxlag=3, verbose=True)

 

 


그래인저 인과관계 결과


 

카카오 주가가 네이버 주가에 시점1(하루)에서 유의한 것으로 나타남

: 카카오 주가가 네이버 주가를 선행하며, 카카오 주가가 네이버 주가를 예측하는데 도움이 됨

 

 

 

3. 공적분 모형(Cointegration Model)

 

: 공적분 상태 = 두 비정상성 시계열을 선형조합하여 생성한 시계열의 적분 차수가 낮아지거나 정상상태가 되는 경우

: 공적분 시계열은 서로 상관관계를 가지고 있지 않더라도 장기적으로 같은 방향으로 움직이는 특성을 지님

: 페어 트레이딩 전략에 활용 됨

 

 

sm.tsa.coint(x,y)

 

 


공적분 검정 결과


 

: 카카오 주가가 네이버 주가 공적분 검정 결과 귀무가설을 기각하지 못함, 즉 두 주가는 공적분 시계열이 아님.

: 세부적 검증을 위해 두 시계열의 선형결합 자료를 시각화하여 살펴보니, 어느정도 트렌드를 가지고 우상향 하는 모습을 보임.

: 이는 정상 시계열이 아니기 때문에 공적분 가정을 만족하지 못함.

 

728x90