Am 14.09.2020 um 10:37 schrieb Riccardo (Jack) Lucchetti:
On Mon, 14 Sep 2020, Adam Elderfield wrote:
> "ln (Y/Y(-1)) = coef(1)*(ln(Y(-1))-coef(2)*ln(X(-1)))+coef(3)*ln
> (Y(-1)/ Y(-2)) + coef(4)*ln(X/X(-1))"
Notice this is log-linear...
That's what the main difficulty is. At present, we have very
good
technology for estimating _linear_ simultaneous systems. If we keep
within the realm of linearity, simulating from a simultaneous system
is trivial if the system is static (just compute the reduced form and
you're done) and only slightly more intricate if you have lags (you
need to cast the reduced form into a finite-order VAR and use
varsimul()).
The real problem is that at present we don't have a way for
representing, let alone estimating, systems with nonlinearities, eg
something like this:
y_t = a0 + a1 * x_t + u_t
log(x)_t = b0 + b1 * log(y)_t + e_t
First, Jack, sorry, but as a general statement I actually think this is
wrong. Gretl can estimate these structural equations already, with TSLS
equation-per-equation. Of course that's not the efficient estimator
here, and I guess that's what you had in mind. But still it can be done,
since both equations are linear by themselves.
Second, a quote from the bimets vignette: "Thebimets ESTIMATE() function
estimates equations that are *linear* in the coefficients". This is of
course not the same as linear in the variables, but still it shows that
bimets's scope is somewhat limited, too. Actually, the vignette does not
even contain the word "non[-]linear". Another quote: "RESTRICT>is a
keyword that can be used to specify *linear* coefficient restrictions".
I'd even say you can go a long way with linear behavioral systems in the
sense that some variables only appear in logs (including log-differences
as growth rates) and others only in raw levels (including absolute
differences, e.g. for interest rates). This would be less general than
your example above where x and y appear both in levels as well as in
logs. Then you could estimate it in gretl as a system directly -- OK you
can't do FIML because the non-linear identities linking the logs and the
levels are not allowed. But that's not too bad IMHO.
Cointegration apparently isn't mentioned in the bimets doc, but if you
want to deal with it explicitly I think it's pragmatically OK to
pre-estimate them somehow (or pre-specify without estimating, since many
equilibrium relationships from theory do not really involve any
parameters to be estimated). Then you just plug the EC terms into your
otherwise stationary partly differenced system, like PcGive/PcFiml did
for decades.
...
In fact, we have an expert here among the mailing list members, that
is Francesca Di Iorio. Francesca, would you like to comment?
Yes that would be great.
cheers
sven