如何解读adfuller测试结果?

时间:2017-11-17 11:15:59

标签: math statistics statsmodels

我对统计和编程很陌生。我已经自学了一点,但我正在努力理解p-value的概念以及adfuller测试的各种其他结果。

我正在使用的代码:

(我在stockoverflow上找到了这个代码)

import numpy as np
import os
import pandas as pd
import statsmodels.api as sm
import cython

import statsmodels.tsa.stattools as ts




loc = r"C:\Stock Study\Stock Research\Hist Data"
os.chdir(loc)
xl_file1 = pd.ExcelFile("HDFCBANK.xlsx")
xl_file2 = pd.ExcelFile("KOTAKBANK.xlsx")
y1 = xl_file1.parse("Sheet1")
x1 = xl_file2.parse("Sheet1")

x = x1['Close']
y = y1['Close']


def cointegration_test(y, x):
    # Step 1: regress on variable on the other
    ols_result = sm.OLS(y, x).fit()
    # Step 2: obtain the residual (ols_resuld.resid)
    # Step 3: apply Augmented Dickey-Fuller test to see whether
    #        the residual is unit root
    return ts.adfuller(ols_result.resid)

输出:

  

( - 1.8481210964862593,0.35684591783869046,0,1954,{' 10%':-2.5675580437891359,' 1%':-3.4337010293693235,' 5%&# 39;:-2.863020285222162},21029.870846458849)

如果我正确理解了测试: adf:float

测试统计

pvalue:float

MacKinnon基于MacKinnon的近似p值(1994年,2010年)

usedlag:int

使用的滞后数

nobs:int

用于ADF回归和计算临界值的观测数量

关键值:dict

1%,5%和10%水平的检验统计量的临界值。基于MacKinnon(2010)

icbest:float

如果autolag不是None,则最大化信息标准。

resstore:ResultStore,可选

我无法完全理解结果,并希望有人愿意用外行的语言来解释它们。我发现的所有解释都非常技术性。

我的解释是:它们是协整的,即我们没有反驳零假设(即存在单位根)。置信水平是%数。

我完全错了吗?

3 个答案:

答案 0 :(得分:6)

无效假设:序列中存在非平稳性。

替代假设:系列中存在平稳性

Data: (-1.8481210964862593, 0.35684591783869046, 0, 1954, {'10%': -2.5675580437891359, 
'1%': -3.4337010293693235, '5%': -2.863020285222162}, 21029.870846458849)

让数据一一中断。

第一个数据点:-1.8481210964862593:您所用数据的临界值

第二个数据点::0.35684591783869046:原假设不会被拒绝的概率(p值)

第三数据点::0:用于确定t统计量的回归的滞后次数。因此,这里没有自动相关可以追溯到“ 0”期。

第四个数据点::1954年:分析中使用的观察数。

第五个数据点::{'10%':-2.5675580437891359,'1%':-3.4337010293693235,'5%':-2.863020285222162}:与adfuller检验对应的T值。

由于临界值-1.8> -2.5,-3.4,-2.8(t值位于1%,5%和10%置信区间),因此不能拒绝原假设。因此,您的数据没有固定性

p值也为0.35> 0.05(如果采用5%的显着性水平或95%的置信区间),则不能拒绝原假设。

因此数据不是固定的(这意味着它与时间有关)

答案 1 :(得分:1)

很惊讶没有人回答这个问题,但是我要说,拒绝原假设的典型方法是,您的t检验结果-1.84小于所有临界值(1%,5%,10% ),在这种情况下,它不小于您的临界值。

如果有人不同意,请鸣叫。

答案 2 :(得分:1)

您在问题中所说的是正确的。在对OLS回归残差进行Adfuller检验后,您将检查残差是否具有异方差性,换句话说,如果残差是固定的。

由于您的充实p值低于某个指定的alpha值(即5%),因此您可能会拒绝原假设(Ho),因为仅靠运气就可以使p值低(随机机会)的可能性很小。

一旦Ho被拒绝,可以接受替代假设(Ha),在这种情况下,假设是:残基序列是固定的。

这是您的假设关系:

Ho:该序列不是平稳的,呈现出异方差性。换句话说,您的残基取决于自身(即:yt取决于yt-1,yt-1取决于yt-2 ...,依此类推)

Ha:该序列是平稳的(这通常是我们在回归分析中所需要的)。不需要做任何其他事情。

如果您的问题仍然没有解决,请随时与我联系。

此致