VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 5
声望: 0

各位前辈,请教一个问题,在实盘运行中,策略的on bar函数执行条件,究竟是要只写self.am.inited == True即可执行逻辑,还是也要判断self.trading==True的时候才能执行。

这个问题困扰我很久了,归根到底,一直对于self.trading理解不够深刻,如下是说明代码

    def on_5min_bar(self, bar: BarData):
        self.am.update_bar(bar)
        if not self.am.inited:  # or not self.trading:
            return
        ........
Member
avatar
加入于:
帖子: 1470
声望: 105

纯粹和策略逻辑信号计算部分相关的,self.am.inited为True就可以执行了(因为缓存数据已经足够)。

self.trading一般不需要在代码里用到,它是一个底层策略交易状态,为False时会自动禁止委托和撤单等交易操作。

Member
avatar
加入于:
帖子: 5
声望: 0

收到 十分感谢

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】