674 浏览
0

class BaseTraderStrategy:
    def __init__(self, api, symbol):
      self.posTask = TargetPosTask(self.api, self.symbol)

with self.engine.connect() as conn:
            conn.execute(text(sql_insert))
            self.posTask.set_target_volume(target_volume)
            conn.commit()

while True:
                if not self.api.wait_update(time.time() + 930):
                    break

大概是这样调用的,posTask会在每个时段开盘时初始化,在用模拟账户测试交易,

问题很奇怪,大多数时候是能够正常成交的,但隔几次交易就会出现一次set_target_volume 之后没办法成交的情况,代码走完了,循环也进行着,目标仓位也设置了,但是真实持仓一直都是0,没办法正常开仓,这种情况是咋回事呢,这个posTask需要定时重置?有没有posTask相关debug 信息可以看到

luoxiao198513 发表新评论 2024年4月27日

这个对象单例模式,还没办法不改参数重置,难受,这么不稳定只能insert_order了