全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1142 0
2015-04-22
悬赏 10 个论坛币 未解决
求问,我想模拟出一个TGARCH序列,自己写的代码是这样的
/*设定参数*/
%let r0 = 0.000633;
%let alpha0 = 0.000561 ;
%let alpha1 = 0.23684 ;
%let beta1 = 0.818566;
%let gama1=-0.03264;
%let Phi0 =  0.000357 ;
%let Phi1 = 0.008122 ;
%let d0=0;

data TGARCH11 (keep = r t);
r_lag = &r0;
e_lag = 0.01*rannor(53628);
sigma_lag = 0.01;
d_lag= &d0;
do t = -100 to 6950;
sigma = sqrt(&alpha0 + &alpha1*e_lag**2 + &beta1*sigma_lag + &gama1*d_lag*e_lag**2);
e = sigma*rannor(53628);
r = &phi0 + &phi1*r_lag + e;
d = d_lag;
if t > 0 then output;
sigma_lag = sigma;
r_lag = r;
e_lag = e;
if e>=0 then d_lag=0;
else if d_lag=1;
end;
run;

里面d是一个虚拟变量,当e_lag大于0时取0,小于零时取1,这样写哪里错了?模拟不出来,求解答!!!谢谢~
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群