楼主: Newton2
12480 14

[问答] Arima函数有严重的bug??????? [推广有奖]

  • 1关注
  • 1粉丝

已卖:118份资源

硕士生

87%

还不是VIP/贵宾

-

威望
0
论坛币
18 个
通用积分
0
学术水平
0 点
热心指数
-1 点
信用等级
0 点
经验
1974 点
帖子
89
精华
0
在线时间
314 小时
注册时间
2009-9-4
最后登录
2018-10-28

楼主
Newton2 发表于 2011-4-9 13:03:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
最近几天用R做时间数据的习题,发现arima函数在高阶的时候会发生很严重的错误。问题如下:我用的是沪深300的2000个高频数据做的ARMA模型:
St.data <- read.csv("HS300.csv",header=TRUE);
attach(St.data);
p <- close;
p <- p[1:2000];
r <- diff(log(p));
r.arima <- arima(r, order = c(2,0,2))
r.arima


Series: r
ARIMA(2,0,2) with non-zero mean

Call: arima(x = r, order = c(2, 0, 2))

Coefficients:
         ar1      ar2      ma1     ma2  intercept
      1.3042  -0.5955  -0.6834  0.2740          0
s.e.  0.0542   0.0393   0.0583  0.0332          0

sigma^2 estimated as 8.012e-08:  log likelihood = 13494.74
AIC = -26979.48   AICc = -26979.44   BIC = -26945.88

这时,我和Stata的结果对比是差不多的。



但是,当我把ARMA的阶数提高到ARAMA(3,3)的时候,R 就发生了很奇怪的结果如下:

> r.arima <- arima(r,order=c(3,0,3))
> r.arima
Series: r
ARIMA(3,0,3) with non-zero mean

Call: arima(x = r, order = c(3, 0, 3))

Coefficients:
         ar1     ar2      ar3      ma1      ma2     ma3  intercept
      0.7969  0.0556  -0.3007  -0.1746  -0.0692  0.1555          0
s.e.     NaN     NaN      NaN      NaN      NaN     NaN          0

sigma^2 estimated as 8.011e-08:  log likelihood = 13494.91
AIC = -26975.83   AICc = -26975.76   BIC = -26931.03
Warning message:
In sqrt(diag(x$var.coef)) : NaNs produced


但是Stata和Eviews都能运算出正确的结果。 不知是什么原因导致arima发生这样的错误?????
二维码

扫码加我 拉你入群

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

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

关键词:ARIMA bug ima Rim arma模型 ARIMA

沙发
Newton2 发表于 2011-4-9 13:36:03
https://stat.ethz.ch/pipermail/r-help/2011-February/269001.html  网上也有这种问题,还没有人解答!!

藤椅
iiistony 发表于 2011-4-9 23:18:32
我也遇到用ARIMA函数做SARIMA时,把阶数提高报错的情况,提示我不收敛,但把阶数降低就没问题了!不应该会出现这种情况啊!
Essentially, all models are wrong, but some are useful.------George E.P. Box

板凳
Newton2 发表于 2011-4-10 08:11:51
昨天搜了一天的Google都没有找到答案,等待高人解答呀~~~~~~

报纸
windlove 发表于 2011-4-10 08:38:29
从来没有用到那么高阶数。但如果你看它的warning messages的话,很可能是var-cov 不是positive definite  所导致的。我试了一下arima help file里面的SARIMA的例子,如果是 arma(7,1,7)的话就没这个问题,如果是arma(7,0,7)的话就有这个问题。当阶数比较高的话,你optimization很可能会导致非 positive definite matrix, 就算是positive semi-definite 也会出错。
已有 1 人评分论坛币 收起 理由
yahoocom + 20 鼓励积极发帖讨论

总评分: 论坛币 + 20   查看全部评分

地板
Newton2 发表于 2011-4-10 10:36:14
5# windlove
但是我试过STATA和Eviews,用的应该是ML估计。结果没问题啊~~从STATA迭代的结果看也是没问题的呀。唯有R出问题了,

7
Newton2 发表于 2011-4-10 10:38:22
5# windlove
况且在处理高频金融数据的时候,常常需要高阶的ARMA模型呀~~

8
iiistony 发表于 2011-4-10 13:35:03
我也刚试了下,用spss不存在问题,而R就会出现不收敛问题!
spss默认是迭代10步截止,也就是说,虽然出结果,但不表示收敛了!

所以很难判断spss的结果是否就是对的!
Essentially, all models are wrong, but some are useful.------George E.P. Box

9
iiistony 发表于 2011-4-10 13:40:14
还是自己用c写代码放心啊,就是太花时间了
Essentially, all models are wrong, but some are useful.------George E.P. Box

10
长安客0832 发表于 2012-8-6 08:54:29
我现在也遇见这个问题~求高手解答

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 01:29