我使用代碼(下面的鏈接)在Interactive Brokers中開立訂單(我使用紙質賬戶),但是當我試圖關閉5秒我無法這樣做。我做錯了什麼?如何在5秒後關閉Interactive Brokers上的已開立訂單
library(IBrokers)
myconid = 3
twsobj = twsConnect(myconid)
myaud = twsCurrency("AUD",currency="USD",exch="IDEALPRO",primary="",strike="0.0",right="",local="",multiplier="",include_expired="0",conId=myconid)
Sys.sleep(2)
myorderid = as.integer(reqIds(twsobj))
print(myorderid)
Sys.sleep(2)
# my workaround:
options("scipen"=4)
placeOrder(twsobj, myaud, twsOrder(myorderid,"SELL", 1, "MKT"))
Sys.sleep(5)
placeOrder(twsobj, myaud, twsOrder(myorderid,"BUY", 1, "MKT"))
鏈接,我用:IBrokers - How I send 100000 to IBrokers:::.placeOrder?
UPDATE(以下Brian的回答): 我使用的代碼(鏈接如下)開在盈透證券的訂單(我用的是紙帳戶),但當我在5秒後試圖關閉打開的命令時,我無法這樣做。我做錯了什麼?
library(IBrokers)
myconid = 3
twsobj = twsConnect(myconid)
myaud = twsCurrency("AUD",currency="USD",exch="IDEALPRO",primary="",strike="0.0",right="",local="",multiplier="",include_expired="0",conId=myconid)
Sys.sleep(2)
print(myorderid)
Sys.sleep(2)
# my workaround:
options("scipen"=4)
placeOrder(twsobj, myaud, twsOrder(122,"SELL", 1, "MKT"))
Sys.sleep(5)
placeOrder(twsobj, myaud, twsOrder(123,"BUY", 1, "MKT"))
只是FYI IDEALPRO有一個至少25000美元,所以也許這是搞砸了。此外,新的紙質交易賬戶默認爲7497端口,但如果您連接的話可能沒問題。我不知道還有什麼不對,但我的理解是IBrokers軟件包並沒有真正完成和測試。 – brian
Thanks @brian你對「IDEALPRO最低25000美元」是正確的,但真正的問題是你寫的orderID。現在代碼工作正常.. – mql4beginner