MarkerInfo function not defined - страница 2

 
SURANIKI:

Этого я по F1 не нашёл, спасибо. Вроде бы получил EX5, но отсутствуют при запуске Советника ярлыки "Входные параметры" в окне параметров.


Если у вас есть input-параметры, то подозреваю, что вы вписали OnStart() вместо OnTick():


OnStart

Функция OnStart() является обработчиком события Start, которое автоматически генерируется только для запущенных на выполнение скриптов. Должна иметь тип void, параметров не имеет:

void OnStart();

Для функции OnStart() допустимо указывать тип возвращаемого значения int.

Start

Событие Start – это специальное событие для активизации скрипта после его загрузки. Это событие обрабатывается функцией OnStart. Событие Start экспертам и пользовательским индикаторам не посылается.


OnTick

Событие NewTick генерируется только для экспертов при поступлении нового тика по символу, к графику которого прикреплен эксперт. Функцию OnTick() бесполезно определять в пользовательском индикаторе или скрипте, поскольку событие NewTick для них не генерируется.

Событие Tick генерируется только для экспертов, но это не означает, что эксперты обязаны иметь функцию OnTick(), так как для экспертов генерируются не только события NewTick, но и события Timer, BookEvent и ChartEvent. Должна быть объявлена с типом void, параметров не имеет:

void OnTick();


NewTick

Событие NewTick генерируется при поступлении новых котировок и обрабатывается функцией OnTick() у присоединенных советников. Если при поступлении новой котировки выполнялась функция OnTick, запущенная на предыдущей котировке, то пришедшая котировка будет проигнорирована советником, так как соответствующее событие не будет поставлено в очередь событий эксперта.

Все пришедшие во время выполнения программы новые котировки программой игнорируются до тех пор, пока не завершится очередное выполнение функции OnTick(). После этого функция будет запущена только после прихода очередной новой котировки.

Событие NewTick генерируется независимо от того, запрещена или разрешена автоматическая торговля (кнопка "Разрешить/запретить Авто-торговлю"). Запрет автоматической торговли означает только запрет на отправку торговых запросов из эксперта, работа эксперта не прекращается.

Запрет автоматической торговли путем нажатия на указанную кнопку не прерывает текущее выполнение функции OnTick().


 
Artyom Trishkin:

Если у вас есть input-параметры, то подозреваю, что вы вписали OnStart() вместо OnTick():


OnStart() нет, а OnTick() есть, как и положено... :) Но в MT4 входные переменные были как Extern, а в MT5 их надо описывать как Input ?
 

Входные параметры появились, но теперь Журнал выдаёт ошибки:

2018.10.07 11:37:25.081    Core 1    2018.01.30 00:00:00   Stack overflow in 'C:\Program Files\VZV Impex\Tester\Agent-127.0.0.1-3000\MQL5\Experts\Pulsar_1.ex5'
2018.10.07 11:37:25.081    Core 1    OnTick critical error

 
SURANIKI:

Входные параметры появились, но теперь Журнал выдаёт ошибки:

2018.10.07 11:37:25.081    Core 1    2018.01.30 00:00:00   Stack overflow in 'C:\Program Files\VZV Impex\Tester\Agent-127.0.0.1-3000\MQL5\Experts\Pulsar_1.ex5'
2018.10.07 11:37:25.081    Core 1    OnTick critical error

Где-то сделали вызов функции из самой себя.

А вообще, без кода вас скоро пошлют сюда.

 
Artyom Trishkin:

Где-то сделали вызов функции из самой себя.

А вообще, без кода вас скоро пошлют сюда.

Артём, извини за назойливость - задачу видимо взял для себя неподъёмную: в дефицит времени переписать робот на MQL5... Подскажи, а что делать с RefreshRates, нет такой уже функции в MQL5 ?
Причина обращения: