Thanks to Ignacio for noting some problems in this regard.
I now realize, however, that I was wrong to say that gretl's ARMA
code is not set up to handle the multiplicative relationship between
the non-seasonal and seasonal components. Pardon the double
negative -- to put it positively, gretl's ARMA code _is_ in fact
already set up to handle the multiplicative relationship, but it had
some bugs, which I have now tried to fix.
Tomorrow (Feb 17) I will make both a new Windows snapshot and a new
gtk2 rpm snapshot. I would very much appreciate if people with more
expertise in this area than myself could do some testing.
For reference, I'm including a script that I've used for basic
testing here. It generates an artificial series that follows a
known ARMA (1,1)(1,1)s process then uses both the gretl native and
X-12-ARIMA ARMA routines to try to retrieve the parameters.
If I'm misunderstanding how this ought to work, that should be
apparent from the script!
# Seasonal ARMA test script
nulldata 1200
setobs 12 1920:01
scalar phi_1 = 0.5
scalar Phi_1 = 0.1
scalar theta_1 = 0.2
scalar Theta_1 = 0.2
genr eps = normal()
# Artificial error process
genr u = eps + theta_1*eps(-1) + Theta_1*eps(-12) \
+ theta_1*Theta_1*eps(-13)
series y = 0
# Artificial seasonal series
genr y = 500 + phi_1*y(-1) + Phi_1*y(-12) \
- phi_1*Phi_1*y(-13) + u
# Estimate using native ARMA code
arma 1 1 ; 1 1 ; y
# Compare X-12-ARIMA estimates -- but note that X-12-ARIMA
# can only handle 720 observations, so we truncate the data
smpl +500 ;
arma 1 1 ; 1 1 ; y --x-12-arima
Allin Cottrell