Galería de interfaces de usuario escritas en MQL - página 67

 

En principio, cada uno puede utilizar la herramienta con la que se sienta cómodo. Yo me siento cómodo con mi interfaz y por eso la estoy desarrollando. En otras palabras, voy a utilizarla en mi propia negociación algorítmica. Publicar soluciones en el foro añade motivación. Si mi interfaz resulta ser útil para alguien - bien, si no - no me hará daño.

En la interfaz veo una poderosa herramienta, que, combinada con las capacidades algorítmicas de MT5, me permitirá escalar los resultados de un trading correcto. Sí, en este largo camino, estoy "yendo al mercado". Lleva años, pero en cualquier caso, me lleva tiempo desarrollarme intelectualmente. No tiene sentido operar en el mercado con dinero pero sin cerebro, ¿verdad?

La decisión de utilizar WinForms, o algo similar, es en mi opinión incompleta por naturaleza. Lleva a desvincularse técnicamente de MT5 y a construir una aplicación Windows multiventana independiente. En una primera fase estará conectada a la plataforma por un canal de datos como un cordón umbilical. El usuario trasteará con los sondeos DLL e incluso puede que tenga éxito. Si lo desea, podrá crear un menú contextual y utilizar algunas plantillas para la creación rápida de ventanas...... Pero al final..., trabajará en dos o tres IDEs a la vez, y en diferentes lenguajes de programación. Entonces, ¿cómo es mejor? Y lo más importante - ¿cómo es más fácil?

Además, al disponer de una aplicación Windows multiventana, el usuario puede conectarla directamente a la API de otra plataforma de negociación. Así que será más fácil para él que trabajar a través de un temporizador. Y hay que mencionar el mercado. Su producto no se permitirá allí. En general, a cada uno lo suyo.

 
Реter Konow #:

¿Cómo harás que la interfaz se comunique con tu código de programación?

Cuando se hace clic en cualquier control de la interfaz winform, se añade un evento a la lista de C# y EA realiza un bucle a través del temporizador para determinar si la lista tiene un evento.
 
hini #:
Cuando se hace clic en cualquier control de la interfaz winform, se añade un evento a la lista de C#, y EA ejecuta un bucle de temporizador para determinar si hay un evento en la lista.

Ok, puedes responder el resto de las preguntas:

  • ¿cuántos formularios (ventanas) se pueden "construir" en los gráficos de MT5?
  • ¿Cómo se traducen los datos en tablas?
  • ¿Puede utilizar plantillas ya creadas al crear ventanas?
  • ¿Puede crear su propia barra de tareas y menú contextual dentro de MT5?
  • ¿Cómo va a implementar el software de retorno / propiedades de los elementos? ¿Por sondeo de la DLL de la función de temporizador?
 

Como resultado, todas las preguntas anteriores, así como muchas otras, se reducen a una pregunta principal:

¿Es posible crear una aplicación de trading completa con una rica interfaz gráfica utilizando C# y WinForms, y al mismo tiempo, de alguna manera milagrosa, permanecer conectado con MT5, implementando todas las soluciones a través de la muleta del temporizador?

 
Реter Konow #:

Bien, ¿puedes responder al resto de las preguntas?

  • ¿Cuántas formas (ventanas) se pueden "construir" en un gráfico MT5?
  • ¿Cómo se convierten los datos en una tabla?
  • ¿Se pueden utilizar plantillas ya creadas para crear ventanas?
  • ¿Es posible crear una barra de tareas y un menú contextual propios en MT5?
  • ¿Cómo implementar las propiedades de retorno/configuración de software para un proyecto? ¿Sondeo de una DLL a través de una función de temporizador?
1. incontable
2. los datos se pasan a winform mediante cadena json
3. arrastrar y soltar los controles son fáciles de crear la interfaz
4. Sí, se puede
5. Sí, sondeo a través de un temporizador
 
Реter Konow interfaz gráfica utilizando C # y WinForms, y al mismo tiempo de alguna manera mágica permanecer en contacto con MT5 e implementar todas las soluciones a través de la muleta temporizador?
Sí, ¡el temporizador obtiene acciones Winform y puede llamar a funciones Winform desde cualquier lugar!
 
Estoy principalmente interesado en ser capaz de utilizar el panel de control EA en el probador
 
hini #:
Me interesa principalmente poder utilizar el panel de control EA en el probador
Resolver esto con la ayuda de C #. Buena suerte con eso.
 
Реter Konow #:
Resuélvelo con la ayuda de C#. Buena suerte con eso.

En realidad ya ha sido hecho por otra persona. Y el enfoque común de utilizar sólo MQL para crear la interfaz gráfica no se ajusta cuando se necesita trabajar con probador de estrategia.

Por otra parte no se puede publicar productos que utiliza c # en el mercado MQL.

Ambos enfoques tienen su drawback.

 
hini #:
Me interesa principalmente la posibilidad de utilizar el EA para controlar el panel en el tester

Si dispone de una interfaz de trading, qué problema hay en sustituir el envío de una orden de trading por el registro de dicha orden en una variable, con posterior cálculo de beneficio/pérdida, es decir, emular el trading en el terminal.

Seguro que es mucho más fácil de implementar que en el tester. Puedes mover el gráfico con la función ChartNavigate(), y simplemente ocultar la parte derecha del gráfico con un canvas o con el OBJ_RECTANGLE_LABEL habitual.



S amuel Manoel De Souza #:

En realidad esto ya ha sido hecho por otra persona.

Sí, aquí https://www.mql5.com/ru/code/24829