Asesores Expertos: 5_8 MACross - página 4

 
Shara1:

Es decir, necesito después de esta línea - int OnInit()

Inserte este -

Será así-

Gracias.

No es exactamente así. Necesita comparar los parámetros "mafastperiod" y "maslowperiod".

 
Vladimir Karputov:

No exactamente. Tiene que comparar los parámetros "mafastperiod" y "maslowperiod".

¿Así que sólo tengo que añadir una línea? Así:

//+------------------------------------------------------------------+

//| Función de inicialización experta|

//+------------------------------------------------------------------+

int OnInit()

{

if(Inpmaslowperiod >=Inpmafastperiod)

{

 

OnInit() en la que no se permiten casos en los que "fast" sea mayor o igual que "slow":

//+------------------------------------------------------------------+
//| Función de inicialización experta|
//+------------------------------------------------------------------+
int OnInit()
  {
   if(mafastperiod>=maslowperiod)
     {
      Print("\"MA fast: averaging period\" can not be greater and equal to \"MA slow: averaging period\"");
      return(INIT_PARAMETERS_INCORRECT);
     }
   SetMarginMode();
 
Vladimir Karputov:

OnInit() en la que no se permiten casos en los que "fast" sea mayor o igual que "slow":

Gracias, parece que funciona, el código compilado.


//+------------------------------------------------------------------+
//| Función de inicialización experta|
//+------------------------------------------------------------------+
int OnInit()
  {
   if(mafastperiod>=maslowperiod)
     {
      Print("\"MA fast: averaging period\" can not be greater and equal to \"MA slow: averaging period\"");
      return(INIT_PARAMETERS_INCORRECT);
     }
   SetMarginMode();
   SetMarginMode();

Pero estas dos líneas son las mismas, ¿es así como debe ser?

 
Shara1:

Gracias parece que funciona, el código compilado.


Pero estas dos líneas son iguales, ¿deberían serlo?

No. Has copiado una línea de más. Quita una línea.

 
Vladimir Karputov:

No. Copiaste la línea extra. Quita una línea.

Muchas gracias. ¿Es posible añadir esto a cualquier EA con dos muves?

 
Shara1:

Muchas gracias. Entonces, ¿se puede añadir a cualquier EA con dos muves?

Sí, lo principal es escribir correctamente los nombres de las variables.

 
Vladimir tester escribe un error. Por favor, vea lo que es mi error.
Archivos adjuntos:
20180221.log  11 kb
 
Shara1:
Vladimir tester escribe un error. Por favor, vea cuál es mi error.

Todo es normal.

"Parámetros de entrada incorrectos" es sólo el código que se dispara

   if(mafastperiod>=maslowperiod)
     {
      Print("\"MA fast: averaging period\" can not be greater and equal to \"MA slow: averaging period\"");
      return(INIT_PARAMETERS_INCORRECT);
     }

en el proceso de optimización genética

 
Vladimir Karputov:

No pasa nada.

"Parámetros de entrada incorrectos" es sólo un disparador de código.

durante el proceso de optimización genética.

Gracias, pero en la ventana de optimización, algunas líneas son de color rojo debido a esto ?