Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1027

 
Tango_X:

В советнике, в блоке OnInit() , хочу получить хендлы стандартного индикатора  MACD с трех таймов - М1 М2 М3.  На график вещаю - работает, но в тестере не работает, при чем терминал виснит наглухо! получается я хочу получить не существующие данные? Подскажите как это побороть?

ENUM_TIMEFRAMES Periods[NUMBER_OF_PERIODS]={PERIOD_M1,PERIOD_M2,PERIOD_M3};
ENUM_TIMEFRAMES Periods[]={PERIOD_M1,PERIOD_M2,PERIOD_M3};

Может так надо?

if(handles[p]==INVALID_HANDLE)  Print("Не удалось получить хэндл индикатора для символа !");

if(handles[p]==INVALID_HANDLE)
{
   Print("Не удалось получить хэндл индикатора для символа !");
   retern(INIT_FAILD);
}

И так?

 
Сергей Таболин:

Может так надо?

а какая разница? в любом случае и так тоже не работает)

 
Tango_X:

а какая разница? в любом случае и так тоже не работает)

Почему кастомный MACD берёте? Со стандартным пробовали?
 
Artyom Trishkin:
Почему кастомный MACD берёте? Со стандартным пробовали?

Нужен именно кастомный, потому как использую именно его...MACD взят просто для примера

 
Tango_X:

Нужен именно кастомный, потому как использую именно его...MACD взят просто для примера

Хендлы создаются? Их значения проверяли?
 
Tango_X:

Нужен именно кастомный, потому как использую именно его...MACD взят просто для примера

А параметры для MACD передавать не надо?

 
Artyom Trishkin:
Хендлы создаются? Их значения проверяли?

Когда советника вешаю на график - хендлы создаются .... когда запускаю этого советника в тестере - все виснит

 
Сергей Таболин:

А параметры для MACD передавать не надо?

параметры передаются по умолчанию... они не важны в данном случае.

 
Сергей Таболин:

А параметры для MACD передавать не надо?

Если использовать значения по умолчанию, то параметры передавать не обязательно.
 
Tango_X:

Когда советника вешаю на график - хендлы создаются .... когда запускаю этого советника в тестере - все виснит

Проверить не могу - пишу с мобильного. Попробуйте начать с сознания лишь одного. Без циклов и массивов таймфреймов. Просто напрямую создайте один хендл. Если нормально - добавьте второй, третий...
Когда всё будет работать, начните создавать в цикле с массовом. Тоже по одному. Так быстрее поймёте причину или место зависания.
Причина обращения: