全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3752 1
2014-07-29
大家好,

我目前的课题是关于用R fit 一个英国美国汇率的模型。我已经完成了ARIMA_GARCH的模型。现在要做threshold模型来fit我的这个数据。我的数据是汇率而且只有一串数据所以应该是用time series来fit的。但是现在我的问题是 我不知道用哪个threshold model.我也不知道如何找到threshold value, number of regimes还有delayed parameter. 我没有threshold model 还有non-parametric time series的基础。所以对于我来说这个编程比较困难。
我看到s-plus有个程序nonlinearTest可以检测出哪个d delayed parameter是最好的. 在R里面有这样的程序吗?


我把我的数据放上来供大家参考。

谢谢大家的帮助!
二维码

扫码加我 拉你入群

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

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

全部回复
2014-12-16 13:40:53
flu = ts(scan("flu.dat"));
dflu = diff(flu);
a = dflu;
for (l in 1:6)
       a = cbind(a, lag(dflu, -l));
       a = cbind(a, lag(dflu, -1) > 0.05);
       a = data.frame(a);
names(a) = c("x", paste("x", 1:6, sep = ""), "delta");
summary(lm(x ~ delta + x1*delta + x2*delta + x3*delta + x4*delta +
                    x5*delta + x6*delta, data = a));
flu.l = lm(x ~ -1 + delta + x1*delta + x2*delta + x3*delta + x4*delta,
              data = a);
summary(flu.l);
flu.r = residuals(flu.l);
delta = a$delta[4 + 1:length(flu.r)];
lapply(split(flu.r, delta), sd);
acf(flu.r);

也可以这样做——

flu.lF = lm(x ~ x1 + x2 + x3 + x4, data = a, subset = (delta == 0));
summary(flu.lF);
flu.lT = lm(x ~ x1 + x2 + x3 + x4, data = a, subset = (delta == 1));
summary(flu.lT);

二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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