Discusión sobre el artículo "Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXIV): Clase comercial principal - corrección automática de parámetros erróneos" - página 3
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Hola, ¿has encontrado el problema que he mencionado?
Hola Artyom -- trabajando más de cerca con este código, me di cuenta de esta peculiaridad del valor'shift' implementado en EventsHandling() y OnDoEasyEvent() para manejar correctamente los eventos de comercio cuando se ejecuta en el probador ... Entiendo, como señalas en el artículo, que cuando se ejecuta en vivo los eventos de trade se entregan uno a uno desde OnChartEvent( ) según los dispara el motor, mientras que en modo testing se agrupan y se entregan como una lista....
Mi pregunta es: ¿no sería mejor implementar un parámetro de función dedicado en el manejador de eventos en lugar de sacrificar'lparam' que puede contener información útil para el manejador de eventos? También creo que hace el código más simple / más legible, ¿estás de acuerdo?
PD: De todas formas, esta librería me está pareciendo muy potente pero también compleja y difícil de entender, aunque una vez dominada debería permitir desarrollar todo tipo de estrategias EA muy rápidamente... Además de la enorme curva de aprendizaje, también estoy notando que el rendimiento de las pruebas retrospectivas es bastante lento, así que espero que puedan abordar este punto una vez que completen el conjunto de características que previeron para DoEasy.
Hola Artyom -- trabajando más de cerca con este código, me di cuenta de esta peculiaridad del valor ' shift ' implementado en EventsHandling() y OnDoEasyEvent() para manejar correctamente los eventos de comercio cuando se ejecuta en el probador ... Entiendo, como señalas en el artículo, que cuando se ejecuta en vivo los eventos de operación se entregan uno a uno desde OnChartEvent() a medida que son disparados por el motor, mientras que en modo de prueba se agrupan y se entregan como una lista....
Mi pregunta es: ¿no sería mejor implementar un parámetro de función dedicado en el manejador de eventos en lugar de sacrificar ' lparam ' que puede contener información útil para el manejador de eventos? También creo que hace el código más simple / más legible; ¿estás de acuerdo?
PD: De todas formas, esta librería me está pareciendo muy potente pero también compleja y difícil de entender, aunque una vez dominada debería permitir desarrollar todo tipo de estrategias con EA muy rápidamente... Además de la enorme curva de aprendizaje, también estoy notando que el rendimiento de las pruebas retrospectivas es bastante lento, así que espero que puedan abordar este punto una vez que completen el conjunto de características que previeron para DoEasy.
No. Aquí no tenía previsto rehacer nada, y lo más probable es que no lo haga. Todos los datos necesarios ya se entregan a los objetos de evento, y el resto de los datos ya se toman de aquellos objetos cuyo evento fue registrado.
No. Aquí no pensaba rehacer nada, y lo más probable es que no lo haga. Todos los datos necesarios ya están entregados a los objetos de evento, y el resto de los datos ya están tomados de aquellos objetos cuyo evento fue registrado.
Vale, de acuerdo... Estoy de acuerdo en que todos los datos necesarios están en los objetos de evento.
¿Podría por favor proporcionar algún código de ejemplo para que cuando se obtiene el último evento de comercio, se puede tirar de la entrada de orden / posición y otras propiedades?