Советники: ZigZag EA - страница 6

 

Конечно.

Он вообще не отображается в Экспертах.

Когда я открываю его в редакторе и перекомпилирую, то получаю следующую ошибку:


'INIT_FAILED' - expression not boolean ZigZag EA.mq5 427 20

'INIT_FAILED' - expression not boolean ZigZag EA.mq5 433 17

 
Satbieter #:

Конечно.

Он даже не отображается в Экспертах.

Когда я открываю его в редакторе и перекомпилирую, то получаю следующую ошибку:


'INIT_FAILED' - expression not boolean ZigZag EA.mq5 427 20

'INIT_FAILED' - expression not boolean ZigZag EA.mq5 433 17

OnInit завершается с ошибкой (INIT_PARAMETERS_INCORRECT, строка 135) - поэтому он не появляется на графике.

Итак, что вы указали для:

input double      InpLots           = 0;              // Лоты (или "Лоты">0 и "Риск"==0 или "Лоты"==0 и "Риск">0)
input double      Risk              = 5;              // Риск (или "Лоты">0 и "Риск"==0 или "Лоты"==0 и "Риск">0)
 

Используйте версию 1.006

 

Теперь он работает.

Отлично.

 

Уважаемый Владимир,

приятно познакомиться с этим советником. Не могли бы вы добавить еще 2 индикатора ZigZag? Правило входа и выхода: вход 2 зигзага встречаются в 1 цене, выход 2 зигзага встречаются в 1 цене. то же самое проделать с 3 зигзагом. Можно сделать варианты, использовать этот вход/выход или нет.

Спасибо за дальнейшее подтверждение.

 
Я не смог найти версию 1.006. помогите, пожалуйста?
 
нужно улучшить, добавить фрактал спасет от новостей, добавить стоп и тейк по пипсах а не по фибо, и добавить реверс, а так сов отличный можно подобрать настройки профитные, и добавить лимит ордеров для хеджа
 
отличный советник !!!!!!! 
 
Добрый день, спасибо за ваш вклад, просто комментарий, робот имеет две ошибки компиляции, не могли бы вы сказать, как их исправить, это возвращение
 
YANETT PIRELA ошибки компиляции не могли бы вы сказать, как исправить, является возвращение

Ошибка в этой функции:

//+------------------------------------------------------------------+
//| Лоты или риск в процентах для сделки со свободной маржой |
//+------------------------------------------------------------------+
bool LotsOrRisk(const double lots,const double risk,const int digits_adjust)
  {
   if(lots<0.0 && risk<0.0)
     {
      Print(__FUNCTION__,", ERROR: Parameter (\"lots\" or \"risk\") can't be less than zero");
      return(false);
     }
   if(lots==0.0 && risk==0.0)
     {
      Print(__FUNCTION__,", ERROR: Trade is impossible: You have set \"lots\" == 0.0 and \"risk\" == 0.0");
      return(false);
     }
   if(lots>0.0 && risk>0.0)
     {
      Print(__FUNCTION__,", ERROR: Trade is impossible: You have set \"lots\" > 0.0 and \"risk\" > 0.0");
      return(false);
     }
   if(lots>0.0)
     {
      string err_text="";
      if(!CheckVolumeValue(lots,err_text))
        {
         Print(__FUNCTION__,", ERROR: ",err_text);
         return(false);
        }
     }
   else if(risk>0.0)
     {
      if(m_money!=NULL)
         delete m_money;
      m_money=new CMoneyFixedMargin;
      if(m_money!=NULL)
        {
         if(!m_money.Init(GetPointer(m_symbol),Period(),m_symbol.Point()*digits_adjust))
            return(INIT_FAILED);
         m_money.Percent(risk);
        }
      else
        {
         Print(__FUNCTION__,", ERROR: Object CMoneyFixedMargin is NULL");
         return(INIT_FAILED);
        }
     }
//---
   return(true);
  }

Чтобы она работала, вы должны заменить return (INIT_FAILED); на return false;

Думаю, в предыдущей версии это бы сработало, но сейчас это не булево выражение.