4.38K 浏览
0

python程序中,api.insert_order(…)指令,一直不能成交

order = api.insert_order(symbol="SHFE.cu2003", direction="BUY", offset="OPEN", volume=1, limit_price=quote.bid_price1+1000)

使用过“快期模拟”、simnow、实盘帐户,3个帐号尝试。这3个帐户,都能正常登陆。其中实盘帐户登陆后,程序还返回过期的“资金不足,请补交保证金”的信息。说明帐号确实正确登陆了。但平仓后,已经不存在“资金不足”的问题了。这段代码,在3种帐户中,都无法顺利成交。

返回的order.status一直是ALIVE。实盘帐户和simnow帐户,都可以用快期终端看到,没有成交。

ringo 已回答的问题 2020年1月14日
0

同样情况,相同代码使用的为simnow账户,下单可以成交,所以请根据返回信息检查是否资金不足

订单状态显示alive,即表示该订单状态仍有可能发生改变,即还未成交,自然没有成交记录

from tqsdk import TqApi, TqAccount
 api = TqApi(TqAccount("simnow","147716","123456"),web_gui=True)
kline = api.get_kline_serial("SHFE.rb2005",60)
quote = api.get_quote("SHFE.cu2003")
 order = api.insert_order(symbol="SHFE.cu2003", direction="BUY", offset="OPEN", volume=1, limit_price=quote.bid_price1+1000)
 while True:
    api.wait_update()

ringo 编辑答案 2020年1月14日