vn.py官网
开源量化社区
Member
avatar
加入于:
帖子: 4
声望: 0

return10策略中on_tick函数生成1分钟bar后调用on_bar函数,on_bar函数接受的是1分钟k线吗?

    def on_tick(self, tick: TickData):
        """
        Callback of new tick data update.
        """
        if (
            self.last_tick_time
            and self.last_tick_time.minute != tick.datetime.minute
        ):
            bars = {}
            for vt_symbol, bg in self.bgs.items():
                bars[vt_symbol] = bg.generate()
            self.on_bars(bars)

        bg: BarGenerator = self.bgs[tick.vt_symbol]
        bg.update_tick(tick)

        self.last_tick_time = tick.datetime
    def on_bars(self, bars: Dict[str, BarData]):
        """"""
        # 1) 全撤
        self.cancel_all()

        # 2.3)初始化am &计算时间序列
        for vt_symbol, bar in bars.items():
            self.today = bar.datetime.date()
            am: ArrayManager = self.ams[vt_symbol]
            am.update_bar(bar)

            # 信号 过去10天的收益率
            return10 = am.rocp(self.return_period)
Administrator
avatar
加入于:
帖子: 4887
声望: 284

原本的课程代码可能有些问题,我们已经在计划重做了,非常抱歉。

on_bar函数接受的是合成完成的1分钟k线

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

沪公网安备 31011502017034号