On Mon, 9 Feb 2009, Riccardo (Jack) Lucchetti wrote:
After some more reflection: we ought to distinguish two cases. If
the
model does not include lags of the dependent variable or of its level,
we're ok. If it does, things are more complicated: assume the model can be
written as
A(L) y_t = x_t \beta + \epsilon_t
(note that this includes the "difference" case as A(L) could well be 1-L).
In general, we need to reconstruct the A(L) polynomial, which can be far
from trivial, since variables can be renamed etc; but if this can be done,
then the variance of the k-step ahead predicition error can be
reconstructed quite easily via inversion of the A(L) polynomial (details
omitted here for brevity).
This would be quite nice to have because it would enable us to do all
sorts of fancy tricks, like for instance automatic conversion of an ADL
model to ECM form and vice versa, computation of dynamic multipliers and
so on. However, it may be tricky to implement "right". We do have, at
present, a mechanism for keeping track of a variable being a
lag/difference of another one, but it may be a little fragile for this
purpose. Allin?
In fact the tracking of lags/differences is by now fairly robust
(with regard to non-standard naming of the transformed variables,
for instance). Provided, that is, that the transformations are
done within gretl. (For data read from a third-party source, with
transformations already present, we could perhaps add a "dataset
analyse" command to figure out any such relationships among the
variables -- if we thought that was worthwhile.)
However, right now we have no mechanism to track the status of a
term such as (y_{t-1} - x_{t-1}), which would be needed to do a
proper dynamic forecast for a single-equation EC model.
Allin.