2013-07-07 3 views
4

Мне нужно оценить соотношение между ценами в Нью-Йорке (N) и Лондоне (L), используя модель коррекции векторных ошибок, адаптированную из Joel Hasbrouck. После долгих исследований в Интернете, я все еще не добился больших успехов, поэтому я подумал, что попрошу вас экспертов, чтобы узнать, смогу ли я получить какое-то направление в этой модели.Модель ошибки коррекции ошибок в r

Мой набор данных - это датафрейм с датой, временем, символом, ценой.

Возврат (r_t) определяется как разность логов между ценой за каждый 15-минутный интервал (p (t) - p (t-1)) как для Нью-Йорка, так и для Лондона (уравнения 1 и 2).

Модель использует r_t в Нью-Йорке для моделирования на 2 лагах возврата в Нью-Йорке и Лондоне (уравнение 3).

Затем использует в r-t в Лондоне модель на 2 лагах возврата в Нью-Йорке и Лондоне (уравнение 4).

N и L представляют Нью-Йорк и Лондон, соответственно, где-либо в модели, а t представляет время.

r_t^N=∆ log(P_t^N) 
r_t^L=∆ log(P_t^L) 
r_t^N=α(log(P_(t-1)^N)-log(P_(t-1)^L))+∑_(i=1)to 2(γ_i^(N,N) r_(t-i)^N) + ∑_(i=1)to 2(γ_i^(N,L) r_(t-i)^L)+ ε_t^N 
r_t^L=α(log(P_(t-1)^L)-log(P_(t-1)^N))+∑_(i=1)to 2(γ_i^(L,L) r_(t-i)^L) + ∑_(i=1)to 2(γ_i^(L,N) r_(t-i)^N)+ ε_t^L 

Любая помощь будет оценена так. Заранее спасибо за вашу помощь!!

Я новичок в R и немного поработал с SAS и процедурами временных рядов. Я видел ссылку на использование vars(), но примеры, которые я смотрел, не кажутся применимыми, поэтому я довольно сильно застрял. Я сделал статистику DW, и есть совместная интеграция.

Я просто не могу понять, как писать код для этого ...

+0

Итак, в чем же вопрос? Вам просто нужна помощь в преобразовании теоретических формул в R-код? – thelatemail

+0

Да, как мне преобразовать теоретическую модель в r – samooch

ответ

5

Вы можете использовать urca пакет в R для этого: (скажем, ваши данные mydf с LN столбца как доходностей для Лондонской фондовой рынок и NY как возврат акций для фондового рынка NY). Ниже приведен пример кода (не проверено):

install.packages("urca") 
library(urca) 
mysample <- mydf[, c("NY", "LN")] 
myvecm <- ca.jo(mysample, ecdet = "const", type="eigen", K=2, spec="longrun") 
myvecm.ols <- cajools(myvecm) 

Примечание: Я предполагаю, что вы использовали Johansen тест совместной интеграции и eigen статистики; k указывает номер запаса, который равен 2 для вашего примера, ecdet говорит, что коинтеграция имеет константу. Пожалуйста, проверьте здесь manual.

+0

, так что мне нужно иметь оба возврата в одном файле, тогда как я их в отдельных файлах на данный момент. Я прочитаю еще кое-что в этом руководстве, чтобы понять. Спасибо за вашу помощь. – samooch

+0

Это будет легко, если у вас есть все в одном файле. – Metrics

+1

Итак, я выполняю руководство по пакету urca, и кажется, что пакет чрезвычайно полезен для VECM. Однако я не понимаю, как это связано с VECM для обеих переменных вместе. Таким образом, похоже, существует приложение для работы с одной переменной и ее задержками, например, deltaXt = pi1deltaXt-1 + pi2deltaXt-2 + ... pik-1deltaXt-k + 1 + gammadeltaXt-k + ошибка. Я не совсем понимаю, как он относится к применению двух переменных x и y в одном и том же оператор модели, например deltaXt = pi1 (Xt-1-Yt-1) + pi2deltaXt-1 + pi3deltaXt-2 + pi4deltaYt-1 + pi5deltaYt-2 + ошибка. – samooch

Смежные вопросы