请问一下,是否有方法能够手动平仓的时候,策略能够自动更新仓位,而不是后续反复给服务器下平仓指令,而服务器则返回无仓位可平。
请问一下,是否有方法能够手动平仓的时候,策略能够自动更新仓位,而不是后续反复给服务器下平仓指令,而服务器则返回无仓位可平。
手动平仓后,需要自行修改对应json文件里的数值,无法自动更新策略持仓
好的,谢谢!
我有一个办法,就是通过查询持仓数量来矫正pos,手动加减仓后能自己矫正pos。如果开始策略pos=0 而有持的有仓位,那么等待下次开仓后,pos不为0后,自己会把仓位矫正成持仓数。有点简单粗暴,这是我的解决办法。
if self.get_engine_type().value == "实盘":
position = self.get_position_detail(self.vt_symbol)
self.long_pos = position.long_pos
self.short_pos = position.short_pos
if self.pos == 0 and (self.long_pos != 0 or self.short_pos != 0):
self.pos = 0
elif self.pos > 0 and self.pos != self.long_pos:
self.pos = self.long_pos
elif self.pos < 0 and self.pos != - self.short_pos:
self.pos = - self.short_pos