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

 
barudkinarseniy:

Здравствуйте ! Подскажите пожалуйста возможно ли что бы советник добавлял на график объект типа кнопки или тумблера и если можно то как?

 

Справка по объектам: OBJ_BUTTON или OBJ_BITMAP. Там есть примеры.
 
Тестер пишет, непрерывный проигрыш 3, а я вручную насчитал 5, потом еше больше. Из-за чего такое может быть?
 

edutak:
Тестер пишет, непрерывный проигрыш 3, а я вручную насчитал 5, потом еше больше. Из-за чего такое может быть?

 

 

 

без , хотя бы отчета с тестера, не понять

 
Vladislav Andruschenko:

без , хотя бы отчета с тестера, не понять

 
edutak:

лот 0,1

 

Тестер может врать? 

 
edutak:
отчет это StrategyTester report html
 
Vladislav Andruschenko:
отчет это StrategyTester report html
Не могу прикрепить...
 
edutak:
Не могу прикрепить...
Заархивируй.
 
Alexey Viktorov:
Заархивируй.
Вот.
Файлы:
 



При по шаговой проверке индикатора обнаружил дребезг срабатываний в подпрограмме, стоящей за if {} и в котором нет W.  Для пояснения сути вопроса привожу упрощенный код:

//--- input parameters

input int w=10;

//---

   {

  int i;

//---

    int co=0;

  for(i=0;i<=w;i++)if(w==10){co++; Alert(co);}

//--- return value of prev_calculated for next call

   return(rates_total);

  }

Результат (арлеты): 

2016.05.30 00:45:14.064 1 (EURUSD,H1)   11

2016.05.30 01:10:35.972 1 (EURUSD,H1)   10

........... и т.д. до 1.

 2016.05.30 00:45:14.064        1 (EURUSD,H1)   1

Правило:  Если выражение в скобках истинно, то выполняется оператор1.

В коде: оператор1 выполняется ВСЕГДА.

По моему if()должно сработать только один раз, при истинности условия в скобках. А по факту срабатывает при каждой проверке условия и все выражения в {} выполняются на каждом шаге и жуют машинное время.

Вопросы : ПОЧЕМУ переменная CO выросла за цикл от 0 до 11? Почему Alert срабатывает на каждом шаге?

Файлы:
1.ex5  7 kb
1.mq5  2 kb
Причина обращения: