Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

Re: st: Robust instrumental variable regression

 From Stas Kolenikov <[email protected]> To [email protected] Subject Re: st: Robust instrumental variable regression Date Fri, 14 Jan 2011 12:52:51 -0600

```On Fri, Jan 14, 2011 at 6:09 AM, Ramiro H. Gálvez
<[email protected]> wrote:
> I am using stata 11 and I'm having problems with outliers in a 2SLS
> instrumental variable regression. Is there any implementation in stata
> equivalent to rreg for instrumental variable regression (like rivregress)?
> Can anyone tell me of some bibliography on the subject? Finally, it's
> correct to make an "riveg" (robust ivreg), by making the first and second
> estimation in a 2SLS regression by myself using rreg?

Conceptually, what you would need for robust instrumental variables
regression is a robust version of

E[ error times instrument ] = 0

That this expression can be obtained, via a nice geometry of the least
squares, with a two stage procedure is an unhappy coincident that
provokes incorrect analogies -- I've no clue what the two-stage
procedure with -rreg- at each stage would really mean, and what the
parameter estimates may converge to in large samples.

There's probably little you can do about the instrument in the above
expectation, but there are probably different ways to approach the
error term there.

1. You can use median[ error times instrument ] = 0. To code this, you
would need to work with some sort of a simplex algorithm, as is done
in -qreg-. An outlying value of (error times instrument) may be due to
a large error with a typical value of the instrument; an influential
point on the instrument scale with small error; or moderately high
values of both. Whether that gives you the control over the outliers
is up to you.

2. You can use E[ g(error) times instrument] = 0 where g() is a
bounded influence function that you have learned about in your robust
statistics course. (If you have not had any, it will all be gibberish
to you, but you won't be able to even put a finger to the concept of
robustness unless you know what the breakdown point and the influence
function are.) You can probably code this with the g() of your choice
using -gmm-, either in the interactive version with -instruments()-,
or in the evaluator form.

Whether there are any references behind my suggestions, I have no clue
-- I am just thinking aloud here. You can probably represent either of
them within the framework of estimating equations to demonstrate
asymptotic normality and applicability of the usual -_robust- standard
errors.

--
Stas Kolenikov, also found at http://stas.kolenikov.name
Small print: I use this email account for mailing lists only.

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/
```