¿Por qué NO hay un EA completo en la base de código?

 

IMO, parece que no hay un EA completo dentro de la base de código de mql4.com o artículos para esa cuestión de hecho. Siempre parece haber algo que falta. Voy a usar la definición directamente de la fuente que mucha gente recomienda para aprender a programar mql4; el Libro. Además de eso, voy a añadir lo siguiente. Esto no considera si es rentable o no.

- Reconocimiento de Dígitos del Broker (5 puntos vs 4 puntos y Jpy vs Otros)

- Opciones apropiadas de manejo de dinero (Martingale solo no cuenta)

- Identificación adecuada de Magic# (si orderTotals==0 no cuenta)

- Diferenciación adecuada de los símbolos (¿tal vez porque la mayoría son para 1 símbolo y marco de tiempo?)

- Casi siempre NO hay un proceso de contabilidad de órdenes (esto es un poco comprensible)

- El seguimiento de eventos es inexistente (No quiero saber cuando ese SL fue golpeado?)

- Las comprobaciones previas de TradeContexBusy ni de ninguna comunicación con el servidor son inexistentes.

- Recuperación de desastres, (¿es esto sólo un mito, uno lee en el foro?)

- Ecn vs Dealing Desk OrderSend Compatible (no enviar Sl y Tp con OrderSend)

Por la edad de este foro y del propio mql4, supondría que a estas alturas alguien habría publicado un EA completo con todas las características "que la mayoría consideraría" estándar de un programa normal. ¿Es una tarea demasiado difícil? En primer lugar, culpo a los meta-quotes (¡te amo Meta-Quotes!). Pero creo que ya es hora de que publiques un EA completo tal y como lo define el libro.

¡¡Ok!! Ahora, antes de que la gente empiece a atacarme con las respuestas de "Por qué no lo haces tú", lo cual sería comprensible dado el tono de este post. El hecho es que estoy trabajando en tal EA para la base de código. Bueno la verdad es que 1º lo estoy haciendo para mi propio aprendizaje. ¿Pero cómo es que nadie ha hecho esto antes?

Una vez más, tal vez me había perdido tal EA. Así que si alguien puede enlazarme con un EA de este tipo se lo agradeceré. Además, estoy buscando una lista completa de cosas estándar a tener en cuenta dentro de un programa completo listo para cuentas reales. No me importa mucho la prueba de balas de cada corredor y el instrumento por ahí, pero me gustaría un Brain-Storm con este hilo en el estándar incluye en su opinión.

 

Es cierto que no todos estos están cubiertos en un Código Base EA

El reciente nuevo MACD Sample está actualizado para cuentas full/sub-pip más brokers ECN/STP.

En cuanto a los otros elementos:-

- Opciones adecuadas de gestión del dinero - Las opiniones varían y esto puede ser muy complejo

- Identificación adecuada de Magic# (si orderTotals==0 no cuenta) - ver este ejemplo

- Comprobaciones previas para TradeContexBusy ni para cualquier comunicación con el servidor es Un-found - Creo que hay hilos en el tratamiento de los errores del canal de orden

Los otros elementos son de interés para los codificadores que tienen un sistema de trabajo y por lo general por entonces, se definen y el código de su propia?

La mayoría de los novatos y los codificadores de nivel medio de EA se verían abrumados por la gran cantidad de información de un EA comercial completo...

Pero... siéntase libre de publicar uno en cualquier momento :)

-BB-

 
ubzen:

¡¡¡Ok!!! Ahora, antes de que la gente empiece a atacarme con las respuestas de "¿Por qué no lo haces?", lo cual sería comprensible dado el tono de este post. El hecho es que estoy trabajando en un EA de este tipo para la base de código. Bueno la verdad es que 1º lo estoy haciendo para mi propio aprendizaje. Pero ¿cómo es que nadie ha hecho esto antes?

Muy apoyado (moralmente :P) y apreciado.

Las habilidades para escribir un EA completamente estable, que sea capaz de operar en vivo e incluya todo lo que has señalado, son en mi opinión las habilidades que se pagan. Así que parece que son los pequeños secretos ocultos de los maestros de la codificación :)

Cuando publiques tu código, la calidad de la codificación de mql4 por parte de las masas debería mejorar con el tiempo, pero la calidad de los mensajes del foro debería disminuir en general (todos usaremos un enlace a tu código como referencia :P)

Lo espero con impaciencia.

 

Todas estas cosas deberían formar parte de la API oficial. Por ejemplo, cosas como el problema del contexto de las operaciones o, en general, la forma increíblemente engorrosa de manejar las órdenes, los números mágicos, etc., la ausencia de manejadores de eventos de negociación o, al menos, alguna API sencilla para consultar fácilmente una lista filtrada y ordenada de eventos históricos y cosas por el estilo. La gente ha escrito bibliotecas enteras para envolver todo (o parte) de la API de bajo nivel de MT4 en algo de más alto nivel, más fácilmente utilizable y cada uno de ellos está manteniendo su propia versión/implementación privada de tal cosa.

Gracias a la extraña política de la compañía Metaquotes y su actitud hostil hacia los usuarios finales y los desarrolladores de EAs parece casi imposible (y nadie estará motivado para intentarlo) establecer algún tipo de proceso constructivo de la comunidad (o tener al menos algún tipo de diálogo constructivo con MQ) para discutir y acordar tal API y discutir y contribuir colectivamente a las mejoras. Pero tal API sería totalmente necesaria y debería ser parte de cada instalación estándar de MT4 y debería ser la forma recomendada oficialmente para acceder a la funcionalidad.

 

> Gracias a la extraña política de la empresa Metaquotes...

Supongo que es una cuestión de tiempo, esfuerzo y riesgo frente a la recompensa

Tal y como están las cosas, MT puede publicar algunos códigos y decir que son sólo ejemplos, es tu responsabilidad ejecutarlos o no

Para MT (u otro) publicar una biblioteca como el código definitivo de gestión de órdenes y tal vez hay un error en él o las condiciones del mercado pueden cambiar o el comportamiento del lado del servidor se altera, podría haber graves implicaciones de responsabilidad

Incluso una API de alto nivel presenta cierto grado de riesgo, ya que el mercado de divisas es un lugar difícil con muchas, muchas variables

Microsoft puede publicar una versión de Office y publicar actualizaciones cuando y como sea, pero no tiene una segunda oportunidad con el software de comercio

> La gente ha escrito bibliotecas enteras... cada uno de ellos mantiene su propia versión/implementación privada de tal cosa...

Bueno, es comprensible dado el tiempo, el esfuerzo, la determinación y el dinero (perdido) que se necesita para desarrollar estas cosas...

-BB-

 

En casi todas las industrias ocurre lo mismo. Hay libros sobre gestión, matemáticas, psicología, etc., pero no hay una forma definitiva de hacer algo, sino que se reduce a que el profesional diga "lo hace exactamente como lo has definido" y el aficionado diga "funciona con mi corredor, eso es todo lo que necesito".

 

@forexCoder: ...Cuando publiques tu código, la calidad de la codificación de mql4 por parte de las masas debería mejorar con el tiempo, pero la calidad de los mensajes del foro debería disminuir en general (todos usaremos un enlace a tu código como referencia :P)...

Gracias por el apoyo ;). Sin embargo, no va a ser tan grande. Hay ejemplos mucho mejores repartidos por el foro para tareas individuales. De lo que estoy hablando son segmentos mucho más pequeños que un archivo Include designado o un archivo Library que maneja OrderReliable por ejemplo. Mi diseño original es mantener el EA como un solo archivo (sin Include-o-Bibliotecas). No esperes mucho, ya que estoy ocupado con otros proyectos. Pero voy a mantener esto como un objetivo digno.

@General> La gente ha escrito bibliotecas enteras... cada uno de ellos está manteniendo su propia versión/implementación privada de tal cosa..

Sip, muy cierto. Cada programador decente tiene su propia versión de todo. Ejemplo: Manejo de Errores y Manejo de Dinero. Por qué no puede MT crear una función que devuelva un tamaño de lote cuando le paso un precio de StopLoss y un porcentaje de riesgo. O que devuelva un Precio de StopLoss cuando yo le pase un Tamaño de Lote y un Riesgo. Pero Noooo, cada uno tiene que tener su propio sabor y hacer su propia comprobación de errores si tiene suficiente margen libre.

Sí, sé que MT no puede cubrir todo. Pero sería bueno si ellos establecieran mejores Ejemplos. Incluso los EAs comerciales recibieron mucho calor de este foro porque generalmente eran incompatibles con otros EAs ... ahora sin embargo la mayoría de ellos están cambiando sus formas. Apuesto a que la mayoría de esos desarrolladores miraron el Viejo MACD Simple y se fueron sin preocupaciones, cumple con los estándares de MT. Apenas puedo ejecutar cualquier código de la base de código sin ver un error 130, 131, o modificar el error # 1.

 
ubzen:
Por la edad de este foro y de mql4 en sí mismo, yo asumiría que alguien habría publicado un EA completo con todas las características "que la mayoría consideraría" estándar de un programa normal por este tiempo.
Aquí está la mía menos la lógica de comercio real.
Archivos adjuntos:
whrea.mq4  65 kb
 

¿Qué hay del EA descrito en el libro de mql4? Tiene la mayoría de las funciones que necesitarías, función de contabilidad de órdenes, función de gestión de eventos, función de gestión de errores, etc. Nunca he compilado ese EA para ver si funciona correctamente o no, podría hacerlo más tarde.

 
WHRoeder:
Aquí está la mía sin la lógica de comercio real.


Amigo, ¡¡¡esto es impresionante!!! ¡¡¡¡Es una maldita mina de oro de código útil !!!!

 
WHRoeder:
Aquí está la mía sin la lógica de comercio real.
Gracias WHRoeder. Esto es exactamente lo que estoy hablando. Lo usaré como una buena plantilla de un programa Normal.