vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 144
声望: 3

请问一下vnpy的回测和实盘的buy, sell是在哪里区分的?
回测和实盘使用的是同一策略,我看回测中也调用了 on_bar函数,

    def new_bar(self, bar: BarData):
        """"""
        self.bar = bar
        self.datetime = bar.datetime

        self.cross_limit_order()
        self.cross_stop_order()
        self.strategy.on_bar(bar)

那么实盘的时候也执行策略中的buy, sell,
回测的时候也执行策略中的buy, sell,
请问在哪里区分是实盘,还是回测的呢?

Administrator
avatar
加入于:
帖子: 3913
声望: 209

对于策略来说,是不知道自己当前运行在哪个环境中(实盘or回测)的,这样才能实现一套代码满足需求,以及避免策略实盘和回测的行为不一致

Member
avatar
加入于:
帖子: 144
声望: 3

可是实盘的buy, sell不是应该调用ctp的命令么?
回测就不需要了吧?
这个区别在哪里区分的呢?谢谢。。

Administrator
avatar
加入于:
帖子: 3913
声望: 209

对的,实盘的实现在cta_strategy/engine.py中,所有下单都是真实的指令请求

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