如何解释更全面的测试结果?

Sid*_*Sid 10 math statistics statsmodels

我对统计和编程很陌生。我已经自学了一些,但我很难理解p-valueadfuller 测试的概念和其他各种结果。

我正在使用的代码:

(我在 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)
Run Code Online (Sandbox Code Playgroud)

输出:

>(-1.8481210964862593, 0.35684591783869046, 0, 1954, {'10%': -2.5675580437891359, '1%': -3.4337010293693235, '5%': -2.863020285222162}, 21029.870846458849)
Run Code Online (Sandbox Code Playgroud)

如果我正确理解测试:

价值
adf : 浮动 检验统计量
pvalue : 浮动 MacKinnon 基于 MacKinnon (1994, 2010) 的近似 p 值
使用滞后:int 使用的滞后数
nobs : int 用于 ADF 回归和临界值计算的观测数
临界值:字典 1 %、5 % 和 10 % 水平的检验统计的临界值。基于 MacKinnon (2010)
icbest : 浮动 如果 autolag 不是 None 的最大化信息标准。
resstore : 结果存储,可选

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

我的解释是:它们是协整的,即我们未能反驳零假设(即存在单位根)。置信水平是百分比数字。

我完全错了吗?

noo*_*oob 11

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

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

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

让我们一一分解数据。

第一个数据点: -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% 的置信区间),则不能拒绝零假设。

因此数据是非平稳的(这意味着它与时间有关)


ant*_*eus 6

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

如果有人不同意,请插话。

  • 抱歉,可能是误会,如有错误请指正。但实际上t_value低于临界值,因此我们给予单位根检验的可信度很小。该序列应该是非平稳的:(i) p_value(0.35) > 0.05,并且 (ii) t_value 低于临界值 (2认同)

Phi*_*eal 5

你在问题中说的是正确的。一旦你对你的 OLS 回归残差应用 Adfuller 检验,你就在检查你的残差是否有任何异方差性,换句话说,如果你的残差是固定的。

由于您的 adfuller p 值低于某个指定的 alpha(即:5%),那么您可能会拒绝原假设 (Ho),因为仅靠运气(随机机会)获得 p 值的概率如此之低) 的可能性很小。

一旦 Ho 被拒绝,就可以接受备择假设 (Ha),在这种情况下将是:残差序列是平稳的。

这是你的假设关系:

何:级数不是平稳的,它呈现异方差性。换句话说,您的残差取决于自身(即:yt 取决于 yt-1,yt-1 取决于 yt-2 ...,依此类推)

哈:序列是平稳的(这通常是我们在回归分析中所希望的)。没有什么需要做的了。

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