目前的策略是突破型的,主要是基于前几个K线的收盘价和当前K线的开盘价决定是否开仓。
想请教这种模式该选tick回测还是bar回测?
如果选择tick回测,这种模式下on bar还会执行吗,可以在onbar里读取前几个K线,然后在下一个tick(即当前K线的开盘价)里进行开仓吗?
如果选择onbar,读取前几个K线肯定没问题,ontick还执行吗?能否在ontick里获取当前K线的开盘价,并进行开仓吗?
目前的策略是突破型的,主要是基于前几个K线的收盘价和当前K线的开盘价决定是否开仓。
想请教这种模式该选tick回测还是bar回测?
如果选择tick回测,这种模式下on bar还会执行吗,可以在onbar里读取前几个K线,然后在下一个tick(即当前K线的开盘价)里进行开仓吗?
如果选择onbar,读取前几个K线肯定没问题,ontick还执行吗?能否在ontick里获取当前K线的开盘价,并进行开仓吗?
tick模式要有tick数据,你只有K线就只能用K线模式
已经有tick数据,并且导入到数据库了。
但对这种逻辑不太清楚,所以想请教大神!!
想了解tick逻辑,可参考【VNPY进阶】on_tick函数内撤单追单详解,实盘在用的代码,没有坑哦此帖
我可能表达的不清楚,我是不理解在tick模式下,on_bar中逻辑是否执行,以及bar模式下,on_tick中的逻辑是否执行?
因为我觉得,回测在bar模式下和实盘相差很大,只有tick模式下才能尽可能接近实盘。
xiaohe wrote:
- K线回测模式下,只会调用on_bar,因为没有tick数据
- Tick回测模式下,只会调用on_tick,然后由策略自行合成K线调用on_bar(BarGenerator)
- Tick回测理论上会更精准些,但是耗时也会长的多,所以对大部分人来说得不偿失
谢谢!!!!