¿Es posible implementar una contabilidad fiable de la estructura de posiciones agregadas en MT5?

 

Este tema se ha planteado muchas veces:

Svinozavr писал(а) >>

¡Caballeros! Tómese un momento para dejar de lado sus voluptuosas polémicas y profundice en la propuesta:

Dentro de MT4 escribir tal vez un archivo que se incluya en los EAs, que "intercepte" las señales de trading de los EAs y forme señales para las posiciones netas. Por supuesto, en el Asesor Experto de comercio se deben reemplazar los iones por aquellos cuyas señales serían interceptadas.

Esto solucionará TODAS sus disputas, que aparentemente nunca terminarán. Sólo tiene que ejecutar dos versiones del mismo EA: una con lotes y otra con una posición neta formada por lotes.

Por favor, piense en esa dirección. Es constructivo. (¡Si no, nos vamos a pelear todos aquí, por Dios!)

Aquí hay una y dos declaraciones sobre este tema en primavera. Lo único que hay es una sobreestimación errónea de los desarrolladores que implementaron en MT5 el almacenamiento de posiciones virtuales en el servidor de comercio.

El bloqueo no es el problema. Las razones de la falta de fiabilidad del propio concepto de la MT5 se describen aquí. Y la lógica consecuencia privada:

¡con la actual funcionalidad publicada de MT5 escribir un Asesor Experto MQL5 Fiable para el trading manual simultáneo en el mismo instrumento de trading es imposible!

P.S Aquí y aquí pregunté a los beta testers cómo ven la solución a este problema en MT5... Tampoco obtuve respuesta a preguntas similares por parte de los desarrolladores.

 
Выдох вдох хорошо дышать
Чёрный горох да нелегко глотать
Пуля и ствол нажал и разошлись
Где добро где зло попробуй разберись
А что мне надо да только свет в оконце
А что мне снится что кончилась война
Куда иду я туда где светит солнце
Вот только братцы добраться до темна
Шаг другой до счастья долеко
Эй брат постой я знаю не легко
Вымой лицо побрейся улыбнись
Выйди на крыльцо свободе поклонись
А что мне надо да только свет в оконце
А что мне снится что кончилась война
Куда иду я туда где светит солнце
Вот только братцы добраться до темна
А что нам надо да только свет в оконце
А что нам снится что кончилась война
Куда идём мы туда где светит солнце
Вот только братцы добраться до темна

Галанин С.  
 
getch писал(а) >>

El tema se ha planteado muchas veces:

Aquí hay una y una segunda declaración sobre el tema en la primavera. Lo único que hay es una sobreestimación errónea por parte de los desarrolladores que han implementado en MT5 el almacenamiento de posiciones virtuales en el servidor de operaciones.

El bloqueo no es el problema. Las razones de la falta de fiabilidad del propio concepto de la MT5 se describen aquí. Y la lógica consecuencia privada:

¡con la actual funcionalidad publicada de MT5 escribir un Asesor Experto MQL5 Fiable para el trading manual simultáneo en el mismo instrumento de trading es imposible!

P.S Aquí y aquí pregunté a los beta testers cómo ven la solución a este problema en MT5... Tampoco obtuve respuesta a estas preguntas por parte de los desarrolladores.

Francamente, no veo un problema tan grande, especialmente con EA.

Mientrasexista OrderComment() y se ejecute cualquier estrategia (excepto las que se ejecutan manualmente) puede implementarse como antes, escribiendoMagic en el comentario y extrayéndolo de ahí. Sólo tienes que escribir, o más bien anular la función OrderMagicNumber(), que parece estar ausente.

Y para el trading manual es deseable que este comentario pueda ser observado en la pantalla (a diferencia de MT4 en la pestaña del historial de la cuenta), y entonces no hay nada que pensar, salvo la fiabilidad de almacenar información en el comentario.

 
Tiene poca idea del problema. Si a alguien se le ocurre al menos la idea de considerar la estructura de posiciones agregadas, entonces la rama morirá, así que yo también tengo una mentalidad primitiva y estrecha. Si no es así, se trata de un problema grave que tendrán que resolver los desarrolladores.
 

Aquí se ha sugerido un método de aplicación, pero no es fiable:

Renat писал(а) >>

Estás sacando conclusiones erróneas. Y los medgies y comentarios funcionan igual que en MT4.

Por favor, espere a la publicación para comprobarlo usted mismo.

Los majors y los comentarios se almacenan en el historial de ejecución de la orden, pero no en la posición agregada.

¿Sugiere analizar la historia para resolver el problema anterior?

Permítanme repetir, ahora en MT4 es elemental para cualquier estrategia recoger información sobre el estado actual de las cosas y continuar su trabajo, como si nunca se hubiera interrumpido. Esta información está disponible en las posiciones abiertas. En MT5 no se puede hacer, porque sólo hay escasa información sobre la posición total, y eso es todo. Puede analizar el historial de órdenes FILLED, pero de nuevo, esto no es fiable, ya que no todo el historial puede estar disponible para el análisis (¿puede MQL5 bombear el historial de órdenes FILLED usando el filtro Magic?), puede ser enorme y tomar un tiempo considerable para su análisis.

Entonces, ¿sugiere restablecer la contribución de la estrategia en la posición total sobre la base del historial de órdenes cumplidas en MT5?

 
Integer >> :

Este problema también se planteó con la MT4, una forma fiable de marcar varillas, pero como vemos no se ha avanzado en su solución, al contrario, ha ido a más.

No hay ningún problema en contabilizar la estructura de una posición agregada en MT4. Puede escribir y ejecutar fácilmente y de forma fiable en MT4 Asesores Expertos independientes en un instrumento de negociación y seguir operando allí manualmente. Y en MT5 ni siquiera se puede operar de forma fiable (sin romper la lógica de la estrategia) junto con un EA en el mismo instrumento de negociación.

 
getch писал(а) >>

No hay ningún problema en contabilizar la estructura de una posición agregada en MT4. Puede escribir y ejecutar fácilmente y de forma fiable en MT4 asesores independientes en un instrumento de negociación, y seguir operando allí manualmente. Y en MT5 ni siquiera se puede operar manualmente (sin romper la lógica de la estrategia) junto con el Asesor Experto en el mismo instrumento comercial.

La esencia del problema es clara y transparente, porque solía trabajar en varios programas de ese tipo. Por ejemplo, el famoso Rumus o IDsystem en FK. No sé cómo se implementará en MT5, porque aún no lo he usado y todavía no puedo esperar. Al menos este enfoque identifica algunas acciones de los Asesores Expertos, es mejor que nada.

Mientras aparece MT5 intentaremos buscar opciones más fiables.

 

Otra forma de implementar a través de una API de alto nivel en MQL5, pero de nuevo poco fiable:

nen писал(а) >>

Esta afirmación es incorrecta. Primero hay que probar el MQL5 y luego hablar del orden de complicación.

Será difícil cambiar la lógica del proceso de programación adquirida a lo largo de los años. Sin embargo, los programas en MQL5 pueden ser más complejos que en MQL4, y se necesitará menos tiempo. Hay tantas novedades que ahora es difícil imaginar todo el alcance de las innovaciones. El número de innovaciones útiles.

-------

Lástima que haya que reescribir TODO de MQL4 a MQL5.

Claro que sí. Pero en la mayoría de los casos no es así en la portación MQL4->MQL5.

nen, por favor, comparta su visión de la implementación de estrategias en MQL5, que permite la ejecución de varias estrategias independientes en una herramienta de comercio.

Tome cualquier estrategia simple de la entrega estándar de MT4 y conviértala en una estrategia universal (independiente).

Con MQL4 se necesitan 10 líneas de código y menos de 5 minutos.

En MQL5 es ... no puede ni imaginarse.

Veo la solución a este problema en la creación de una API de mayor nivel en MQL5 que en el propio MQL5. Esta API implementará funciones de trading que permitan trabajar con posiciones virtuales, las cuales tendrán todas las propiedades que tiene MT4. Estoy seguro (una simple profecía) de que varias versiones de dicha API aparecerán en CodeBase MQL5, eliminarán los errores con el tiempo y todo será llevado a la perfección. Los operadores simplemente conectarán esta API y entonces la solución del problema anterior y de otros similares también tomará menos de 5 minutos.

Pero, desgraciadamente, esta solución seguirá sin ser fiable, porque la base de datos de los enlaces lógicos de las posiciones virtuales no se almacenará en el servidor de negociación.

P.S. También a través de este potente API de MQL5 habrá una interfaz para trabajar con estas posiciones de mano virtuales - un análogo de MT4.

 
getch писал(а) >>

Aquí se ha sugerido un método de aplicación, pero no es fiable:

Renat escribió(a) >>

Estás sacando conclusiones erróneas. Y los medgies y comentarios funcionan igual que en MT4.

Por favor, espere a la publicación para comprobarlo usted mismo.

Las magias y los comentarios se almacenan en el historial de ejecución de órdenes, pero no en la posición agregada.

OrderMagicNumber() al menos en la ayuda de MT5, no he encontrado, así que dónde y cómo se almacena la magia en MT5, no está claro.

 
fwiq >> :

OrderMagicNumber() al menos en la ayuda de MT5, no encontré, así que dónde y cómo se almacena la magia en MT5, no está claro.

struct MqlTradeRequest
  {
   ENUM_TRADE_REQUEST_ACTIONS    action;           // Тип выполняемого действия
   ulong                         expert;           // Штамп эксперта (идентификатор)
   ulong                         order;            // Тикет ордера
   string                        symbol;           // Имя торгового инструмента
   double                        volume;           // Запрашиваемый объем сделки в лотах
   double                        price;            // Цена 
   double                        stoplimit;        // Уровень StopLimit ордера
   double                        sl;               // Уровень Stop Loss ордера
   double                        tp;               // Уровень Take Profit ордера
   ulong                         deviation;        // Максимально приемлемое отклонение от запрашиваемой цены
   ENUM_ORDER_TYPE               type;             // Тип ордера
   ENUM_ORDER_TYPE_FILLING       type_filling;     // Тип ордера по исполнению
   ENUM_ORDER_TYPE_TIME          type_time;        // Тип ордера по времени действия
   datetime                      expiration;       // Срок истечения ордера (для ордеров типа ORDER_TIME_SPECIFIED)
   string                        comment;          // Комментарий к ордеру
   char                          reserved[128];    // Зарезервировано
  };
 
getch писал(а) >>

Otra forma de implementar a través de una API de alto nivel en MQL5, pero de nuevo poco fiable:

nen escribió >>

Esta afirmación es incorrecta. Primero hay que probar el MQL5 y luego hablar del orden de complicación.

Será difícil cambiar la lógica del proceso de programación adquirida a lo largo de los años. Sin embargo, los programas en MQL5 pueden ser más complejos que en MQL4, y se necesitará menos tiempo. Hay tantas novedades que ahora es difícil imaginar todo el alcance de las innovaciones. El número de innovaciones útiles.

-------

Lástima que haya que reescribir TODO de MQL4 a MQL5.

Claro que sí. Pero en la mayoría de los casos no es así en la portación MQL4->MQL5.

nen, por favor, comparta su visión de la implementación de estrategias en MQL5, que permite la ejecución de varias estrategias independientes en una herramienta de comercio.

Tome cualquier estrategia simple de la entrega estándar de MT4 y conviértala en una estrategia universal (independiente).

Con MQL4 se necesitan 10 líneas de código y menos de 5 minutos.

En MQL5 es ... no puede ni imaginarse.

Veo la solución a este problema en la creación de una API de mayor nivel en MQL5 que en el propio MQL5. Esta API implementará funciones de trading que permitan trabajar con posiciones virtuales, las cuales tendrán todas las propiedades que tiene MT4. Estoy seguro (una simple profecía) de que varias versiones de dicha API aparecerán en CodeBase MQL5, eliminarán los errores con el tiempo y todo será llevado a la perfección. Los operadores simplemente conectarán esta API y entonces la solución del problema anterior y otros similares también tomará menos de 5 minutos.

Pero, desgraciadamente, esta solución seguirá sin ser fiable, porque la base de datos de los enlaces lógicos de las posiciones virtuales no se almacenará en el servidor de negociación.

P.D. También a través de esta API los potentes medios de MQL5 crearán una interfaz para trabajar con estas posiciones virtuales a mano - un análogo de MT4.

Es demasiado complicado, y no hay necesidad de ese trabajo innecesario. Lo más probable es que podamos hacerlo con un simple conjunto de clases desarrolladas para dicha contabilidad, trabajando en la propia plataforma sin demasiados excesos. Pero aquí hay un completo IMHO.