Discusión sobre el artículo "Desarrollo de asesores expertos autooptimizables en MQL5" - página 2

 

Gracias por su valioso compromiso, especialmente por la oportunidad de abrir nuestras mentes a nuevos horizontes, que creo que es lo más importante.

Tengo preguntas prácticas y tal vez ingenuo

  • ¿cómo poner un Número Mágico y un Comentario para seguir el EA?
  • ¿cómo modificar el LotSize (mejor aún, la forma de aplicar una gestión del dinero)?

gracias

que se diviertan

 
Gamuchirai Zororo Ndawana #:
Me encanta tu enfoque proactivo. Tienes razón, hay varias excepciones que pueden surgir al intentar obtener datos históricos. Por ejemplo, si se intenta cambiar de marco temporal en medio de una sesión de negociación, puede volver a observarse el problema "-nan".


Había un equilibrio inherente entre mantener el mensaje fácil de seguir y solucionar todos los errores que observé. Si hubiera optado por esto último, el código habría sido necesariamente más complejo y no tan fácil de seguir como lo es ahora. Así que decidí mantenerlo fácil de seguir, con la intención de que pudieras ampliarlo rápidamente.

Tu solución parece muy prometedora, ¿qué tal está resultando?

Hola de nuevo he tenido que crear mi cuenta de nuevo para iniciar sesión. De todos modos,
He intentado ejecutar el LinearRegressionEA y me parece un concepto interesante. Yo comercio principalmente CFDs de ORO y he establecido un gusto por el indicador WPR en este ejemplo.
A veces obtengo precios de predicción incorrectos que están muy fuera de rango con un factor 100, pero a veces ¡correcto!
Si alguien resuelve este problema se lo agradecería mucho. Depurar código de regresión lineal no es mi especialidad.

No he visto si has escrito algo sobre el Periodo preferido para operar, yo lo tengo configurado en 30 Minutos.

En ese escenario,
si todavía no hay una operación
y el EA ejecuta su función'analyse_indicators()',
esto se hace una vez por barra, así que en mi caso una vez cada 30 minutos.
Lo que significa que si los indicadores no se alinean para una decisión comercial, esto no se intenta de nuevo hasta la próxima barra, en mi caso 30 minutos más tarde.
OMI esto es demasiado tiempo para establecer la operación inicial,
así que agregué una tarea de Temporizador que ejecuta el paso de análisis cada 10 segundos hasta que los indicadores estén a favor de una operación;
establezco la orden de Compra o Venta y luego regreso al procesamiento regular por barra de la función manage_position() .
 
Giulio Braga gestión del dinero)?

gracias

que se diviertan

Hola Giulio.

Para configurar un número mágico y un comentario personalizado, simplemente extenderías el código llamando a la función apropiada en su lugar.

Creo que PositionOpen puede ser lo que estás buscando, puedes consultar la documentación con este enlace.

Si eso no satisface lo que necesitas, prueba este tutorial de YouTube con este enlace.

Si ninguno de estos recursos es capaz de ayudarte, entonces tengo un canal donde publico más artículos útiles como estos. Puedes encontrarlo usando este enlace.

Documentation on MQL5: Standard Library / Trade Classes / CTrade / PositionOpen
Documentation on MQL5: Standard Library / Trade Classes / CTrade / PositionOpen
  • www.mql5.com
Opens a position with the specified parameters. Parameters symbol [in]  Name of trade instrument, by which it is intended to open position...
 
Gunnar Forsgren #:
Hola de nuevo he tenido que crear mi cuenta de nuevo para iniciar sesión. De todos modos,
He intentado ejecutar el LinearRegressionEA y me parece un concepto interesante. Yo comercio sobre todo CFDs de ORO y he establecido un gusto por el indicador WPR en este ejemplo.
A veces tengo precios de predicción incorrectos que están fuera de rango con un factor 100, pero a veces ¡correcto!
Si alguien resuelve ese problema se lo agradecería mucho. Depurar código de regresión lineal no es mi especialidad.

No he visto si has escrito algo sobre el Periodo preferido para operar, yo lo tengo configurado en 30 Minutos.

En ese escenario,
si todavía no hay una operación
y el EA ejecuta su función'analyse_indicators()',
esto se hace una vez por barra, así que en mi caso una vez cada 30 minutos.
Lo que significa que si los indicadores no se alinean para una decisión comercial, esto no se intenta de nuevo hasta la próxima barra, en mi caso 30 minutos más tarde.
OMI esto es demasiado tiempo para establecer la operación inicial,
así que agregué una tarea de temporizador que ejecuta el paso de análisis cada 10 segundos hasta que los indicadores estén a favor de una operación;
establezco la orden de compra o venta y luego vuelvo al procesamiento regular por barra de la función manage_position() .
Me alegro de tener noticias tuyas, Gunnar.

Lamento saber que has tenido problemas para iniciar sesión, espero que ya lo hayas solucionado.

Tienes razón, las predicciones de nuestro modelo actual pueden estar a veces fuera del rango aceptable por un amplio margen, pero no hay ningún error en el código.

Te explicaré por qué podemos esperar que esto ocurra.

Estamos utilizando una implementación simple del algoritmo Gradient Descent para optimizar los coeficientes de nuestro modelo. Desafortunadamente, el Descenso Gradiente puede ser sensible a las posiciones iniciales de nuestros coeficientes. Para remediarlo, se desarrolló el algoritmo de Descenso Gradiente Estocástico (SGD). SGD realiza optimizaciones cambiando los coeficientes iniciales cada vez para maximizar la probabilidad de encontrar coeficientes óptimos. Para simplificar, mantuvimos fijos los coeficientes, lo que puede provocar que el modelo se atasque en estados sombríos. Este video de youtube puede ser útil, utilice este enlace.

Sí tienes razón, intencionalmente pedí que los cálculos se realizaran en cada vela. Esto se hizo para acelerar las pruebas retrospectivas, para desactivar esta función sólo tiene que eliminar la condición de verificación "if(timestamp != current_time)".

Además, hay maneras en que podemos construir nuestro modelo de tal manera que se personaliza a los datos que tenemos a la mano, usted puede encontrar esa información utilizando este enlace.
134 - What are Optimizers in deep learning? (Keras & TensorFlow)
134 - What are Optimizers in deep learning? (Keras & TensorFlow)
  • 2020.06.18
  • www.youtube.com
microscopy, python, image processing
 

Hola, ¡es increíble! Gracias.

Me salen estas líneas:

2024.06.08 07:00:42.212 Core 01 2024.05.01 00:00:00   Validation mae: 
2024.06.08 07:00:42.212 Core 01 2024.05.01 00:00:00   [inf,0.006448762386408615,0.006380585312229991,0.006373808727022462,0.006373131478053022,0.006373063757231861,0.006373056987294832,0.006373056310301126,0.006373056241302974,0.00637305623338131,0.00637305623026851,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.0

¿Cómo puedo solucionar esto?

¿alguien tiene también este problema?

 
Javier Santiago Gaston De Iriarte Cabrera #:

Hola, ¡es increíble! Gracias.

Me salen estas líneas:

¿Cómo puedo arreglar esto?

¿alguien tiene también este problema?

Hola Javier, ¿podrías subir más de la salida de la terminal?

Porque lo que compartiste parece normal, yo esperaría una salida como esa.

Sin embargo, el problema que estoy notando con tu salida es el "0.0" al final. Obtener un error de 0.0 implica que el modelo es perfecto, lo cual no es realista.


 

Hola Gamuchirai,

(espero que sea la forma aceptada de decir hola).

He estado leyendo sus artículos con gran interés, ya que estoy muy interesado en identificar oportunidades para mejorar mi código muy ingenuo. Apenas estoy haciendo la transición de MQL4 a MQL5 y no tengo experiencia en matemáticas.

En la ejecución de su código descargado en backtest me doy cuenta de que las únicas operaciones tomadas son todas las posiciones de venta - ver el adjunto.

El comentario que muestra el precio de pronóstico siempre aparece como 0.0000nnnnnnnn que parece ser incorrecta.

Como principiante soy incapaz de identificar dónde puede estar el error aparente, así que espero que pueda responder con una solución o corrección, ya que espero implementar el análisis de regresión en mis futuros EA.

Gracias por su consideración y su forma encantadora de enseñar con el ejemplo.


Saludos cordiales,
Bryan

Archivos adjuntos:
Regression.JPG  213 kb
 
Giulio Braga la gestión del dinero )?

¿Cómo modifico el LotSize (o mejor aún, cómo implemento la gestión monetaria)?

Que tenga un buen día

Hombre no se me había ocurrido usar los comentarios para seguir posiciones, pero es un algoritmo tan sencillo que no puede fallar, me gusta, gracias por la sugerencia. De lo contrario, los números mágicos están bien cubiertos en la API MQL5, sólo tiene que pulsar F1 en su IDE y luego buscar, o buscar en línea o en foros, está bien cubierto.

Dinero De lo contrario, los números mágicos están bien cubiertos en la API MQL5, sólo tiene que pulsar F1 en su IDE y luego buscar, o buscar en línea o en foros, está bien cubierto. la gestión del dinero, ahora se ha cubierto en nuestra serie de artículos.

 
Javier Santiago Gaston De Iriarte Cabrera # :

Hola, ¡qué bien!

Vi estas líneas.

¿Cómo resolver este problema?

¿Alguien ha encontrado este problema también?

Hola Javier, ya sabes que estamos en un viaje de aprendizaje permanente en nuestra comunidad, por lo que he aprendido en el tiempo que ha pasado desde que escribí este artículo diría que la implementación no es estable, revisaré este artículo y lo actualizaré con soluciones más estables numéricamente. diría que la implementación no es estable, revisaré este artículo y lo actualizaré con soluciones numéricamente más estables. Afortunadamente para nosotros, existen soluciones compactas que podrían resolver fácilmente en una línea, lo que hice en todo este artículo, si tan sólo supiera en ese entonces, lo que sé ahora.

 
Bryan John Aldridge Como principiante no puedo averiguar dónde está el error obvio, así que espero que usted me puede dar una solución o corrección como espero implementar el análisis de regresión en un futuro EA .

Gracias por su consideración y palabras bonitas.


Saludos cordiales, Bryan

Hola Bryan, tu preocupación es material. Ten por seguro que no es culpa tuya, el algoritmo que implementé en este artículo es un buen comienzo, sin embargo no es estable. Actualizaré este artículo con soluciones estables, que son notablemente más fáciles de implementar.