Рассчитать стандартные ошибки Ньюи-Уэста без объекта lm в R

13

Я задал этот вопрос вчера на StackOverflow и получил ответ, но мы согласились, что он кажется немного хакерским и, возможно, есть лучший способ взглянуть на него.

Вопрос: я хотел бы рассчитать стандартные ошибки Ньюи-Уэста (HAC) для вектора (в данном случае - вектора биржевых доходностей). Функция NeweyWest()в sandwichпакете делает это, но принимает lmобъект в качестве входных данных. Решение, предложенное Joris Meys, состоит в том, чтобы спроецировать вектор на 1, что превращает мой вектор в остатки для ввода NeweyWest(). То есть:

as.numeric(NeweyWest(lm(rnorm(100) ~ 1)))

для дисперсии среднего.

Должен ли я делать это так? Или есть способ более прямо делать то, что я хочу? Благодарность!

Ричард Херрон
источник
1
Вопрос не понятен. Что вы подразумеваете под «стандартной ошибкой для вектора»? Как правило, мы хотим стандартную ошибку оценки параметра. Какой параметр вы оцениваете? Код, который вы предоставили, дает оценку Ньюи Уэста в квадрате стандартной ошибки среднего. Это то, что вы хотите?
Сайрус С
@Cyrus - под «вектором» я имею в виду не lmобъект. У меня часто есть вектор (скажем, серия возвратов акций), который я не хочу вовлекать в какие-либо регрессии (потому что меня не волнует его прогноз, кроме 1), но для которого я все еще хочу HAC стандартная ошибка. В этом случае оценка параметра является доходностью запаса. Ответ выше делает это, но требует вычисления lmобъекта, который мне действительно не нужен. Поэтому мне интересно, есть ли в R подпрограмма, которая делает это без создания lmобъекта.
Ричард Херрон
Извините, до сих пор не ясно: «В этом случае оценка параметра - это доходность акций». Под этим вы подразумеваете «среднее значение доходности акций в серии»? Если да, то то, что у вас есть, прекрасно.
Сайрус С
@Cyrus - я знаю, что то, что у меня есть, работает, но я надеялся, что есть способ вычислить SE, не проходя через lmобъект для случая одного вектора. Я думаю, нет. Спасибо за помощь в прояснении моего вопроса!
Ричард Херрон

Ответы:

15

Предположим, у нас есть регрессия

Yзнак равноИксβ+U

Тогда МНК оценки β является β - β = ( Х ' х ) - 1 х ' у и предполагая , что β является несмещенной оценкой мы имеем V г ( & beta ; ) = E [ ( Х ' х ) - 1 Х ' u u X ( X X ) - 1 ]β^

β^-βзнак равно(Икс'Икс)-1Икс'U
β^
Вaр(β^)знак равноЕ[(Икс'Икс)-1Икс'UU'Икс(Икс'Икс)-1]

Обычный МНК предположение , что и Е ( U U ' | Х ) = σ 2 I п , который дает нам V а г ( & beta ; ) = σ 2 Е ( Х ' X ) - 1 В этом ковариационная матрица обычно сообщается в статистических пакетах.Е(U|Икс)знак равно0Е(UU'|Икс)знак равноσ2яN

Вaр(β^)знак равноσ2Е(Икс'Икс)-1

Если гетероскедастичны и (или) автокоррелированы, то E ( u u | X ) σ 2 I n и обычный вывод дает неверные результаты. Для получения правильных результатов вычисляются стандартные ошибки HAC. Все методы для ошибок HAC вычисляют d i a g ( E ( X X ) - 1 X u u X ( X X ) - 1 ) .UяЕ(UU'|Икс)σ2яN

dяaграмм(Е(Икс'Икс)-1Икс'UU'Икс(Икс'Икс)-1),
Они расходятся в своих предположениях о том, как выглядит .Е(UU'|Икс)

Поэтому естественно, что функция NeweyWestзапрашивает линейную модель. Метод Ньюи-Уэста вычисляет правильные стандартные ошибки оценки линейной модели. Таким образом, ваше решение совершенно правильно, если вы предполагаете, что доходность ваших акций соответствует модели и вы хотите оценить V a r ( μ ), защищая от нарушений в u t .

рTзнак равноμ+UT
Вaр(μ)UT

Вaр(рT)

рTзнак равноσTεT
εTσTВaр(рT)знак равноВaр(σT) и у вас есть «правильная» оценка вашей дисперсии, защищая от обычных идиосинкразий доходности акций, таких как кластеризация волатильности, асимметрия и т. д.
mpiktas
источник
Благодарность! Для меня не может быть более эффективного способа кодирования, чем формирование lmобъекта.
Ричард Херрон
Я думаю, что lmобъект - это путь! Спасибо за большое резюме ... иногда в приложении я слишком далеко от теории.
Ричард Херрон