Sorry. Let me be clearer. I was commenting (unnecessarily tersely) on the last post, rather than the entire thread.
There is new functionality in EViews 8 that lets you estimate parameters that optimize an arbitrary objective function. You simply provide a subroutine that computes an objective for your weighted data, and tell EVIews to find the best parameters. In principle, this subroutine could use an equation or system object or matrix or any other EViews object as part of the subroutine which computes the objective function. This functionality facilitates lots of estimation that was not practical using the earlier LOGL framework. But it doesn't modify what systems and equations can do, only allows you to use them as building blocks. My earlier comment was simply to note that if you wanted to go this route, it is probably easiest just to directly compute the SSR as a function of parameters, rather than using a system and trying to do weighting there.
But rereading the thread, there is a different set of issues going on. So let me try to walk through this problem in a better fashion than I've done previously (

)...
(Let me start with non-system estimation using the in-built panel routines. We'll come back to systems -- which may be a red herring -- in a second...)
My earliest comment was
The only way is to pre-transform your data. But you have to think a bit about what happens to the fixed effects estimates when you do so.
Let me expand on this. You want cross-section weighted data. The easiest way to do that is simply to create a series with cross-section weights and divide (or multiply-depending on how you've specified your weights) *all* of your dependent and independent variables by the weight series. The problem is that I've said "all". This includes all cross-section and time dummies, which for the built-in fixed effects routines, you have no access to.
For the cross-section dummies, this creates no problems since the weights are constant within a cross-section (I'm assuming that this is true -- if your weights vary with time within a cross-section, then what I'm going to say in a minute for period dummies also holds here). If all you had were cross-section fixed effects and cross-section weighted data, then the internal routines would work fine (though the fixed effects estimates would be scaled since you've scaled the original data).
However, since you are doing two-way fixed effects, the weighted time dummies no longer have nice computational properties and you can no longer use the built-in fixed effects routines. You could, however, add the "weighted" period dummies to the built-in cross-section fixed effects estimator "by-hand" using @expand and scaling using the weights. You have to be very careful about the dummy variable trap here, but it should work.
To see the idea, note that in the unweighted case, you can estimate the two-way fixed effects using
Code: Select all
equation eq0.ls(cx=f, per=f) y c x
equation eq1.ls(cx=f) y c x @expand(1, @date, @dropfirst)
equation eq2.ls y c x @expand(1, @crossid, @dropfirst) @expand(1, @date, @dropfirst)
The second form does cross-section fixed effects and explicitly adds period dummies. The last form just adds dummies, dummies, everywhere.
In weighted form, you need to do the estimation explicitly
Code: Select all
equation eq2a.ls y/w 1/w x/w @expand(1, @crossid, @dropfirst)/w @expand(1, @date, @dropfirst)/w
Note that this specification can have a lot of parameters.
For systems, you'll have to scale each variable in your system. If your system is really a pool in system clothing, then there are simpler ways of doing what I did with the panel estimation above. If you give me a better idea of your the nature of your system, then we can probably figure out the best approach.