Подскажите пожалуйста!!!

 

Нашла нитерестый советник.

На тестере дает не плозие результаты.

Когда ставлю на демо выдает ошибку: zero divide.

Не могу найти где происзодит деление на 0.

Подскажите кто модет.

Файлы:
 
И еще к нему идут 4 индикатора
Файлы:
 

Тоже аналогичный случай. Сваял себе советника.

В мт4 одного ДЦ работает норм.

А в мт4 Альпари почему то выдает такую же ошибку. Не пойму в чем дело.

Нашел в поиске темы - 'ошибка "zero divide"',

https://www.mql4.com/ru/search/zero%20divide,

но ясности так и нет ...

 
liza писал(а) >>

Подскажите кто модет.

Решение тут одно и почти не зависящее от квалификации, вполне можете сделать сами, вникать в чужой код долго, а потому просто перед каждой операцией деления проверка на равно, и вывод соответствующего в меру уникального принта. Найдете где 0, будет понятно как исправить. А вообще у Вас не самая свежая версия советника, может в более свежих этой ошибки уже и нет?

 
Figar0 >>:

Решение тут одно и почти не зависящее от квалификации, вполне можете сделать сами, вникать в чужой код долго, а потому просто перед каждой операцией деления проверка на равно, и вывод соответствующего в меру уникального принта. Найдете где 0, будет понятно как исправить. А вообще у Вас не самая свежая версия советника, может в более свежих этой ошибки уже и нет?

Спасибо за совет, но я это уже делала, и все равно ничего не нашла.

 
liza писал(а) >>

Спасибо за совет, но я это уже делала, и все равно ничего не нашла.

Да у Вас в самом начале объявлена переменная mypoint и приравнена к нулю, а потом все на нее делите.

 
Roger >>:

Да у Вас в самом начале объявлена переменная mypoint и приравнена к нулю, а потом все на нее делите.

Посмотрите что с ней дальше происходит.

 
liza писал(а) >>

Посмотрите что с ней дальше происходит.

Это не имеет значения. Важно только то, что перед делением нет проверки на неравенство нулю.

И, кстати, MarketInfo(, MODE_POINT|MODE_DIGITS) от некоторых торговых серверов запросто может вернуть ноль.

 
А вот за это большое спасибо!!!
 

Здравствуйте, уважаемые эксперты.

 Недавно заинтересовался автоматическими ТС и решил написать советник. Оказалось не так просто. Я даже не могу понять почему эта запись  выдаёт 16 ошибок. И все по знакам,;><() и т п.

Понятно, что в коде нет никаких команд к исполнению сделок.

Для начала я просто хотел определить два максимума индикатора и присвоить им значения, чтобы в последующем определить дивергенцию и создать первый критерий для открытия позиции. Но вот не пойму, почему выходит столько ошибок при компиляции. 

Прошу меня не обзывать нехорошими словами, я только пару дней назад начал учиться. И прошу Вас объяснить мне, что там не так. В учебнике ничего не нашёл про это. 



//+------------------------------------------------------------------+
//|                                                        Дивер.mq4 |
//|                                              FOReignEXchange2008 |
//|                                    http://www.forexsignal.sk6.ru |
//+------------------------------------------------------------------+
#property copyright "FOReignEXchange2008"
#property link      "http://www.forexsignal.sk6.ru"



double AOmax1,
       AOmax2;

int start()
  {
  
  
  if (iAO>0.1, iAO>AOmax1)
     AOmax1=iAO;
     return;
  
  if (iAO<0.1, AOmax1>0.7)
      AOmax2=iAO;    
  else 
      AOmax2=0;
      return;
   
  if (iAO>AOmax2)
      AOmax2=iAO;
      return;   
      
  
  }
 //+------------------------------------------------------------------+
 
FOReignEXchange писал(а) >>

Здравствуйте, уважаемые эксперты.

Недавно заинтересовался автоматическими ТС и решил написать советник. Оказалось не так просто. Я даже не могу понять почему эта запись выдаёт 16 ошибок. И все по знакам,;><() и т п.

Понятно, что в коде нет никаких команд к исполнению сделок.

Для начала я просто хотел определить два максимума индикатора и присвоить им значения, чтобы в последующем определить дивергенцию и создать первый критерий для открытия позиции. Но вот не пойму, почему выходит столько ошибок при компиляции.

Прошу меня не обзывать нехорошими словами, я только пару дней назад начал учиться. И прошу Вас объяснить мне, что там не так. В учебнике ничего не нашёл про это.

Прочитайте как использется оператор if, все вопросы отпадут.

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