研究加密货币市场的量化交易时,在使用数据时会遇到各种数据类型,比如K线数据、盘口数据、逐笔数据、指数数据,在此将每种数据类型给大家介绍下,方便大家做策略回测或数据研究的时候选择更适合的数据类型。
- K线数据
K线图即所谓的蜡烛图,每一根蜡烛都包含开盘价、收盘价、最高价、最低价四个价格,起始两个时间以及区间成交量。K线可根据不同时间维度,绘制为1分钟、15分钟、1小时等,其中1分钟K线为K线数据中较为常用的时间维度。
刚接触量化的小伙伴可能倾向于用K线进行策略的回测,因为K线回测的速度快,大部分单一策略或者较为简单的策略的情况下也没太大的问题,但是当K线在回测多个品种的策略和高频策略时,会暴露其缺陷,得出的结论存在很大差异。
例如,针对交易品种,即使是相对靠前的主流交易品种,也可能出现几秒都没有交易的情况,更别说在流动性较差的交易所搞小币种,而我们回测多品种策略时,经常默认它们的开盘价和收盘价是同时的,但实际上K线的开盘和收盘价并不是同时的。比如你的套利策略发现了套利空间,发出指令,其实当时盘口的价格与K线价格差别可能很大,程序就会执行错误的判断。
其次是时间维上,每根K线的时间区间内的最高价和最低价的具体时间是没有的,这样的一个时间跨度,对于秒级甚至毫秒级的高频策略的回测几乎没什么意义。
所以针对K线数据的使用,建议各位小伙伴谨慎一些,尽量多考虑你现在的策略需要什么精度的数据,而不是因为K线跑起来速度快无压力或者K线容易拿到就选择用K线。
- 逐笔成交数据
逐笔成交数据,即每一笔真实成交的数据,是交易所每