Asesores Expertos: ZigZag EA - página 6

 

Por supuesto.

No se muestra en absoluto en los Expertos.

Cuando lo abro en el editor y lo recompilo, me aparece el siguiente error:


'INIT_FAILED' - expresión no booleana ZigZag EA.mq5 427 20

INIT_FAILED' - expresión no booleana ZigZag EA.mq5 433 17

 
Satbieter #:

Sí, claro.

Ni siquiera aparece en los Expertos.

Cuando lo abro en el editor y lo recompilo, obtengo el siguiente error:


'INIT_FAILED' - expresión no booleana ZigZag EA.mq5 427 20

INIT_FAILED' - expresión no booleana ZigZag EA.mq5 433 17

OnInit finaliza con un error (INIT_PARAMETERS_INCORRECT, línea 135), por lo que no aparece en el gráfico.

Entonces, ¿qué especificó para:

input double      InpLots           = 0;              // Lotes (o "Lotes">0 y "Riesgo"==0 o "Lotes"==0 y "Riesgo">0)
input double      Risk              = 5;              // Riesgo (o "Lotes">0 y "Riesgo"==0 o "Lotes"==0 y "Riesgo">0)
 
 

Ahora funciona .

Perfecto.

 

Estimado Vladimir,

agradable conocer este EA. ¿Podría agregar 2 más indicadores ZigZag? regla de entrada y salida: entrada 2 zigzag se reúnen en 1 precio, salida 2 zigzag se reúnen en 1 precio. hacer lo mismo con 3 zigzag. Usted puede hacer que las opciones, debe utilizar esta entrada / salida o no.

gracias por la confirmacion.

 
No he podido encontrar la versión 1.006. ¿Ayuda, por favor?
 
necesidad de mejorar, añadir un fractal para salvar de noticias, añadir parada y tomar en pips en lugar de fibo, y añadir la inversión, y por lo que el búho es excelente, usted puede elegir la configuración rentable, y añadir un límite de órdenes de cobertura.
 
¡¡¡¡¡¡¡gran asesor !!!!!!!
 
Buenas, saludos gracias por tus aportaciones, sòlo un comentario el robot tiene dos errores de compilaciòn podras decir como se corrigen, es de retorno 
 
YANETT PIRELA #:
Buenas, saludos gracias por tus aportaciones, sòlo un comentario el robot tiene dos errores de compilaciòn podras decir como se corrigen, es de retorno 

El error está en esta función:

//+------------------------------------------------------------------+
//| Lots or risk in percent for a deal from a free margin            |
//+------------------------------------------------------------------+
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);
  }

Para que funcione debes cambiar return (INIT_FAILED); por return false;

Supongo que en alguna versión anterior funcionaría, pero ahora no es una expresión booleana