El Tuesday 06 May 2008 15:24:16 Riccardo (Jack) Lucchetti escribió:
Ignacio,
after some pondering, I believe you're right. What I would consider a
proper fix for this issue, however, takes us right in the middle of the
parallel discussion about backward-incompatible changes. Let me explain.
To recap briefly what's in the manual already, what we currently have
under the "arima" heading is in fact a pair of quite different things. On
one hand, we have that ML estimation (carried out via the Kalman filter)
estimates a model like
(1) A(L) (y_t - x_t'\beta) = C(L) e_t
If we believe that the differencing operator is part and parcel of the
A(L) polynomial, we ought to difference x_t as well, not just y_t
(contrary to what we do now). This would be, in itself, a
backward-incompatible change already.
I think by default we should not do any "backward incomptible" changes unless
1) We are correcting an error, or
2) We are making a great improvement of some command or feature
With respect to the gretl native command "arima" I think we are not in any of
these cases, so I propose we should re-think how to solve this in another
way.
Now consider the class of models that we handle via conditional ML: here
we have
(2) A(L) y_t = x_t'\beta + C(L) e_t.
As the manual says, whenever x_t includes anything more than the constant,
(1) and (2) are fundamentally different models, since the term x_t'\beta
can be considered as the conditional mean of y_t with respect to two
different information set. In the context of (2), the A(L) polynomial does
_not_ apply to x_t, so there's no reason to difference x_t too.
The question here is the interpretation about where the unit root is. It can
go as a multiplicative factor in A(L), as it seems yo are thinking,
A(L)=A(L)'*(1-L) having A(L)' the roots outside the unit circle, or it can go
as a denominator of C(L)=C'(L)/(1-L) havin C'(L) its roots outside the unit
circle.
In equation (1) being (1-L) in A(L) or in C(L) has the same effect, but not in
equation (2).
In the context of transfer function models is very common to write the
equation as
(3) y_t = v(L)*x_t + Nt
where the noise Nt is in general Nt=C(L)/A(L)*(1-L)^d. I am working with this
type of models so I thought was natural that the xt variable I was puting in
the equation was no differenced.
The important thing here is that (1) is the formulation generally adopted
in the time-series literature, while (2) resembles more the models
econometricians use, (ARDL models, GARCH models, and so on). If we
implement the change proposed by Ignacio (which, I repeat, makes perfect
sense for (1)), the two models would diverge in their behaviour
No, please.
and
interpretation even more, to the point that I wouldn't find it
inconceivable to have two separate commands and two different GUI menu
entries for (1) and (2) (although, it must be said, it'd be relatively
easy to estimate (1) via conditional ML if we wanted to).
I think we shoud leave the things as simple as possible. Your interpretation
about the model is reasonable, so we only need that the user can know this
interpretation. If the gretl native command is left how it is now, we only
need that the user know what gretl is doing with the xt variable. So the
problem is solved if we only add a paragraph in the manual explaining how the
differences are applied to the model when there are independent variables.
But when you use the option --x12-arima the model that gretl estimates is
different that the one being estimated without this option. And I think this
is an inconsistency that should be corrected, in spite of it implies
a "backward incompatible" change.
--
Ignacio Diaz-Emparanza
DEPARTAMENTO DE ECONOMÍA APLICADA III (ECONOMETRÍA Y ESTADÍSTICA)
UPV/EHU
Avda. Lehendakari Aguirre, 83 | 48015 BILBAO
T.: +34 946013732 | F.: +34 946013754
www.et.bs.ehu.es