在之前的文章中我们已经学会自己用Python编写代码来合成K线,那么现在来了解下VN.PY中的K线合成器BarGenerator的工作原理。
BarGenerator的定义在utility文件中:
在这里我们可以看到,BarGenerator的作用分两个:
第一个是generating1minute bar data from tick data。就是用tick数据来合成一分钟K线的数据。
第二个则是generatingx minute bar/x hour data from 1 minute data,就是用一分钟的K线再去合成后面的X分钟K线或者X小时的K线。
这里的注释中还有一个Notice,这里的意思是说你的X必须是可以被60整除的数,比如2、3、5、6、10、15、20、30(分钟)等等。这个主要是考虑到在K线合成上大家一般的使用习惯。
在创建BarGenerator对象的时候,需要的参数除了self,还有四个,分别是on_bar、window、on_window_bar和interval。他们分别的意思是这样:
1、on_bar:当一分钟的K线合成完成的时候,BarGenerator会自动去调用这一回调函数。
2、window:要合成的周期数,也就是X分钟或X小时的X。如果windows=0,就不会合成X分钟或者X小时的K线。
3、on_window_bar:要合成的自定义周期的K线合成之后对应的回调函数。
4、interval:要合成的周期,默