Dear all,

Thanks for quick testing and suggestions.

>>>with the 5th argument to armax With "0" it excludes constant even if it is in exogenous list.
This was originally to mimic command "arima" with no constant,",--nc, option.

>>>But if exogenous list doesn't include constant,  "1" do nothing and model estimated without constant
Now this problem should be solved. With the option "include a constant," no matter exogenous list has a constant or not, a constant is always included.

Yi-Nung Yang
IB department, CYCU, Taiwan.

2014-09-04 5:08 GMT+08:00 :
Script works OK. Perfectly what I wanted to see. It seems a minor problem still here.

With the same dataset
1)
? armax(2, 2, d_u1, arg4, 1, 1, 0, 1, 0)
===============================================
Information Criteria of ARMAX(p,q) for d_u1
-----------------------------------------------
p, q          AIC           BIC           HQC
-----------------------------------------------
0, 0     -37.3129      -23.3285      -31.7241
0, 1     -42.3039*     -23.6580*     -34.8521*
0, 2     -40.3043      -19.3277      -31.9210
1, 0     -41.6550      -23.0091      -34.2032
1, 1     -40.3044      -19.3278      -31.9212
1, 2     -38.4888      -15.1814      -29.1740
2, 0     -39.9916      -19.0150      -31.6084
2, 1     -41.8505      -18.5432      -32.5358
2, 2     -40.0419      -14.4038      -29.7956
===============================================
* indicates best models.
'9999.9999' suggests failures to estimate the models.
2)
? armax(2, 2, d_u1, arg4, 0, 1, 0, 1, 0)
Failed to compute numerical Hessian
tarmax: Got error 35 (Not a Number in calculation) while p=2,q=1
===============================================
Information Criteria of ARMAX(p,q) for d_u1
-----------------------------------------------
p, q          AIC           BIC           HQC
-----------------------------------------------
0, 0      20.9510       32.6047       25.6084
0, 1      -7.6589        8.6562       -1.1386
0, 2     -11.3398        7.3061       -3.8880
1, 0     -21.4701       -5.1549      -14.9498
1, 1     -29.2140      -10.5681      -21.7622
1, 2     -33.8166      -12.8400*     -25.4334*
2, 0     -20.7024       -2.0566      -13.2506
2, 1   99999.9999    99999.9999    99999.9999
2, 2     -33.8851*     -10.5778      -24.5704
===============================================
* indicates best models.
'9999.9999' suggests failures to estimate the models.
3) ? armax(2, 2, d_u1, arg4a, 1, 1, 0, 1, 0) the same as 2)
4) ? armax(2, 2, d_u1, arg4a, 0, 1, 0, 1, 0) the same as 2)
List arg4a is the same as arg4 only constant dropped. So it seems there is problem
with the 5th argument to armax With "0" it excludes constant even if it is in exogenous list.
But if exogenous list doesn't include constant,  "1" do nothing and model estimated without constant
I think the simplest way to correct is as follows
check if there is a constant in the exogenous variables list, drop it
with "1" add "0" to arma (e.g. arma 2 2 ; d_u1 0 arg4a)
or add constant to the list and don't use "0" in arma
The exact way of interaction should included in help

Another way: this argument can be dropped and help should tell
that constant can be included in ex.var. list

02 вересня 2014, 07:19:47, Автор yinung at Gmail <yinung.cycu@gmail.com>:

Dear all,

Thanks for finding "armax" package useful. I eventually got time to solve this beta release. I've just released a patch in which "occasional armax aborting" should be  fixed. Please give a trial.

Yi-Nung Yang (楊奕農)
Associate Professor
Department of IB, CYCU, Taiwan.

2014-05-21 19:07 GMT+08:00 :
For armax "diggers"
Data sets for testing and a try to explain occasional armax aborting

Data file attached
# Script to select lag length in regression of d_u on lagged g
# u-unimployment (%) g-gdp rate (%)

## begin script
# "Okun law" artifical data similar to POE-4, ch.9
open mod2data.gdt
include armax.gfn
diff u1
# max lag length =4
lags 4; g1
# subsample for equal data length whlile choosing
smpl 1995:1 2013:4

list arg4 = 0 g1 g1_1 g1_2 g1_3 g1_4
list arg4a = g1 g1_1 g1_2 g1_3 g1_4

# uncomment for lag length selection
# list arg3 = g1 g1_1 g1_2 g1_3
# list arg2 = g1 g1_1 g1_2
# list arg1 = g1 g1_1
# list arg0 = 0 g1

# works ok on my system, ARMA(0,1) by all ic
armax(2, 2, d_u1, arg4, 1, 1, 1, 1, 0)

# gives "Failed to compute numerical Hessian"
armax(2, 2, d_u1, arg4a, 1, 1, 1, 1, 0)

# armax(2, 2, d_u1, arg3, 1, 1, 0, 1, 0)
# armax(2, 2, d_u1, arg2, 1, 1, 0, 1, 0)
# armax(2, 2, d_u1, arg1, 1, 1, 0, 1, 0)
# armax(2, 2, d_u1, arg0, 1, 1, 0, 1, 0)

## end script

GUI's peculiar features:
With arg4 and include constant chequed results are
the same as for script armax(2, 2, d_u1, arg4, 1, 1, 1, 1, 0)
With arg4 and incl. const unchequed
? armax(2, 2, d_u1, arg4, 0, 1, 0, 1, 0)
Failed to compute numerical Hessian
With arg4a and include constant chequed
? armax(2, 2, d_u1, arg4a, 1, 1, 1, 1, 0)
Failed to compute numerical Hessian
With arg4a and include constant unchequed
? armax(2, 2, d_u1, arg4a, 1, 1, 0, 1, 0)
Failed to compute numerical Hessian

Further diagnostics:
armax(1, 2, d_u1, arg4a, 1, 1, 1, 1, 0) works ok
arma 2 1 ; d_u1 arg4a Failed to compute numerical Hessian
arma 2 1 ; d_u1 arg4a --opg works ok
From Command Reference(p.7) "Note that failure of the numerical
Hessian computation is generally an indicator of a misspecified model".
From output:
AR
Root  1           1.0001
So, nothing enigmatic.
Armax_auto would be more convenient if it scipped such models
!

_______________________________________________
Gretl-users mailing list
Gretl-users@lists.wfu.edu
http://lists.wfu.edu/mailman/listinfo/gretl-users

```_______________________________________________
Gretl-users mailing list
Gretl-users@lists.wfu.edu
http://lists.wfu.edu/mailman/listinfo/gretl-users
```
!

_______________________________________________
Gretl-users mailing list
Gretl-users@lists.wfu.edu
http://lists.wfu.edu/mailman/listinfo/gretl-users