Page 1 of 1

Misleading calculations of Endogeneous variables in system

Posted: Sun Aug 28, 2016 12:32 pm
by worldboy
Using EViews 8.1

Working on a system with rational expectations (i.e. some endogeneous variables appear with a lead:

x = c1 + c2y

w = c4 + c5x(t+1)

I find the calculation in a model in default setting at least misleading (the error of the first equation does not appear automatically in the second one).

Also, the manual is for my taste not very clear on how EViews treats these variables.


Dear all,

The default settig of models is set such in cases with more than one equation (or a system) where endogeneous variables fom one equation enters as an explanatory variable in anoher one, the model solves theses equations but enters not the estimated values solving the other equation but uses the observed ("actual") valuse.

This has nasty consequences e.g. if one wants to calculate the etsimation errors (bacause in effect the error of the first equation does not enter into the second one [which gives thus only its own error]).

I would say that the instructions (e.g. "Specifying scenarios") is at leat misleading and not very clear.

If the true interdependence is to be shown only, if some settings are change (and this is not really convenient):
1) You have to run the model in its default setting (in order to get the estimates of the endogeneous variable)
2) You have to include the respective endogeneous variables into a field in the model menue "Scenarios" => "excludes for ... (treat endogeneous variabels as exogeous)". Then, if you ant to keep the estimated values from the first equation you have to set the "Solve" => "Solver" to "Preffered solution starting values" to "Previous period's solution". And run the model another time.

My question is: Am I right? Is there a simpler way of doing this?

Thanks a lot.
Best regards
Christian

Re: Misleading calculations of Endogeneous variables in system

Posted: Sun Aug 28, 2016 1:35 pm
by EViews Gareth
I don't really understand what you are saying. A model absolutely uses the solved for (i.e. estimated) values of endogenous variables.

Re: Misleading calculations of Endogeneous variables in system

Posted: Mon Aug 29, 2016 5:22 am
by worldboy
Dear Gareth,

Thank you fror your reply. I thought so too and was very surprised and thus it took me a while to figure out how the program works. Maybe I do not understand something.

My suspicion started when I looked at the MAPE which was usually smaller for the variable which depended also on the estimated endogeneous variable from the other equation than that for this variable. My logigc is that the error from the frist enters into the second equation and for this reason the error must be at least as large.

Second, in in-sample tests the estimated values from the second (dependent) variable followed relatively closely the pattern of the observed values rather than those of the estimated values of that endogeneous variable - no matter which estimated equation I used (different specifications give different patterns).

So, for me it looks like as if the default setting in EViews is that in case of such dependencies the model is solved by taking the actual (observed) values rather than the estimated ones.

I mean, I am fine if EViews works like this (albeight I would say I would expect the default settings being different). But I am a little confused and would like to know for sure how it works. Could it be that it is a special behaviour due to the lead in that variable?

Thanks again.

Best regards
Christian

Re: Misleading calculations of Endogeneous variables in system

Posted: Mon Aug 29, 2016 8:21 am
by worldboy
Postscript

Dear Gareth,

I experimented again because I think it is really an important issue and it should be clear to everyone how EViews works at this point:

EViews does not - in its default setting - show the true dependence of variables in a model, i.e. if one variabe depends on the estimate of another one Eviews gives the value of this dependent one as if the variable it depends one were actuals (i.e. observed rather than estimated).

I run the two equations deperately and compared the MAPE (or the RMSE) with those calculated by EViews if the two equations are run together in a model. In the default setting, the MAPE was the same. The dependency of one of the variables and its impact on the estimated values (measured in MAPE or RMSE) were only calculated if I put the variabel which enters the second equation in the models menue "Scenarios" into the "Excludes" (as described below).

Could you please confirm or reply if I am completely mistaken? I woud like to know how it really works.

Thank you very much
Best regards
Christian

Re: Misleading calculations of Endogeneous variables in system

Posted: Mon Aug 29, 2016 8:26 am
by EViews Gareth

Code: Select all

wfcreate m 1990 2000
series y=3
series x=4

model m
m.append y = 9
m.append x = 2+y(1)
m.solve

show x_0 y_0


If the model used actual values of Y, the solution of X would be 5. But it isn't.

Re: Misleading calculations of Endogeneous variables in system

Posted: Tue Aug 30, 2016 10:19 am
by worldboy
Dear Gareth,

Thanks a lot again. I now agree - not only by your little example but by a slightly more complex one I set up and by looking into old work files of mine which showed the same behaviour.

However, and I know how strange that may sound and that I may look quite silly - I am the more sure that my current work file does not do this the way it is supposed to (actually it does it the other way round, meaning if the edogeneous explaining variable is not excluded the model calulates the dependent equation on the actuals and not the estimates, and only if it is excluded after a first run of the model, the model then takes the estimated [and aliased] variable in a second run and calculates the estimates on the estimated values).

So, I quess my file is somehow corrupted, no other explanation.

Thanks for your support.
Christian

Re: Misleading calculations of Endogeneous variables in system

Posted: Wed Aug 31, 2016 9:45 am
by worldboy
Follow up:

(1) I can confirm that the model in my workfile was corrupted (unknown reason but I have been working with the file for a while and copied models on and on).

Setting up a new model and solving gave the expected results (as stated by Gareth).

(2) However, this did ONLY work for models which contain seperate equations. It did NOT work if the equations were contained in a system (e.g. 3SLS). In order to get the desired result a had to copy the "substitued coefficients" into the model in its source text mode.

I hope, someone from EViews will read this and have a look into it.

And my advise would be to be very critical of the calculated results from models if there are stacked dependencies between equations. I have started to run each equation seperately on its own to get its "unconditional" result and put it next to the "conditional" (i.e. depending) result from the model. If the model gives the correct dependent estimates than both are different if not they "fall together" - and a workaround is needed.

Re: Misleading calculations of Endogeneous variables in system

Posted: Wed Aug 31, 2016 10:04 am
by EViews Gareth
Nope.

Code: Select all

wfcreate m 1990 2000
series y=nrnd
series x=2+y(1)
series z1=nrnd
series z2=nrnd
series z3=nrnd
system s
s.append y=c(1)
s.append x=c(2)+c(3)*y(1)
s.append @inst z1 z2 z3
s.3sls

model m
m.append :s
m.solve

show x_0 y_0 x y
show s


In this example the solved value of Y should be C(1), which is a constant. The actual value of Y is a random number. The solved for value of X is C(2)+C(3)*Y(1). If the model value of X depends on actual Y, the solved for value of X will be random. If X depends on solved for Y, the solved for value of X will be a constant.

Re: Misleading calculations of Endogeneous variables in system

Posted: Thu Sep 01, 2016 2:05 am
by worldboy
Dear Gareth,

Thanks again. I have looked at it again. With your little exercise EViews worked well and as expected in my (old) workfile. So, I tied my own work in a newly created model in that workfile (rather than copying an existing one) and the error did not occur anymore.

Everything is fine now. I tried hard to find a setting in my old models different to the newly created ones but could not find any. Over time, the models must have become flawed.

Best regards
Chrisian