3

我目前正在学习如何使用该IBrokers软件包。

我可以按我想要的频率和期权价格拉动股票价格,但我目前坚持拉动外汇汇率。

我不知道如何设置权限twsContract,用于调用 with reqHistoricalData

我有兴趣在 1 分钟的基础上获得 CADUSD 货币。我怎样才能做到这一点?

手册中的示例给出:

currency <- twsCurrency("EUR")

当我尝试用 say 调用它时,reqHistoricalData(tws, currency)它会返回一个错误,比如“没有可用的 1D 历史数据”。由于我什至无法使手册中的示例起作用,因此我陷入了困境……

有人可以告诉我正确的语法是什么吗?如果我有几个实际有效的例子,我可以从那里拿来。

此外,当我尝试使用"USD.CAD"or"CAD.USD"作为twsContract对象中的代码时,我收到抱怨说这不是有效的安全性。我怎样才能找出正确的股票代码名称USD.CAD是什么?现在,我通过查看我的交互式经纪人应用程序(显然同时打开)并输入公司名称并进行搜索来找出股票票。股票代码通常会返回,例如(输入 apple,当我想在交互式经纪人工作站中将此证券添加到我的投资组合时,返回 AAPL)。

任何帮助将非常感激。

另外,另一个相关的问题是,我如何以 1 分钟为基础提取 S&P500 价格指数的历史数据?

我猜我会twsContract在 R 中使用一个对象,但我不知道要使用什么参数。代码应该是什么?贸易工作站提到它是一种“索引”产品类型(显然),它不适合任何包装器twsStock,如twsCurrency等......再次,在某个地方是否有这样的例子,它确实有效?

4

1 回答 1

5

您在获取 FX 数据时遇到问题,因为您正在尝试获取TRADESIBrokers 不会为 FX 传播的数据。相反,您应该使用whatToShow="BID"or whatToShow="Ask"。例如

tws <- twsConnect()
ccy <- reqContractDetails(tws, twsCurrency("USD", "CAD"))[[1]]$contract
reqHistoricalData(tws, ccy, whatToShow='BID')

获取标准普尔 500 指数的数据是类似的

reqHistoricalData(tws, reqContractDetails(tws, twsIndex("SPX", "CBOE", "USD"))[[1]]$contract)

您的问题非常广泛,读起来像是对软件包概述的请求。你读过小插曲吗?( vignette("IBrokers"))


在 R-Forge 上有一个名为twsInstrument的包,它提供了一些包装器,让您的操作更轻松。

library(twsInstrument)
get_quote("USD.CAD")
getBAT("USD.CAD") #gets the last 5 days of minutely Bid/Ask/Trade/Midpoint

此外,请参阅?reqTBBOhistory并将twsInstrument:::update.data大量数据下载到磁盘。

最后,我建议在 Jeff 可能会看到的r-sig-finance 邮件列表上提出这些类型的问题。

于 2012-10-03T17:18:28.520 回答