如何使用 R 中的 Ibrokers 一次交易多只股票



使用Ibrokers账户,我知道如何用一个股票代码进行交易,在下面的示例中,我用"DAL"进行交易

library(IBrokers)
tws=twsConnect(clientId = 1,host = "localhost", port = 7497 )
contract=twsEquity(symbol = "DAL", exch = "SMART" )
order=twsOrder(action = "BUY", totalQuantity ="10", tif = "OPG" )
placeOrder(twsconn = tws, Contract = contract, Order = order)

但是,我有兴趣一次交易多个股票代码,例如如何下订单购买"DAL"和"AAL"。如何在 R 中将多个订单放入 IBroker?

我怀疑你的代码现在甚至有效。 要下另一个订单,只需下另一个订单。 请注意,它们必须具有单独的 ID,并且 ID 必须增加每个订单。

library(IBrokers)
tws=twsConnect(clientId = 1,host = "localhost", port = 7497 )
id <- tws.reqids(1)
contract=twsEquity(symbol = "AAL", exch = "SMART" )
# give an order id
order=twsOrder(id, action = "BUY", totalQuantity ="10", tif = "OPG" )
placeOrder(twsconn = tws, Contract = contract, Order = order)
# increment id
id <- id+1
contract=twsEquity(symbol = "DAL", exch = "SMART" )
order=twsOrder(id,action = "BUY", totalQuantity ="10", tif = "OPG" )
placeOrder(twsconn = tws, Contract = contract, Order = order)

我认为代码不起作用。 订单的默认值看起来是价格为 0 的LMT。 您可能想尝试orderType = "MKT"。 查看IBrokers的文档。

我建议使用不同的 API,看起来您没有太多使用 R 包,因此切换没什么大不了的。 它可能不会工作太久。 我认为它不受支持,并且自上次更新以来 API 已更改。

相关内容

  • 没有找到相关文章

最新更新