Скачать MetaTrader 5

При тестировании советника M5 M15 M30 в чём разница

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Aleksey Yakushev
139
Aleksey Yakushev  

Добрый день.

Пишу советника, так что он затачивается под период M15.

При тестировании в тестере MT4 выбираю M15, отлавливаю даты и вывожу

TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS) дак вот какая-то белеберда, то даты выводятся каждую минуту, то скачками по несколько часов.

С чем это может быть связано? 

ktest0
631
ktest0  

Вероятно есть условия препятствующие выполнению данного участка.

Нужно видеть код для анализа ошибки.

Aleksey Yakushev
139
Aleksey Yakushev  

Ок, тут нашёл у себя ошибку.

Вопрос, всё одно и тоже меняем только Период тестирования в тестере, правильно ли понимаю, что iXXX буду идти по разным барам, а ask,bid по возможности по минимальному таймфрейму (При тестировании модель = все тики).

Aleksey Yakushev
139
Aleksey Yakushev  
int init()  
  {   
   Print(" DATETIME BEGIN:[",TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS),"]");
   return(0);
  }

int deinit()
  {
   Print(" modelBarCount = [",modelBarCount,"]");
   Print(" DATETIME FINISH:[",TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS),"]");
   return(0); 
  }

int start()  
  {   
   modelBarCount = Bars;
   return(0);
  }

===============

Тестирую данный советник, меняю только период (M15,M30,H1)

Модель - все тики.

Период постоянный 2012.12.11 - 2012.12.15 

=============== 

Результат:  

M15:

2012.12.18 14:30:35 2012.12.14 23:59  CoreAlexGru EURUSD,M15:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:30:35 2012.12.14 23:59  CoreAlexGru EURUSD,M15:  modelBarCount = [1384]

2012.12.18 14:30:35 2012.12.11 00:00  CoreAlexGru EURUSD,M15:  DATETIME BEGIN:[2012.12.11 00:00:00] 

M30:

 2012.12.18 14:31:16 2012.12.14 23:59  CoreAlexGru EURUSD,M30:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:31:16 2012.12.14 23:59  CoreAlexGru EURUSD,M30:  modelBarCount = [1192]

2012.12.18 14:31:15 2012.12.11 00:00  CoreAlexGru EURUSD,M30:  DATETIME BEGIN:[2012.12.11 00:00:00]

H1:

 2012.12.18 14:31:45 2012.12.14 23:59  CoreAlexGru EURUSD,H1:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:31:45 2012.12.14 23:59  CoreAlexGru EURUSD,H1:  modelBarCount = [1096]

2012.12.18 14:31:45 2012.12.11 00:00  CoreAlexGru EURUSD,H1:  DATETIME BEGIN:[2012.12.11 00:00:00]

=========

Откуда такие количества что-то не понимаю.

Дальше считаю количества тиков при тестировании, всё так же, опять меняем только период.  

 М15

2012.12.18 14:33:41 2012.12.14 23:59  CoreAlexGru EURUSD,M15: tickCnt= [165777]

2012.12.18 14:33:41 2012.12.14 23:59  CoreAlexGru EURUSD,M15:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:33:41 2012.12.14 23:59  CoreAlexGru EURUSD,M15:  modelBarCount = [1384]

2012.12.18 14:33:40 2012.12.11 00:00  CoreAlexGru EURUSD,M15:  DATETIME BEGIN:[2012.12.11 00:00:00]

М30

2012.12.18 14:34:16 2012.12.14 23:59  CoreAlexGru EURUSD,M30: tickCnt= [165748]

2012.12.18 14:34:16 2012.12.14 23:59  CoreAlexGru EURUSD,M30:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:34:16 2012.12.14 23:59  CoreAlexGru EURUSD,M30:  modelBarCount = [1192]

2012.12.18 14:34:16 2012.12.11 00:00  CoreAlexGru EURUSD,M30:  DATETIME BEGIN:[2012.12.11 00:00:00]

Н1

2012.12.18 14:34:48 2012.12.14 23:59  CoreAlexGru EURUSD,H1: tickCnt= [165731]

2012.12.18 14:34:48 2012.12.14 23:59  CoreAlexGru EURUSD,H1:  DATETIME FINISH:[2012.12.14 23:59:55]

2012.12.18 14:34:48 2012.12.14 23:59  CoreAlexGru EURUSD,H1:  modelBarCount = [1096]

2012.12.18 14:34:47 2012.12.11 00:00  CoreAlexGru EURUSD,H1:  DATETIME BEGIN:[2012.12.11 00:00:00]

Т.е. вот тут лучше, при изменении периодов количества тиков одинаковые. 


Rater
14
Rater  
int Bars

Number of bars in the current chart.

на графике наверно еще до начала тестирования бары есть.

как-то так можно попробовать: 

 

int start()

  {

    if (LastBarTime!=Time[0]){ //дождёмся окончания текущего бара 

      modelBarCount++ ; 

      LastBarTime!=Time[0];

   } 

  return(0); 

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий