【问题标题】:Cointegration/GPH test on time series data时间序列数据的协整/GPH 检验
【发布时间】:2021-02-10 03:33:22
【问题描述】:

我对 R 和统计很陌生。我想用 GPH 检验来检验两个时间序列的协整。为此,我使用包LongMemoryTS 和函数gph():gph(X, m, l = 1)。作为输出,我得到了参数 d 的值,但我不知道如何确定 t 值或如何生成它。

这里是包中函数的链接:https://rdrr.io/cran/LongMemoryTS/man/gph.html

这是我第一次尝试作为代码 sn-p:

lr.reg.IP_AT_EN <- lm(IP_AT~IP_DE)
error.IP_AT_EN <- residuals(lr.reg.IP_AT_DE)
T <- length(error.IP_AT_EN)
d.IP_AT_DE <- gph(X=error.IP_AT_DE, m=T^0.4)

非常感谢您的帮助!

【问题讨论】:

  • 你能不能给它添加一些简单的数据,让人们更容易复制?

标签: r time-series


【解决方案1】:

对于获取关键值,引导似乎是一种好方法,请参阅此处http://repec.org/sce2004/up.4249.1077649371.pdf。 还有使用理论误差方差的方法(见论文第 3 页)。我不完全确定这是否正确,但您至少可以使用以下代码获得统计数据:

library(xts)
library(LongMemoryTS)

set.seed(123)
# generate some data
dat_ts <- xts(matrix(rnorm(200), ncol = 2), order.by = seq.Date(Sys.Date()-100, length.out = 100, by = 'days'))
              
reg1 <- lm(dat_ts[, 1]~dat_ts[, 2])
error_reg1 <- residuals(reg1)
nT <- length(error_reg1) # bad idea to name it T!

res1 <- gph(X=error_reg1, m=nT^0.4)
res1 

t_stat <- (res1-0)/((pi^2)/6)^0.5
p_value <- pt(q = t_stat, df = 1, lower.tail = TRUE)
p_value
[1] 0.3831716

【讨论】:

    猜你喜欢
    • 2014-03-23
    • 2012-08-24
    • 2018-12-16
    • 2018-07-07
    • 1970-01-01
    • 2013-10-13
    • 1970-01-01
    • 2020-05-20
    • 1970-01-01
    相关资源
    最近更新 更多