资源加载中... loading...

关于多周期策略回测的问题

Author: caitouwh, Created: 2016-07-20 01:52:59, Updated:

新手请教个关于多周期策略回测的问题。

比如,策略是 观察到价格在 1分钟, 5 分钟 同时发生MACD 金叉时买入。

设计如下程序

主程序 为 程序每分钟循环一次。每次循环都计算1分钟MACD 判断是否金叉 。 数据采集使用的函数,参数为 records = $.GetRecords(exchange, 1) 如果到了5分钟整数倍, 就多计算一次5分钟 MACD ,判断是否金叉。 数据采集函参为 。 records = $.GetRecords(exchange, 5)

循环休息时间 为1 分钟 sleep(60000) // 60秒。

回测时 采用周期律为 1分钟。 但出现的问题是 : 程序在回测时5分钟 MACD 总是计算不对。 而1分钟MACD没有问题。

请教下高手, 这个问题怎么解决?

另外, 如果用 sleep(6000) 设定休息间隔, 会遇到循环体计算时间长, 可能带来无法时间整点对齐 问题。

比如 希望程序唤醒时间是 10:00:00 , 10:01 :00 , 10:02:00 … . 但实际唤醒时间后延到 10:00:02 , 10:01:05 … 这样累计时间误差大。

请高手指点一二。


更多内容

caitouwh 谢谢小梦的回复!  另外有关多周期回测,我后来发现如果用策略广场的高精度回测模板, 可以在短周期内可以从1分钟K线中过滤出5分钟或10分钟K线, 部分满足多周期测试的需求 。