首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IBrokers历史索引数据

IBrokers历史索引数据
EN

Stack Overflow用户
提问于 2013-03-21 11:24:49
回答 2查看 2.5K关注 0票数 5

如何从Interactive Brokers获取索引到R的历史数据?如果是期货,我会使用下面的命令(正如这里建议的IBrokers request Historical Futures Contract Data?):

代码语言:javascript
复制
library(twsInstrument)
a <- reqHistoricalData(tws, getContract("ESJUN2013"))

但与标准普尔指数的connid对应的命令给出了一个错误:

代码语言:javascript
复制
> a <- reqHistoricalData(tws, getContract("11004968"))
Connected with clientId 110.
Contract details request complete. Disconnected.
waiting for TWS reply on ES ....failed.
Warning message:
In errorHandler(con, verbose, OK = c(165, 300, 366, 2104, 2106,  :
  Error validating request:-'uc' : cause - HMDS Expired Contract Violation:contract can not expire.

附言:有足够积分的人应该为IBrokers创建一个标签

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-21 18:20:43

我不能访问市场数据来访问指数数据,但我认为下面的应该可以。

代码语言:javascript
复制
reqHistoricalData(tws, twsIndex(symbol = "SPX", exch = "CBOE"))
## waiting for TWS reply on SPX ....failed.
## NULL

## Warning message:
## In errorHandler(con, verbose, OK = c(165, 300, 366, 2104, 2106,  :
##  Historical Market Data Service error message:No market data permissions for CBOE IND

下面是使用与上面类似的方法的reqContractDetails的结果,它证明twsIndex正确地创建了contract对象

代码语言:javascript
复制
reqContractDetails(tws, twsIndex(symbol = "SPX", exch = "CBOE"))
## [[1]]
## List of 18
##  $ version       : chr "8"
##  $ contract      :List of 16
##   ..$ conId          : chr "416904"
##   ..$ symbol         : chr "SPX"
##   ..$ sectype        : chr "IND"
##   ..$ exch           : chr "CBOE"
##   ..$ primary        : chr ""
##   ..$ expiry         : chr ""
##   ..$ strike         : chr "0"
##   ..$ currency       : chr "USD"
##   ..$ right          : chr ""
##   ..$ local          : chr "SPX"
##   ..$ multiplier     : chr ""
##   ..$ combo_legs_desc: chr ""
##   ..$ comboleg       : chr ""
##   ..$ include_expired: chr ""
##   ..$ secIdType      : chr ""
##   ..$ secId          : chr ""
##   ..- attr(*, "class")= chr "twsContract"
##  $ marketName    : chr "SPX"
##  $ tradingClass  : chr "SPX"
##  $ conId         : chr "416904"
##  $ minTick       : chr "0.01"
##  $ orderTypes    : chr [1:22] "ACTIVETIM" "ADJUST" "ALERT" "ALLOC" ...
##  $ validExchanges: chr "CBOE"
##  $ priceMagnifier: chr "1"
##  $ underConId    : chr "0"
##  $ longName      : chr "S&P 500 Stock Index"
##  $ contractMonth : chr ""
##  $ industry      : chr "Indices"
##  $ category      : chr "Broad Range Equity Index"
##  $ subcategory   : chr "*"
##  $ timeZoneId    : chr "CST"
##  $ tradingHours  : chr "20130321:0830-1500;20130322:0830-1500"
##  $ liquidHours   : chr "20130321:0830-1500;20130322:0830-1500"
## 
票数 5
EN

Stack Overflow用户

发布于 2015-06-08 21:59:07

如何请求非美国股票的合同信息,我已经尝试了下面的两个电话,我在合同细节中得到一个错误,但这些是两个证券的符号和交换,我可以在TWS中为它们提取信息。

符号(tws,twsEquity(reqContractDetails= "BMW",exch = "IBIS"))

符号(tws,twsEquity(reqContractDetails= "BP",exch = "EBS"))

我甚至尝试过使用exch='SMART‘,但它在宝马上失败了,并为BP获取了纽约证交所的线路。这个电话是不是只针对美国股市?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15538921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档