R:参数意味着使用财务数据的行数不同

时间:2017-01-03 12:20:26

标签: r

我打算建立一个代码来检查两个时间序列的金融价格数据的协整,以便更好地预测其中一个。

为此,我选择了这两个时间序列:BBVA历史价格和IBEX35并构建这个小代码:

ibex <- new.env()
bbva <- new.env()

library(quantmod)

getSymbols("^IBEX", env = ibex, src = "yahoo", from = as.Date("2010-01-04"), to = as.Date("2015-11-30"))
getSymbols("bbva", env = bbva, src = "yahoo", from = as.Date("2010-01-04"), to = as.Date("2015-11-30"))
ibex <- ibex$IBEX
ibex <- ibex$IBEX.Adjusted
bbva <- bbva$BBVA
bbva <- bbva$BBVA.Adjusted

ldbbva <- diff(log(bbva))
ldibex <- diff(log(ibex))

mean <- mean(ldbbva, na.rm = TRUE) 
ldbbva[is.na(ldbbva)] <- mean

mean <- mean(ldibex, na.rm = TRUE) 
ldbbva[is.na(ldibex)] <- mean

library(urca)

jotest=ca.jo(data.frame(ldbbva,ldibex), type="trace", K=2, ecdet="none", spec="longrun")

当我尝试从我的时间序列中创建一个数据框时,我面临这个错误参数暗示不同的行数:1488,1514

我该怎么办?

1 个答案:

答案 0 :(得分:3)

您需要加入时间序列才能正确对齐。

dat <- merge(ibex, bbva)

dat <- diff(log(dat))

#mean imputation
dat <- na.aggregate(dat)

library(urca)
jotest=ca.jo(dat, type="trace", K=2, ecdet="none", spec="longrun")
###################################################### 
## Johansen-Procedure Unit Root / Cointegration Test # 
###################################################### 
#
#The value of the test statistic is: 619.1603 1473.644