已解决1.60K 浏览
0

insert的方法支持市价下单,为什么TargetPosTask不支持呢?

如果我在本地需要实现的话,感觉略麻烦呢…..

TargetPosTask的Active下单模式有时候也不一定会成交的,行情波动太大了。

jasjjdfal 选择最佳答案 2022年2月8日
1

这个暂时是不支持的,如果要用市价的话建议还是先用insert_order

jasjjdfal 选择最佳答案 2022年2月8日

我在本地修改的方案是:
def get_price(direction, quo_code):
if direction == “BUY”:
price = zhangtingjia(quo_code)
elif direction == “SHORT”:
price = dietingjia(quo_code)
else:
print(“计算下单价时出错”)
exit(“下单价出错”)
return price

然后在下单时,假如是开多单方向,则用:
target_position = TargetPosTask(api, 合约, price=get_price(“BUY”, 合约))
target_position.set_target_volume(手数)

结果报错:
下单方式(price) 5223.0 错误, 请检查 price 参数是否填写正确

其实不需要这么麻烦的,你的需求应该是更快的成交,用active就行了,我们在价格变化的时候会自动给你撤单再用最新的对价挂上去,这个函数有这个内置的功能