Цена акций в реальном времени R

Я пытаюсь сделать некоторый анализ рынка, используя R. Есть ли способ получить котировки акций в реальном времени с минимальными интервалами с помощью пакета? Я знаком с quantmod и использовал функцию getSymbols(), однако все данные, которые я могу использовать, составляют 15 минут. Спасибо.

Ответ 1

Мой qmao пакет имеет getQuote "методы" для BATS и google, которые находятся почти в режиме реального времени

Sys.time()
#[1] "2014-11-19 14:27:48.727988 CST"
getQuote("SPY", src="google")
#              TradeTime   Last Change PctChg Exchange GoogleID
#SPY 2014-11-19 15:27:00 205.17  -0.38  -0.18 NYSEARCA   700145
getQuote("SPY", src="bats", what="bbo")
#  TradeTime BidSize BidPrice AskPrice AskSize   Last LastSize row.names
#1  15:27:24   15000   205.16   205.17     300 205.17      300       SPY

getQuote.bats имеет несколько параметров для того, как вы хотите, чтобы данные печатались:

getQuote("SPY", src="bats", what="ladder")
#  SPDR S&P 500 ETF TR TR UNIT 
#  Time:    15:27:44 
#  Volume:  8779553 
#  Last: 300 @ 205.17
#
#+-------+--------+-------+
#|       | 205.21 | 16700 |
#+-------+--------+-------+
#|       | 205.2  | 21900 |
#+-------+--------+-------+
#|       | 205.19 | 17300 |
#+-------+--------+-------+
#|       | 205.18 | 5572  |
#+-------+--------+-------+
#|       | 205.17 |  300  |
#+-------+--------+-------+
#| 15000 | 205.16 |       |
#+-------+--------+-------+
#| 12100 | 205.15 |       |
#+-------+--------+-------+
#| 11300 | 205.14 |       |
#+-------+--------+-------+
#| 23900 | 205.13 |       |
#+-------+--------+-------+
#| 10600 | 205.12 |       |
#+-------+--------+-------+

getQuote("SPY", src="bats", what="depth")
#
#
# BidQty   BidPrice   AskPrice   AskQty 
#-------- ---------- ---------- --------
# 15000     205.16     205.17     300   
# 12100     205.15     205.18     5572  
# 11300     205.14     205.19    17300  
# 23900     205.13     205.2     21900  
# 10600     205.12     205.21    16700  

Существуют также методы построения графика

plot(getQuote("SPY", src="bats"))

enter image description here

plot(getQuote("SPY", src="bats", what="ladder"))

enter image description here

plot(getQuote("SPY", src="bats", what="depth"))

enter image description here


И, если вы все еще читаете, в пакете включено блестящее приложение, чтобы вы могли обновлять эти "сюжеты" в режиме реального времени. Просто запустите это:

shinyBATS()

Ответ 2

IB, вероятно, будет лучше всего использовать данные в реальном времени. Вам не нужно будет платить за нее (*), но в прошлый раз, когда я посмотрел, вам нужно будет открыть счет с минимальным количеством реальных денег.

Существует пакет R: http://cran.r-project.org/web/packages/IBrokers/index.html

Существует ли виньетка для получения данных в реальном времени, но она была обновлена ​​в последний раз в 2009 году, поэтому я бы пошел с общей виньеткой: http://cran.r-project.org/web/packages/IBrokers/vignettes/IBrokers.pdf, который был последним обновлением sep 2014.

(*: Не совсем верно: для некоторых обменов вам потребуется внести дополнительную плату за обмен.)