Ошибки, баги, вопросы - страница 130

 

Кто-нибудь подскажет что за предупреждение при компиляции?

truncation of constant value    me-mm-cls-v003.mqh      64      45
Вообще, где найти описание ошибок и предупреждений при компиляции?
 
pronych:

Вообще, где найти описание ошибок и предупреждений при компиляции

См. Справочник MQL5 / Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Предупреждения компилятора

И соседние разделы. 

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

Помогите разобраться с удивительной загадкой :)

На демо все нормально работает, но в тестере виснет, не начиная тестироваться. Всмысле тестер показывает 1.1% и больше ничего не происходит, нажимаешь кнопку отмена, соответственно тестирование прекращается.

В основном советнике параметров много, пока догадался из-за чего это...

Вобщем все дело вот в этом кусочке кода. Здесь определяется первая точка параболика из текущей серии.

if(SLпоПервойТочкеПараболика==true)
   for(i=0;;i=i+1)
      {
      if(iLow(PERIOD_CURRENT,i+1,1)<Параболик(PERIOD_CURRENT,0.02,0.2,i+1))
         break;
      }

Если этот код задействован, то тестер виснет, если  SLпоПервойТочкеПараболика=false, то все нормально. Реально же все точно и без ошибок работает в любом случае

Код в виде готового советника во вложении

Файлы:
Otladka.mq5  8 kb
 
Dmitriy2:

Код в виде готового советника во вложении

Вы забыли советника приложить.
 
alexvd:
Вы забыли советника приложить.

Да вот что-то не получается прикрепить файл, уже раз 5 попробовал...

 

ps вставил ввиде кода 

 
Dmitriy2:

Да вот что-то не получается прикрепить файл, уже раз 5 попробовал...

 

ps вставил ввиде кода 

Только что проверил - код вставился. Какой у Вас браузер, какое имя файла?
 

Rosh:
Только что проверил - код вставился. Какой у Вас браузер, какое имя файла?

код вставляется, не прикрепляется файл 

IE8, ХР хоум

имя файла и по русски пробовал и по английски Отладка.mq5   Otladka.mq5

 

я же правильно делаю? щелкаю "прикрепить файл", обзор, выбираю файл, и нажимаю "обновить" 

 
Dmitriy2: 

я же правильно делаю? щелкаю "прикрепить файл", обзор, выбираю файл, и нажимаю "обновить" 

По шагам все правильно, ситуацию воспроизвели.

Исправим в самое ближайшее время.

 
alexvd:

По шагам все правильно, ситуацию воспроизвели.

Исправим в самое ближайшее время.

 

ага, спасибо, но код если что есть, мне бы в ближайшее время узнать почему тестер виснет... :) 

 
Dmitriy2:

 

ага, спасибо, но код если что есть, мне бы в ближайшее время узнать почему тестер виснет... :) 


Виснет он из-за бесконечного цикла.

У вас есть единственный выход из цикла - по break. Но брейк у вас возникает при выполнении определенного условия. Один из компонентов

Параболик(PERIOD_CURRENT,0.02,0.2,i+1)

Внутри функции вы каждый раз ЗАНОВО получаете хэндл индикатора и без проверки на готовность данных копируете их.

Предложение.

1. Вынесите переменную хэндла на глобальный уровень.

2. Получайте хэндл индикатора в OnInit (у вас все равно параметры параболика не меняются).

3. Перед тем как скопировать данные из индикаторного буфера проверяйте их готовность (расчитанность) - функция BarsCalculated(Parabolic) вам в помощь.

4. Организуйте выход из цикла, если п. 3 не выполняется.

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