Блог им. SciFi

Построение модели для парной торговли акциями Google и Apple на R

    • 28 марта 2016, 18:51
    • |
    • SciFi
  • Еще

Посчитал на R спред между акциями Google и Apple с учётом соотношения (hedge ratio). И нанёс среднюю линию с двумя среднеквадратичными отклонениями сверху и снизу. Красота. 

Построение модели для парной торговли акциями Google и Apple на R

Делается на R это очень просто, код ниже. 

require(quantmod)
> startT <- «2015-01-01»
> endT <- «2016-01-01»
> rangeT <- paste(startT, "::", endT, sep="")
> symbols <- c(«AAPL», «GOOG»)
> getSymbols(symbols)
[1] «AAPL» «GOOG»
> tGOOG <- GOOG[,6][rangeT]
> pdtGOOG <- diff(tGOOG)[-1]
> tAAPL <- AAPL[,6][rangeT]
> pdtAAPL <- diff(tAAPL)[-1]
> model <- lm(pdtAAPL ~ pdtGOOG)
> hr <- as.numeric(model$coefficients[1])
> spreadT <- tAAPL — hr * tGOOG
> meanT <- as.numeric(mean(spreadT, na.rm=TRUE))
> sdT <- as.numeric(sd(spreadT, na.rm=TRUE))
> par(mfrow = c(2,1))
> hist(spreadT, col=«blue», breaks = 100, main = «Spread Histogram (AAPL vs GOOG)»)
> plot(spreadT, main=«AAPL vs GOOG spread (in-sample period)»)
> abline(h = meanT, col = «red», lwd = 2)
> abline(h = meanT + 1 * sdT, col = «blue», lwd = 2)
> abline(h = meanT — 1 * sdT, col = «blue», lwd = 2)

Здесь: 

meanT — среднее
sdT — среднекв. отклонение
spreadT — спред
par — график с двумя секциями
plot — график
hist — гистограмма
abline — линия поверх графика
model — линейная зависимость модель, МНК
quantmod — библиотека для получения исторических данных
rangeT — временной диапазон

Хотите попросить сделать количественный анализ чего-нибудь? Пишите в личку или в комментариях.
★22
13 комментариев
Супер, растёшь на глазах.Успехов в изучении и практическом применении. 
avatar
Олег Б., спасибо ) 
avatar
SciFi, подскажите, где вы берете учебные материалы по R?
в частности интересует как получать котировки в онлайн режиме с quik и как управлять терминалом? (выставление заявок и т.д.) 
Николай Ткаченко, есть книга «R в действии», есть сайты разные, например, http://www.rfortraders.com/ . Что касается, получения данных, то это нужно изучать библиотеки quantmod для амер. рынка и rusquant для российского. R с QUIK не совмещал. На R я считаю, на QUIK торгую отдельно, руками или роботами. Роботов пишу на QPILE.
avatar
SciFi, спасибо
задним числом использовали среднее значение, вот и красота. запустите все в форвардном режиме и получите «опыт, сын ошибок трудных»
avatar
плюсанул за р и тему спредов
avatar
не гуд… лет за 10 смотреть надо
avatar
ves2010, лучше за 300
ves2010, я это тут показал для демонстрации, сам я это не торгую. Просто изучаю рынок. Из IT, поэтому выбрал эти компании. 
avatar
Когда-нибудь колебание перейдет на новый уровень и уже никогда не вернется к красной линии.
Дядя Ваня СпекулянтЪ, знаю. Это тут только для демонстрации возможностей R. Я эту стратегию не рекомендую для использования. А если использовать, то со стопами и диверсифицировать стратегии, чтобы уменьшить внутренний риск, такой, как развал одной из компаний. 
avatar
Дядя Ваня СпекулянтЪ, там обычно берут 100 пар каждая бумага 0.5% от капитала… если ускачет на новый уровень возьмут на плечи и усредняться с шагом 0.5%
avatar

теги блога SciFi

....все тэги



UPDONW
Новый дизайн