BackTest的时候,日志文件中的数据是如何记载的?

 

//##################################################################
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#property strict

int start()
{
double BufMAA=0;
BufMAA=iMA(NULL,PERIOD_M1,4,0,MODE_SMA,PRICE_CLOSE,0);

Print(iTime(NULL,PERIOD_M1,0),",",iClose(NULL,PERIOD_M1,0),",",BufMAA);

return(0);
   
}
//##################################################################

用这个EA做测试,用的是2013年的数据。

Symbol: USDJPY
Model:Every tick
Use date: check  From:2013.01.01  To:2013.12.31
Period:M1
Spread:20

测试后查看日志文件,发现有多行不同的数据却都对应一个相同的时间。

不知这些数据是什么数据,按照怎样的逻辑顺序记载的?

请哪位高手给予指点!

拜托拜托!

Automated Trading and Strategy Testing
Automated Trading and Strategy Testing
  • www.mql5.com
MQL5: language of trade strategies built-in the MetaTrader 5 Trading Platform, allows writing your own trading robots, technical indicators, scripts and libraries of functions
附加的文件:
ForAsking.mq4  1 kb
 
一分钟内会有多个ticks。
 
luenbo:
一分钟内会有多个ticks。

您的意思是说那是每个tick对应的值?

要是这样的话每分钟第一行的值应该是该分钟的Open值,每分钟最后一行的值应该是该分钟的Close值,这样理解对吗?

可是参照历史数据,这些值又对不上,请问是哪里弄错了?


还有就是这些数据不是连贯的,例如 2013.01.02 08:02 之后就是2013.01.02 08:10 ,请问知道这是怎么回事吗?

很急,希望能尽快给予指点!谢谢!

 

首先你要理解回测中的Every tick模式,策略测试器是怎么生成ticks的,那不是真实的ticks,是按算法模拟生成的。有篇很详细的文章一时没找到 :( ,之前讨论过。

数据不连贯那是经纪商服务器数据问题,这个试试看下其他平台该段时间分钟数据是否完备。

原因: