向量误差修正(VECM)模型案例分析
向量误差修正模型案例分析
生成数据
set.seed(12345) u1<-rnorm(500) u2<-arima.sim(list(ar=0.6),n=500) #生成模拟的一阶自回归模型 u3<-arima.sim(list(ar=.4),n=500) y1<-cumsum(u1) #生成随机游走序列 y1 y2<-0.4*y1+u2 y3<-0.8*y1+u3 #调用urca包中的ca.jo()对时间序列y1 y2 y3进行Jonhansen协整检验 #2.Jonhansen协整检验 library(urca) data<-data.frame(y1=y1,y2=y2,y3=y3) #将变量组织为数据框
## ca.jo(x, type = c("eigen", "trace"), ecdet = c("none", "const", "trend"), K = 2,spec=c("longrun", "transitory"), season = NULL, dumvar = NULL) 注意这里只是用默认设置。
model.vecm<-ca.jo(data)
head(model.vecm@x) #ca.jo使用S4方法,故用@提取变量y1 y2 y3
[1,] 0.5855288 -0.31135095 -1.0377854
[2,] 1.2949948 0.59430322 -0.5116634
[3,] 1.1856915 1.28751444 -0.1316301
[4,] 0.7321943 1.64792194 0.7132483
[5,] 1.3380818 0.09367809 1.3288343
[6,] -0.4798742 -0.61468043 0.1199645
#使用slotNames()显示模型包含的全部对象类型
slotNames(model.vecm)
[1] "x" "Z0" "Z1" "ZK" "type" "model" "ecdet" [8] "lag" "P" "season" "dumvar" "cval" "teststat" "lambda"
[15] "Vorg" "V" "W" "PI" "DELTA" "GAMMA" "R0"
[22] "RK" "bp" "spec" "call" "test.name"
summary(model.vecm)######################
# Johansen-Procedure #
######################
Test type: maximal eigenvalue statistic (lambda max) , with linear trend
Eigenvalues (lambda):
[1] 0.222707791 0.167079305 0.007684667Values of teststatistic and critical values of test:
test 10pct 5pct 1pct
r <= 2 | 3.84 6.50 8.18 11.65
r <= 1 | 91.04 12.91 14.90 19.19
r = 0 | 125.47 18.90 21.07 25.75Eigenvectors, normalised to first column:
(These are the cointegration relations)y1.l2 y2.l2 y3.l2
y1.l2 1.0000000 1.000000 1.0000000
y2.l2 -0.2355148 -5.064504 -0.1799248
y3.l2 -1.1315152 1.143660 -0.1993207
Weights W:
(This is the loading matrix)y1.l2 y2.l2 y3.l2
y1.d 0.05151358 0.002693258 -0.008416933
y2.d 0.11164178 0.075923301 -0.002918384
y3.d 0.51768302 -0.015197036 -0.006078055从统计检验值可以看出,在r为2时接收原假设,即认为协整向量的秩为2
使用cajorls()估计VECM模型的系数矩阵
cajorls(model.vecm,r=2) #估计VECM模型 ,cajorls(z, r = 1, r # eg.number = NULL),其中r为协整向量的秩
$rlmCall:
lm(formula = substitute(form1), data = data.mat)Coefficients:y1.d y2.d y3.d
ect1 0.05421 0.18757 0.50249
ect2 -0.02577 -0.41081 -0.04496
constant 0.08575 0.28405 -0.02490
y1.dl1 0.01915 0.22922 0.47143
y2.dl1 0.01735 -0.38180 0.04342
y3.dl1 -0.03389 -0.05120 -0.58422
$beta
ect1 ect2
y1.l2 1.000000e+00 0.0000000
y2.l2 2.775558e-17 1.0000000
y3.l2 -1.242478e+00 -0.4711494
计算结果中,第一部分(rlm)给出误差校正矩阵、常数项及差分解释变量的估
计值;第二部分为标准化后的协整向量矩阵。
估计的误差修正模型为:
VECM模型转化为水平VAR模型
library(vars)
model.var<-vec2var(model.vecm,r=2) #获取与VECM模型等价########的VAR模型估计
model.varCoefficient matrix of lagged endogenous variables:
A1:y1.l1 y2.l1 y3.l1
y1 1.0191535 0.01734796 -0.03389437
y2 0.2292213 0.61819733 -0.05119624
y3 0.4714272 0.04342308 0.41578278A2:y1.l2 y2.l2 y3.l2
y1 0.03505334 -0.04312019 -0.02131386
y2 -0.04165626 -0.02900446 0.01170232
y3 0.03105876 -0.08837964 -0.01892923
Coefficient matrix of deterministic regressor(s).
constant
y1 0.08574980
y2 0.28405415
y3 -0.02490038
计算结果表明,与VECM模型等价的VAR模型估计为:
向量误差修正(VECM)模型案例分析相关推荐
- Matlab用向量误差修正VECM模型蒙特卡洛Monte Carlo预测债券利率时间序列和MMSE 预测...
原文链接:http://tecdat.cn/?p=27246 此示例说明如何从 VEC( q ) 模型生成 Monte Carlo 预测.该示例将生成的预测与最小均方误差 (MMSE) 预测和来自V ...
- Matlab用向量误差修正VECM模型蒙特卡洛Monte Carlo预测债券利率时间序列和MMSE 预测
最近我们被客户要求撰写关于VECM的研究报告,包括一些图形和统计输出. 此示例说明如何从 VEC( q ) 模型生成 Monte Carlo 预测.该示例将生成的预测与最小均方误差 (MMSE) 预测 ...
- 单方程误差修正模型案例分析
单方程误差修正模型案例分析 数据的生成 set.seed(12345) u<-rnorm(500) x<-cumsum(u) y<-x+u E-G协整估计及检验 model.lm&l ...
- R语言Logistic回归模型案例:分析吸烟、饮酒与食管癌的关系
R语言Logistic回归模型案例:分析吸烟.饮酒与食管癌的关系 目录 R语言Logistic回归模型案例分析吸烟.饮酒与食管癌的关系 #样例数据
- SWAT模型案例分析
SWAT模型的产生 SWAT模型的最直接前身是SWRRB模型.而SWRRB模型则起始于20世纪70年代美国农业部农业研究中心开发的CREAMS(Chemicals, Runoff, and Erosi ...
- 卡诺模型案例分析_3个维度看竞品分析!
谁都想站在巨人的肩膀上,问题是怎么上去? ABC分享会线下24期回顾 时间:10月24日 下午13:00-17:30 地点:上海嘉定U-CUBE创意空间 参与人数:18人 主题:怎样做竞品分析 这次活 ...
- 卡诺模型案例分析_AMOS案例分析 | 结构方程模型(二)
使用结构方程的方法进行模型的验证 1. 替换缺失值 在读取数据文件之前,对数据的完整性问题做适当处理.利用SPSS进行数据缺失值的处理.操作过程:转换→替换缺失值 输出结果:形成新的数据集.从下表中可 ...
- 卡诺模型案例分析_质量管理神器,Kano模型您可知道?
在六西格玛中,倾听.分析.理解顾客的需求 (voice of customer)是非常重要的,而Kano模型就是这个环节中关键的工具之一. 而笔者觉得更为重要的是,Kano模型不仅仅是质量领域的重要工 ...
- 3sigma模型案例分析彻底搞懂置信度与置信区间
学习机器学习算法时,经常会碰到数理统计中置信区间.置信度,虽然学习过相关课程,但是每次遇到它总是懵懵懂懂,似懂非懂.为了对这两个概念有深入的了解,这里做了相关的介绍.为了不老是纠缠于数理统计理论,或者 ...
- python做马尔科夫模型预测法_python 日常笔记 hmmlearn 隐性马尔科夫模型案例分析...
问题: 什么是马尔科夫模型?用来干什么? 大家可以参考这篇简书 python 实现 关于HMM有两个主要问题: 已知上述三个参数,和当前观测序列,求解隐藏状态的变化 所有参数未知,只有数据,如何获得三 ...
最新文章
- Django连接数据mysql
- Ubuntu 7.04 相关设置
- 设计模式(一) 策略模式
- sklearn中各算法类的fit,fit_transform和transform函数
- 中石油训练赛 - Faulhaber’s Triangle(打表)
- 巧用快捷键轻松设置Excel单元格格式
- 【算法】剑指 Offer 03. 数组中重复的数字
- 函数glDefinePopup(),动态定义多级的popup菜单
- 使用DFA算法对敏感词进行过滤
- Spring系列之静态代理、动态代理、cglib代理与Spring AOP的处理
- 测试员,面对自己30岁后的下坡路,我们该何去何从?
- 猿创征文|我命由我,不由天
- Pόlya定理详解及例题
- HTTPS网站提示“此网站无法提供安全连接”
- 数据结构基本代码汇总
- 子类与父类的同名成员调用和注意事项
- android源码大全 IOS游戏源代码打包下载 小游戏|视频教程 微信小程序源码带后台全套|公众号平台
- 刚开始学java ,java代码开头的几行都是什么意思?
- 发现了 ANTIARP这个软件的 一个严重的 BUG
- gee去云处理Landsat、Sentinel和Modis影像