Discusión sobre el artículo "¡Cree su propio robot de trading en 6 pasos!" - página 4

 

Muy buen artículo. Gracias por la ayuda.

 

Debo haber buscado mal, por favor indícame la dirección de la descripción de CCustom

No entiendo por qué, después de crear un indicador personalizado, es necesario llamar a la comprobación (¿o es una personalización del indicador?):

//| Establecer el número de buffers del indicador. |

//--- número de buffers
   if(!m_slow_ma.NumBuffers(1)) return(false);
//--- hemos llegado a este punto, significa que la función se ha ejecutado correctamente - return true
   
 
bivmail:

Debo de haber buscado mal, por favor, indíqueme la dirección de la descripción de CCustom.

Tiene un error ortográfico. Y justo en el artículo hay una referencia a CiCustom:

Por supuesto, puedes crear tu propia clase de indicador, que será descendiente de CIndicator e implementará todos los métodos necesarios para su uso con el MQL5 Wizard. Pero en este caso, queremos mostrarle como utilizar cualquier indicador personalizado en el módulo de señales de trading utilizando CiCustom.

 

buen artículo

 

no puedo ganar... Ayuda

Creo un señalador a partir del ejemplo en el mismo catálogo, genero un Asesor Experto, todo funciona.

Genero un Asesor Experto basado en mi señalador, muestra una ventana con descripción y parámetros de entrada, hago clic en Aceptar, falla:

2012.03.26 20:45:16 art367exp.ex5 Archivo EX5 no válido

Ya he dado nombres diferentes, creado un nuevo archivo de señal, copiado el texto allí, ambos archivos compilan normalmente, pero el gráfico muestra Archivo EX5 no válido.

Comparo visualmente, todo parece estar en su lugar. ¿Dónde está el error? Construir 572


	          
Archivos adjuntos:
 
bivmail:

no puedo ganar... Ayuda

Creo un señalador a partir del ejemplo en el mismo catálogo, genero un Asesor Experto, todo funciona.

Genero un Asesor Experto basado en mi señalador, muestra una ventana con descripción y parámetros de entrada, hago clic en Aceptar, falla:

2012.03.26 20:45:16 art367exp.ex5 Archivo EX5 no válido

Ya he dado nombres diferentes, creado un nuevo archivo de señal, copiado el texto allí, ambos archivos compilan normalmente, pero el gráfico muestra Archivo EX5 no válido.

Comparo visualmente, todo parece estar en su lugar. ¿Dónde está el error? Build 572

Lo investigaremos (ni siquiera OnInit() aparece).
 
uncleVic:
Lo miraremos (ni siquiera OnInit() viene).
Intenta actualizar el terminal (la build actual es de hace más de 600)
 
uncleVic:
Trate de actualizar el terminal (build actual es más de 600 hace mucho tiempo).

He actualizado a 619 desde el 23 de marzo, alfaforex no ofrece ninguna otra.

El resultado es el mismo. Intenté poner el texto del señalador directamente en el Asesor Experto (en lugar de la línea include), compila normalmente, pero no funciona con el mismo error....

¿Cómo puedo saber el nombre del fichero con el que tropieza?

He intentado poner la primera línea printf(__FUNCTION__+": initializing expert") en onInit; no hay resultado, lo que, de hecho, confirma lo anterior....

se escribe en el log:

2012.03.27 14:59:39 Expertos experto art367biv (EURUSD,H1) cargado con éxito

2012.03.27 14:59:41 Expertos inicialización de art367biv (EURUSD,H1) falló

2012.03.27 14:59:41 Expertos expertos art367biv (EURUSD,H1) eliminado

Aparentemente, tendremos que línea por línea en orden similar al ejemplo.

Документация по MQL5: Стандартные константы, перечисления и структуры / Именованные константы / Предопределенные макроподстановки
Документация по MQL5: Стандартные константы, перечисления и структуры / Именованные константы / Предопределенные макроподстановки
  • www.mql5.com
Стандартные константы, перечисления и структуры / Именованные константы / Предопределенные макроподстановки - Документация по MQL5
 
bivmail:

He actualizado a 619 desde el 23 de marzo, alfaforex no ofrece ningún otro.

El resultado es el mismo. He probado a poner el texto del señalador directamente en el Asesor Experto (en lugar de la línea include), compila bien, pero no funciona con el mismo error.

¿Cómo puedo averiguar el nombre del fichero con el que tropieza?

He intentado poner la primera línea printf(__FUNCTION__+": initializing expert") en onInit; no hay resultado, lo que, de hecho, confirma lo anterior....

se escribe en el log:

2012.03.27 14:59:39 Expertos experto art367biv (EURUSD,H1) cargado con éxito

2012.03.27 14:59:41 Expertos inicialización de art367biv (EURUSD,H1) falló

2012.03.27 14:59:41 Expertos expertos art367biv (EURUSD,H1) eliminado

Aparentemente, tendremos que línea por línea en orden similar al ejemplo.


Gracias. Gracias a tu programación, hemos encontrado un error en el compilador.

Usted tiene:

   bool GetFastMA(const int index) const{ return(m_fast_ma.GetData(0,index));}
   bool GetSlowMA(const int index) const{ return(m_slow_ma.GetData(0,index));}

Necesitas:

   double GetFastMA(const int index) const{ return(m_fast_ma.GetData(0,index));}
   double GetSlowMA(const int index) const{ return(m_slow_ma.GetData(0,index));}
 

Otro error (tuyo):

//--- inicialización del objeto 
   if(!m_fast_ma m_slow_ma.Create(m_symbol.Name(),m_period,IND_CUSTOM,4,parameters))
     {
      printf(__FUNCTION__+": error de inicialización de objeto MA lento");
      return(false);
     }
//--- número de buffers
   if(!m_slow_ma.NumBuffers(1)) return(false);

Veré cómo evitarlo en la Biblioteca.