А генерятся ли торговые события в тестере при выборе таймфрейма Month?

 

Начнём, как всегда, с простого кода (в нескольких модулях):

Main.mq5

// Expert main module
// Copyright (c) 2013 Roman Rich
#property           version             "1.01"
#property           link                "https://www.facebook.com/roman.i.rich"
#property           copyright           "Copyright (c) 2013 Roman Rich"
#property           description         "Пустой шаблон"

#include            "on_init_lib.mqh"
#include            "on_tick_lib.mqh"
#include            "on_timer_lib.mqh"
#include            "on_book_lib.mqh"
#include            "on_trade_lib.mqh"
#include            "on_test_lib.mqh"

// Таймфрейм
input               ENUM_TIMEFRAMES     time_frame=PERIOD_D1;                   // Таймфрейм

int MainFunction()
{
        Print("MainFunction start.");
        Print("MainFunction end.");
        return(0);
};

on_init_lib.mqh

// Init library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

int OnInit()
{
        Print("OnInit start.");
        EventSetTimer(1);
        Print("OnInit end.");
        return(0);
}

// Обрабатываем деинициализацию:
// причина деинициализации
void OnDeinit(const int loc_reason)
{
        Print("OnDeinit start.");
        EventKillTimer();
        Print("OnDeinit end.");
}

on_tick_lib.mqh

// Ticker library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

void OnTick()
{
        Print("OnTick start.");
        MainFunction();
        Print("OnTick end.");
};

on_timer_lib.mqh

// Timer library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

void OnTimer()
{
        Print("OnTimer start.");
        MainFunction();
        Print("OnTimer end.");
}

on_book_lib.mqh

// Glass library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

void OnBookEvent(const string& loc_symbol)
{
        Print("OnBookEvent start.");
        Print("OnBookEvent end.");
}

on_trade_lib.mqh

// Trading library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

void OnTrade()
{
        Print("OnTrade start.");
        Print("OnTrade end.");
}

// Обрабатываем событие TradeTransaction:
// структура торговой транзакции,...
// ...структура торгового запроса,...
// ...структура результата торгового запроса
void OnTradeTransaction(const MqlTradeTransaction& loc_trade_transacion,const MqlTradeRequest& loc_trade_request,const MqlTradeResult& loc_trade_result)
{
        Print("OnTradeTransaction start.");
        Print("OnTradeTransaction end.");
}

on_test_lib.mqh

// Testing library
// Copyright (c) 2013 Roman Rich
#include            "main.mq5"

double OnTester()
{
        Print("OnTester start.");
        Print("OnTester end.");
        return(0.0);
}

void OnTesterInit()
{
        Print("OnTesterInit start.");
        Print("OnTesterInit end.");
}

void OnTesterPass()
{
        Print("OnTesterPass start.");
        Print("OnTesterPass end.");
}

void OnTesterDeinit()
{
        Print("OnTesterDeinit start.");
        Print("OnTesterDeinit end.");
}

Компильнёмся.

Вызываем тестер стратегий. На вкладке "Параметры" выбираем:

 

На вкладке "Настройки" выбираем:

 

 Стартуем и быстро стопаем, бо в журнале - гектары записей типа:

ES 0 13:14:56 Core 1 connecting to 127.0.0.1:3000

CS 0 13:14:56 Core 1 connected

PI 0 13:14:56 Core 1 authorized (agent build 803)

HQ 0 13:14:56 Tester #IBM,Daily (InstaForex-Server): testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00

HR 0 13:14:56 Core 1 common synchronization completed

NL 0 13:14:56 Tester quality of analyzed history is 99%

ME 2 13:14:58 Core 1 disconnected

NS 0 13:14:58 Core 1 connection closed

RF 0 13:14:58 Core 1 1490 bytes of tester parameters loaded

DL 0 13:14:58 Core 1 expert file added: Experts\Test\main.ex5. 8141 bytes loaded

FF 0 13:14:58 Core 1 initial deposit 10000.00 USD, leverage 1:100

IL 0 13:14:58 Core 1 successfully initialized

OK 0 13:14:58 Core 1 9779 bytes of total initialization data received

ML 0 13:14:58 Core 1 Intel Core i5-2430M  @ 2.40GHz, 4007 MB

GI 0 13:14:58 Core 1 #IBM: symbol tick base found

MG 0 13:14:58 Core 1 #IBM: load 23 bytes of history data to synchronize

EI 0 13:14:58 Core 1 #IBM: history synchronized from 2007.06.12 to 2013.05.28

QL 0 13:14:58 Core 1 #IBM,Daily: history cached from 2012.01.03 00:00

PE 0 13:14:58 Core 1 #IBM,Daily (InstaForex-Server): every tick generating

EP 0 13:14:58 Core 1 #IBM,Daily: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00 started with inputs:

ML 0 13:14:58 Core 1  time_frame=16408

KG 0 13:14:58 Core 1 2013.01.01 00:00:00   OnInit start.

NL 0 13:14:58 Core 1 2013.01.01 00:00:00   OnInit end.

KJ 0 13:14:58 Core 1 2013.01.01 00:00:01   OnTimer start.

DK 0 13:14:58 Core 1 2013.01.01 00:00:01   MainFunction start.

QS 0 13:14:58 Core 1 2013.01.01 00:00:01   MainFunction end.

HE 0 13:14:58 Core 1 2013.01.01 00:00:01   OnTimer end.

RL 0 13:14:58 Core 1 2013.01.01 00:00:02   OnTimer start.

QJ 0 13:14:58 Core 1 2013.01.01 00:00:02   MainFunction start.

DR 0 13:14:58 Core 1 2013.01.01 00:00:02   MainFunction end.

EG 0 13:14:58 Core 1 2013.01.01 00:00:02   OnTimer end.

EO 0 13:14:58 Core 1 2013.01.01 00:00:03   OnTimer start.

NH 0 13:14:58 Core 1 2013.01.01 00:00:03   MainFunction start.

GP 0 13:14:58 Core 1 2013.01.01 00:00:03   MainFunction end.

RF 0 13:14:58 Core 1 2013.01.01 00:00:03   OnTimer end.

DQ 0 13:14:58 Core 1 2013.01.01 00:00:04   OnTimer start.

CF 0 13:14:58 Core 1 2013.01.01 00:00:04   MainFunction start.

RN 0 13:14:58 Core 1 2013.01.01 00:00:04   MainFunction end.

Теперь на вкладке "Настройки" выбираем:

 

Стартуем и снова быстро стопаем, бо в журнале опять же гектары вот такого добра:

ES 0 13:14:56 Core 1 connecting to 127.0.0.1:3000

CS 0 13:14:56 Core 1 connected

PI 0 13:14:56 Core 1 authorized (agent build 803)

HQ 0 13:14:56 Tester #IBM,Daily (InstaForex-Server): testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00

HR 0 13:14:56 Core 1 common synchronization completed

NL 0 13:14:56 Tester quality of analyzed history is 99%

ME 2 13:14:58 Core 1 disconnected

NS 0 13:14:58 Core 1 connection closed

RF 0 13:14:58 Core 1 1490 bytes of tester parameters loaded

DL 0 13:14:58 Core 1 expert file added: Experts\Test\main.ex5. 8141 bytes loaded

FF 0 13:14:58 Core 1 initial deposit 10000.00 USD, leverage 1:100

IL 0 13:14:58 Core 1 successfully initialized

OK 0 13:14:58 Core 1 9779 bytes of total initialization data received

ML 0 13:14:58 Core 1 Intel Core i5-2430M  @ 2.40GHz, 4007 MB

GI 0 13:14:58 Core 1 #IBM: symbol tick base found

MG 0 13:14:58 Core 1 #IBM: load 23 bytes of history data to synchronize

EI 0 13:14:58 Core 1 #IBM: history synchronized from 2007.06.12 to 2013.05.28

QL 0 13:14:58 Core 1 #IBM,Daily: history cached from 2012.01.03 00:00

PE 0 13:14:58 Core 1 #IBM,Daily (InstaForex-Server): every tick generating

EP 0 13:14:58 Core 1 #IBM,Daily: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00 started with inputs:

ML 0 13:14:58 Core 1  time_frame=16408

KG 0 13:14:58 Core 1 2013.01.01 00:00:00   OnInit start.

NL 0 13:14:58 Core 1 2013.01.01 00:00:00   OnInit end.

KJ 0 13:14:58 Core 1 2013.01.01 00:00:01   OnTimer start.

DK 0 13:14:58 Core 1 2013.01.01 00:00:01   MainFunction start.

QS 0 13:14:58 Core 1 2013.01.01 00:00:01   MainFunction end.

HE 0 13:14:58 Core 1 2013.01.01 00:00:01   OnTimer end.

RL 0 13:14:58 Core 1 2013.01.01 00:00:02   OnTimer start.

QJ 0 13:14:58 Core 1 2013.01.01 00:00:02   MainFunction start.

DR 0 13:14:58 Core 1 2013.01.01 00:00:02   MainFunction end.

EG 0 13:14:58 Core 1 2013.01.01 00:00:02   OnTimer end.

EO 0 13:14:58 Core 1 2013.01.01 00:00:03   OnTimer start.

NH 0 13:14:58 Core 1 2013.01.01 00:00:03   MainFunction start.

GP 0 13:14:58 Core 1 2013.01.01 00:00:03   MainFunction end.

RF 0 13:14:58 Core 1 2013.01.01 00:00:03   OnTimer end.

DQ 0 13:14:58 Core 1 2013.01.01 00:00:04   OnTimer start.

CF 0 13:14:58 Core 1 2013.01.01 00:00:04   MainFunction start.

RN 0 13:14:58 Core 1 2013.01.01 00:00:04   MainFunction end.

И, как всегда, десерт.

На вкладке "Настройки" выбираем:

 

Стопать не спешим, стопанёт само.

Почему? Ищем ответ в журнале:

MS 0 13:21:38 Tester #IBM: history check started

ES 0 13:21:41 Core 1 agent process started

QH 0 13:21:41 Core 1 connecting to 127.0.0.1:3000

RO 0 13:21:42 Core 1 connected

EM 0 13:21:42 Core 1 authorized (agent build 803)

QD 0 13:21:42 Tester #IBM,Monthly (InstaForex-Server): testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00

IF 0 13:21:42 Core 1 common synchronization completed

LP 0 13:21:43 Tester quality of analyzed history is 99%

HE 0 13:21:43 Core 1 1490 bytes of tester parameters loaded

NP 0 13:21:43 Core 1 708 bytes of input parameters loaded

NJ 0 13:21:43 Core 1 2936 bytes of symbols list loaded

PM 0 13:21:43 Core 1 expert file added: Experts\Test\main.ex5. 8141 bytes loaded

RG 0 13:21:43 Core 1 initial deposit 10000.00 USD, leverage 1:100

MM 0 13:21:43 Core 1 successfully initialized

FG 0 13:21:43 Core 1 21 Kb of total initialization data received

OL 0 13:21:43 Core 1 Intel Core i5-2430M  @ 2.40GHz, 4007 MB

IG 0 13:21:43 Core 1 #IBM: symbol to be synchronized

LR 0 13:21:43 Core 1 #IBM: symbol synchronized, 3304 bytes of symbol info received

EJ 0 13:21:43 Core 1 #IBM: load 23 bytes of history data to synchronize

MR 0 13:21:43 Core 1 #IBM: history synchronized from 2007.06.12 to 2013.05.28

LK 3 13:21:43 Core 1 #IBM: start time changed to 2013.05.29 00:00 to provide data at beginning

FG 0 13:21:43 Core 1 #IBM,Monthly: contains 71 bars of beginning data from 2007.06.01 00:00 to 2013.05.01 00:00

OO 0 13:21:43 Core 1 #IBM,Monthly: history cache reserved for estimated 123 bars

LL 0 13:21:43 Core 1 #IBM,Monthly: history begins from 2007.06.01 00:00

RD 0 13:21:43 Core 1 #IBM,Monthly (InstaForex-Server): every tick generating

OP 0 13:21:43 Core 1 #IBM,Monthly: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.05.31 00:00 started with inputs:

OL 0 13:21:43 Core 1  time_frame=16408

GG 0 13:21:43 Core 1 2013.05.29 00:00:00   OnInit start.

RL 0 13:21:43 Core 1 2013.05.29 00:00:00   OnInit end.

ND 0 13:21:43 Core 1 2013.05.29 00:00:00   OnTester start.

OL 0 13:21:43 Core 1 2013.05.29 00:00:00   OnTester end.

ML 0 13:21:43 Core 1 final balance 10000.00

KD 0 13:21:43 Core 1 OnTester result 0

NO 0 13:21:43 Core 1 2013.05.29 00:00:00   OnDeinit start.

OD 0 13:21:43 Core 1 2013.05.29 00:00:00   OnDeinit end.

OO 0 13:21:43 Core 1 #IBM,Monthly: 0 ticks (0 bars) generated within 187 ms (total bars in history 71, total time 250 ms)

MQ 0 13:21:43 Core 1 154 Mb memory used

FN 0 13:21:43 Core 1 log file "D:\Admin\MetaTrader\Tester\Agent-127.0.0.1-3000\logs\20130529.log" written

RR 0 13:21:43 Core 1 connection closed

После отработки OnInit() ТОРГОВЫЕ СОБЫТИЯ НЕ ГЕНЕРИРОВАЛИСЬ!

А вопрос, собственно, простой: а почему? А как тестировать?

 

Мне кажется, косяк в выборе периода.

Инит стартует в первых двух случаях с начальной даты, а в последнем - с последнего имеющегося числа в текущем месяце.

Для чистоты эксперимента запусти месячник с конечной датой по начало мая.

Подозреваю, отработает правильно.

 

Rich

1. Предъявленные логи тестера являются "индикативными". В лог тестера помещаются записи лога агента. По разным причинам может оказаться, что не все логи успевают отправиться агентом терминалу. Поэтому надо рассматривать конкретные логи конкретного агента. Открыть лог локального агента можно из контекстного меню журнала тестера.

2. Если в Вашем примере нет команды отсылки торговых приказов, то ни OnTrade, ни OnTradeTransaction не будут вызваны. По той самой причине, что соответствующие события просто не будут сгенерированы.

 
alcom:

Мне кажется, косяк в выборе периода.

Инит стартует в первых двух случаях с начальной даты, а в последнем - с последнего имеющегося числа в текущем месяце.

Для чистоты эксперимента запусти месячник с конечной датой по начало мая.

Подозреваю, отработает правильно.

Подозрения не оправдались, отработало, как смогло - не правильно.

MS 0 08:47:07 Core 1 connecting to 127.0.0.1:3000

KS 0 08:47:07 Core 1 connected

HI 0 08:47:07 Core 1 authorized (agent build 803)

DP 0 08:47:07 Tester #IBM,Monthly (InstaForex-Server): testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00

LR 0 08:47:07 Core 1 common synchronization completed

QK 0 08:47:07 Tester quality of analyzed history is 98%

NI 0 08:47:07 Core 1 1490 bytes of tester parameters loaded

LR 0 08:47:07 Core 1 expert file added: Experts\Test\main.ex5. 8141 bytes loaded

FM 0 08:47:07 Core 1 initial deposit 10000.00 USD, leverage 1:100

EG 0 08:47:07 Core 1 successfully initialized

GD 0 08:47:07 Core 1 9779 bytes of total initialization data received

QE 0 08:47:07 Core 1 Intel Core i5-2430M  @ 2.40GHz, 4007 MB

GP 0 08:47:07 Core 1 #IBM: load 23 bytes of history data to synchronize

HH 0 08:47:07 Core 1 #IBM: history synchronized from 2007.06.12 to 2013.05.30

IM 3 08:47:07 Core 1 #IBM: start time changed to 2013.05.31 00:00 to provide data at beginning

HI 0 08:47:07 Core 1 #IBM,Monthly: contains 71 bars of beginning data from 2007.06.01 00:00 to 2013.05.01 00:00

KE 0 08:47:07 Core 1 #IBM,Monthly: history cache reserved for estimated 121 bars

JQ 0 08:47:07 Core 1 #IBM,Monthly: history begins from 2007.06.01 00:00

LO 0 08:47:07 Core 1 #IBM,Monthly (InstaForex-Server): every tick generating

EG 0 08:47:07 Core 1 #IBM,Monthly: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00 started with inputs:

EK 0 08:47:07 Core 1  time_frame=16408

FJ 0 08:47:07 Core 1 2013.05.31 00:00:00   OnInit start.

CR 0 08:47:07 Core 1 2013.05.31 00:00:00   OnInit end.

GJ 0 08:47:07 Core 1 2013.05.31 00:00:00   OnTester start.

FQ 0 08:47:07 Core 1 2013.05.31 00:00:00   OnTester end.

GG 0 08:47:07 Core 1 final balance 10000.00

QS 0 08:47:07 Core 1 OnTester result 0

GR 0 08:47:07 Core 1 2013.05.31 00:00:00   OnDeinit start.

FJ 0 08:47:07 Core 1 2013.05.31 00:00:00   OnDeinit end.

LP 0 08:47:07 Core 1 #IBM,Monthly: 0 ticks (0 bars) generated within 296 ms (total bars in history 71, total time 359 ms)

PL 0 08:47:07 Core 1 155 Mb memory used

GI 0 08:47:07 Core 1 log file "D:\Admin\MetaTrader\Tester\Agent-127.0.0.1-3000\logs\20130531.log" written

LH 0 08:47:07 Core 1 connection closed

KF 0 08:47:27 Core 1 connecting to 127.0.0.1:3000

MN 0 08:47:27 Core 1 connected

JL 0 08:47:27 Core 1 authorized (agent build 803)

JE 0 08:47:27 Core 1 connection closed

HQ 0 08:47:57 Tester #IBM: history check started

ND 0 08:47:57 Core 1 agent process started

JE 0 08:47:57 Core 1 connecting to 127.0.0.1:3000

MP 0 08:47:58 Core 1 connected

JJ 0 08:47:58 Core 1 authorized (agent build 803)

FG 0 08:47:58 Tester #IBM,Monthly (InstaForex-Server): testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00

ND 0 08:47:58 Core 1 common synchronization completed

PM 0 08:47:59 Tester quality of analyzed history is 98%

KK 0 08:47:59 Core 1 1490 bytes of tester parameters loaded

IO 0 08:47:59 Core 1 708 bytes of input parameters loaded

ID 0 08:47:59 Core 1 2936 bytes of symbols list loaded

CO 0 08:47:59 Core 1 expert file added: Experts\Test\main.ex5. 8141 bytes loaded

MJ 0 08:47:59 Core 1 initial deposit 10000.00 USD, leverage 1:100

JP 0 08:47:59 Core 1 successfully initialized

QJ 0 08:47:59 Core 1 21 Kb of total initialization data received

LQ 0 08:47:59 Core 1 Intel Core i5-2430M  @ 2.40GHz, 4007 MB

NJ 0 08:47:59 Core 1 #IBM: symbol to be synchronized

OQ 0 08:47:59 Core 1 #IBM: symbol synchronized, 3304 bytes of symbol info received

JE 0 08:47:59 Core 1 #IBM: load 23 bytes of history data to synchronize

IO 0 08:47:59 Core 1 #IBM: history synchronized from 2007.06.12 to 2013.05.30

HN 3 08:47:59 Core 1 #IBM: start time changed to 2013.05.31 00:00 to provide data at beginning

IJ 0 08:47:59 Core 1 #IBM,Monthly: contains 71 bars of beginning data from 2007.06.01 00:00 to 2013.05.01 00:00

NJ 0 08:47:59 Core 1 #IBM,Monthly: history cache reserved for estimated 121 bars

GR 0 08:47:59 Core 1 #IBM,Monthly: history begins from 2007.06.01 00:00

MI 0 08:47:59 Core 1 #IBM,Monthly (InstaForex-Server): every tick generating

DR 0 08:47:59 Core 1 #IBM,Monthly: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00 started with inputs:

DI 0 08:47:59 Core 1  time_frame=16408

CH 0 08:47:59 Core 1 2013.05.31 00:00:00   OnInit start.

FQ 0 08:47:59 Core 1 2013.05.31 00:00:00   OnInit end.

JG 0 08:47:59 Core 1 2013.05.31 00:00:00   OnTester start.

CO 0 08:47:59 Core 1 2013.05.31 00:00:00   OnTester end.

JI 0 08:47:59 Core 1 final balance 10000.00

PQ 0 08:47:59 Core 1 OnTester result 0

JP 0 08:47:59 Core 1 2013.05.31 00:00:00   OnDeinit start.

CI 0 08:47:59 Core 1 2013.05.31 00:00:00   OnDeinit end.

KM 0 08:47:59 Core 1 #IBM,Monthly: 0 ticks (0 bars) generated within 188 ms (total bars in history 71, total time 265 ms)

RR 0 08:47:59 Core 1 154 Mb memory used

JK 0 08:47:59 Core 1 log file "D:\Admin\MetaTrader\Tester\Agent-127.0.0.1-3000\logs\20130531.log" written

MM 0 08:47:59 Core 1 connection closed

 
stringo:

Rich

1. Предъявленные логи тестера являются "индикативными". В лог тестера помещаются записи лога агента. По разным причинам может оказаться, что не все логи успевают отправиться агентом терминалу. Поэтому надо рассматривать конкретные логи конкретного агента. Открыть лог локального агента можно из контекстного меню журнала тестера.

2. Если в Вашем примере нет команды отсылки торговых приказов, то ни OnTrade, ни OnTradeTransaction не будут вызваны. По той самой причине, что соответствующие события просто не будут сгенерированы.

Да, но куда девались события OnTimer() и OnTick()?

А логи агента - пожалуйста:

OR 0 08:47:07 127.0.0.1 login (build 803)

IL 0 08:47:07 Network 1490 bytes of tester parameters loaded

RI 0 08:47:07 Tester expert file added: Experts\Test\main.ex5. 8141 bytes loaded

IM 0 08:47:07 Tester initial deposit 10000.00 USD, leverage 1:100

CD 0 08:47:07 Tester successfully initialized

NQ 0 08:47:07 Network 9779 bytes of total initialization data received

FJ 0 08:47:07 Tester Intel Core i5-2430M  @ 2.40GHz, 4007 MB

DQ 0 08:47:07 History #IBM: load 23 bytes of history data to synchronize

FE 0 08:47:07 History #IBM: history synchronized from 2007.06.12 to 2013.05.30

MG 3 08:47:07 Tester #IBM: start time changed to 2013.05.31 00:00 to provide data at beginning

LQ 0 08:47:07 History #IBM,Monthly: contains 71 bars of beginning data from 2007.06.01 00:00 to 2013.05.01 00:00

DQ 0 08:47:07 History #IBM,Monthly: history cache reserved for estimated 121 bars

KJ 0 08:47:07 History #IBM,Monthly: history begins from 2007.06.01 00:00

KR 0 08:47:07 Tester #IBM,Monthly (InstaForex-Server): every tick generating

NL 0 08:47:07 Tester #IBM,Monthly: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00 started with inputs:

PP 0 08:47:07 Tester  time_frame=16408

IO 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnInit start.

FE 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnInit end.

EO 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnTester start.

NR 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnTester end.

OF 0 08:47:07 Tester final balance 10000.00

LH 0 08:47:07 Tester OnTester result 0

ER 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnDeinit start.

RH 0 08:47:07 main (#IBM,MN1) 2013.05.31 00:00:00   OnDeinit end.

NS 0 08:47:07 Tester #IBM,Monthly: 0 ticks (0 bars) generated within 296 ms (total bars in history 71, total time 359 ms)

GR 0 08:47:07 Tester 155 Mb memory used

QE 0 08:47:07 Tester log file "D:\Admin\MetaTrader\Tester\Agent-127.0.0.1-3000\logs\20130531.log" written

LQ 0 08:47:07 Tester tester agent shutdown

MH 0 08:47:27 127.0.0.1 login (build 803)

MO 3 08:47:27 127.0.0.1 MetaTester 5 forced to stop

LO 0 08:47:27 Server MetaTester 5 stopped

RG 0 08:47:57 Startup MetaTester 5 x64 build 803 (19 Apr 2013)

MR 0 08:47:57 Server MetaTester 5 started on 127.0.0.1:3000

MI 2 08:47:57 OpenCL OpenCL not found, install the latest video driver for better performance

PH 0 08:47:57 Startup initialization finished

DG 0 08:47:58 127.0.0.1 login (build 803)

LP 0 08:47:58 Network 38680 bytes of group info loaded

GD 0 08:47:58 Network 1490 bytes of tester parameters loaded

MS 0 08:47:58 Network 708 bytes of input parameters loaded

OD 0 08:47:58 Network 2936 bytes of symbols list loaded

QP 0 08:47:58 Tester expert file added: Experts\Test\main.ex5. 8141 bytes loaded

MI 0 08:47:58 Tester initial deposit 10000.00 USD, leverage 1:100

QP 0 08:47:58 Tester successfully initialized

IH 0 08:47:58 Network 21 Kb of total initialization data received

GQ 0 08:47:58 Tester Intel Core i5-2430M  @ 2.40GHz, 4007 MB

LJ 0 08:47:58 Symbols #IBM: symbol to be synchronized

JS 0 08:47:58 Symbols #IBM: symbol synchronized, 3304 bytes of symbol info received

LG 0 08:47:58 History #IBM: load 23 bytes of history data to synchronize

CL 0 08:47:58 History #IBM: history synchronized from 2007.06.12 to 2013.05.30

CH 3 08:47:59 Tester #IBM: start time changed to 2013.05.31 00:00 to provide data at beginning

CJ 0 08:47:59 History #IBM,Monthly: contains 71 bars of beginning data from 2007.06.01 00:00 to 2013.05.01 00:00

CE 0 08:47:59 History #IBM,Monthly: history cache reserved for estimated 121 bars

HO 0 08:47:59 History #IBM,Monthly: history begins from 2007.06.01 00:00

PI 0 08:47:59 Tester #IBM,Monthly (InstaForex-Server): every tick generating

IS 0 08:47:59 Tester #IBM,Monthly: testing of Experts\Test\main.ex5 from 2013.01.01 00:00 to 2013.04.30 00:00 started with inputs:

CO 0 08:47:59 Tester  time_frame=16408

JK 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnInit start.

QN 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnInit end.

FD 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnTester start.

QN 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnTester end.

PK 0 08:47:59 Tester final balance 10000.00

OL 0 08:47:59 Tester OnTester result 0

JN 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnDeinit start.

QS 0 08:47:59 main (#IBM,MN1) 2013.05.31 00:00:00   OnDeinit end.

OG 0 08:47:59 Tester #IBM,Monthly: 0 ticks (0 bars) generated within 188 ms (total bars in history 71, total time 265 ms)

GI 0 08:47:59 Tester 154 Mb memory used

HH 0 08:47:59 Tester log file "D:\Admin\MetaTrader\Tester\Agent-127.0.0.1-3000\logs\20130531.log" written

KE 0 08:47:59 Tester tester agent shutdown

Сможете объяснить выделенное красным? 

 

Для того, чтобы обеспечить 100 баров тестируемого таймфрейма, дата начала тестирования была сдвинута

start time changed to 2013.05.31 00:00 to provide data at beginning

Я подозреваю, что данных дальше просто нету. Поэтому OnTick ни разу не был вызван. OnTimer, просто не успел быть вызванным, так как данные кончились, не начинаясь

 
stringo:

Для того, чтобы обеспечить 100 баров тестируемого таймфрейма, дата начала тестирования была сдвинута

Я подозреваю, что данных дальше просто нету. Поэтому OnTick ни разу не был вызван. OnTimer, просто не успел быть вызванным, так как данные кончились, не начинаясь

Перечитайте мой первый пост. При выборе таймфрейма Daily, Weekly - данные есть, а на Monthly - их нету?
 
Rich:
Перечитайте мой первый пост. При выборе таймфрейма Daily, Weekly - данные есть, а на Monthly - их нету?

Какие данные после 31.05.2013?

Для других таймфреймов у Вас не менялось время начала тестирования. Поэтому данные есть.

 
stringo:

Какие данные после 31.05.2013?

Для других таймфреймов у Вас не менялось время начала тестирования. Поэтому данные есть.

Я сейчас поставил время начала тестирования на 01.01.2013 г., а окончания тестирования на 30.04.2013 г.

Без изменений. На дневках и недельках есть события OnTick() и OnTimer(), на месячных - нет. Не генерятся эти события при выборе таймфрейма месяц! И да, даже указав время окончания 30.04.2013 г., тестере зачем то сдвигает время начала.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов - Документация по MQL5
 

Без разницы, какую начальную дату Вы поставите. У вас нет 100 месячных баров от начала Ваших данных и поэтому тестирования не будет. 100 месячных баров - это 8 лет

start time changed to 2013.05.31 00:00 to provide data at beginning

 
stringo:

 100 месячных баров - это 8 лет

И 4 месяца :) 

Причина обращения: