Generating strange arima output may be pc-dependent
You may try
open bad_data.gdt
smpl 1 194
series sty=diff_series/sd(diff_series)
list zli = y_one y_two
matrix bad = mread("bad_matrix32") # or matrix bad =
mread("bad_matrix36")
# if paste bad_matrix32 and bad_matrix64 $workdir there's no need to input path
y = sty+bad[1]
arima 3 0 0; 1 0 0; y 0 zli --verbose
If both models are ok :
i.e. something like this (64)
Model 3: ARMAX, using observations 1950:1-1998:2 (T = 194)
Estimated using AS 197 (exact ML)
Dependent variable: y
Standard errors based on Hessian
coefficient std. error z p-value
---------------------------------------------------------
const 6.48832 0.0467055 138.9 0.0000 ***
phi_1 0.567313 0.159434 3.558 0.0004 ***
phi_2 −0.158255 0.107503 −1.472 0.1410
phi_3 −0.120526 0.130267 −0.9252 0.3549
Phi_1 −0.0597471 0.121899 −0.4901 0.6240
y_one 0.203394 0.233933 0.8695 0.3846
y_two −2.07615 0.389196 −5.334 9.58e-08 ***
or this (32)
Model 4: ARMAX, using observations 1950:1-1998:2 (T = 194)
Estimated using AS 197 (exact ML)
Dependent variable: y
Standard errors based on Hessian
coefficient std. error z p-value
---------------------------------------------------------
const 6.38832 0.0467055 136.8 0.0000 ***
phi_1 0.567313 0.159434 3.558 0.0004 ***
phi_2 −0.158255 0.107503 −1.472 0.1410
phi_3 −0.120526 0.130267 −0.9252 0.3549
Phi_1 −0.0597471 0.121899 −0.4901 0.6240
y_one 0.203394 0.233933 0.8695 0.3846
y_two −2.07615 0.389196 −5.334 9.58e-08 ***
you can try this
open bad_data.gdt
smpl 1 194
series sty=diff_series/sd(diff_series)
list zli = y_one y_two
series y = 0
matrix matr=seq(1,1000)/10^2
n = nelem(matr)
ret = zeros(n,1)
loop i = 1..n -q
y = sty+matr[i]
catch arima 3 0 0; 1 0 0; y 0 zli -q
err = $error
ret[i] = err? -$huge: $lnl
endloop
eval imaxc(ret)
mad = selifr(seq(1,1000)',ret.<-200)/100
eval mad
# note : mean(sty)~0
catch freq 1 --matrix=mad --plot=display
# than run, for example
y = sty+mad[1]
arima 3 0 0; 1 0 0; y 0 zli --verbose
y = sty+mad[2]
arima 3 0 0; 1 0 0; y 0 zli --verbose
y = sty+mad[3]
arima 3 0 0; 1 0 0; y 0 zli --verbose
#############
? arima 3 0 0; 1 0 0; y 0 zli --verbose
NLS: failed to converge after 1605 iterations
Error executing script: halting
arima 3 0 0; 1 0 0; y 0 zli --verbose
###################
expected
Oleh