Take for a very simple supply and demand model:
(1) D = f(P, x)
(2) S = f(P, y)
(3) S = D
where P is the endogenous price, x and y are exogenous regressors, and the identity holds that supply equals demand. We should thus have three endogenous variables (S,D,P) and three equations. Seems simple, yet I can't figure out how to implement it in a EViews model object.
Here's the program I wrote to try and accomplish this:
Code: Select all
WFCREATE SD.wf1 M 2002:01 2012:12
MODEL _supplydemand
_supplydemand.append D = f*(P + x)
_supplydemand.append S = f*(P + y)
_supplydemand.append S = D
The first problem is that this simply doesn't work--there are plenty of errors when I open the model object. It fails in a couple of ways, as far as I can tell. First, S is defined twice, and for some reason it can't tell that eq (3) is an identity, so it complains. It seems to think eq (1) is "too complex" or has a syntax error, but I can't see how either one is true.
The second problem is I have no way of telling EViews that P is endogenous. From the manual, I see that variables are made endogenous by beginning an equation with that variable. But in this case, I don't see a way to begin any equation with P...
Maybe I'm just being slow, but this seems overly confusing. I'm coming from GRETL, where I would just create a system, call out equations (1)-(3), and then simply list which variables are endogenous. It doesn't seem quite so easy in EViews...
Any help is appreciated.