楼主: zhiyouwo
2458 2

[问答] 求助一个模拟TVAR数据的问题 [推广有奖]

  • 2关注
  • 2粉丝

已卖:272份资源

副教授

57%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
4.8305
学术水平
1 点
热心指数
3 点
信用等级
0 点
经验
5712 点
帖子
199
精华
0
在线时间
1593 小时
注册时间
2009-10-31
最后登录
2024-8-9

楼主
zhiyouwo 发表于 2015-4-5 20:26:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
TVARsim=function(nobs,  A=NULL, B=NULL, sigma1=NULL,sigma2=NULL,r,skip = 200)

{
nT = nobs + skip
k=nrow(sigma1)
# Generate noise
e1=mvtnorm::rmvnorm(nT, rep(0, k), sigma1)
e2=mvtnorm::rmvnorm(nT, rep(0, k), sigma2)
et1=t(e1)
et2=t(e2)
# Create space for x
  xt = matrix(0, nT, 2)
xt=t(xt)

for( i in 2: nT)
{
  if(xt[1,i-1]<r|all(xt[2,])

      { xt[,i]=A%*%xt[,i-1]+et1[,i-1]
       }
     else
      {xt[,i]=B%*%xt[,i-1]+et2[,i-1]}
xt=t(xt)
   xt = xt[(1 + skip):nT, ]
return(xt)

}
}

ph1=matrix(c(0.7,0.3,0,0.7),2)
ph2=matrix(c(-0.7,-0.3,0,-0.7),2)
sig1=matrix(c(1,0.2,0.2,1),2)
sig2=matrix(c(1,-0.3,-0.3,1),2)

data=TVARsim(300,A=ph1,B=ph2,sigma1=sig1,sigma2=sig2,r=0)
输出结果居然是
> data=TVARsim(300,A=ph1,B=ph2,sigma1=sig1,sigma2=sig2,r=-1)
> data
       [,1] [,2]
  [1,]    0    0
  [2,]    0    0
  [3,]    0    0
  [4,]    0    0
  [5,]    0    0
  [6,]    0    0
  [7,]    0    0
  [8,]    0    0
  [9,]    0    0
[10,]    0    0
[11,]    0    0
[12,]    0    0
[13,]    0    0
[14,]    0    0
。。。。。。。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:tvar VaR generate function Create

沙发
zhiyouwo 发表于 2015-4-5 20:27:11
希望能够得到大家的帮助,谢谢了

藤椅
美丽撒哈拉 发表于 2015-7-22 20:42:31
你懂TVAR模型吗 求助 啊

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 13:00