Discusión sobre el artículo "Recetas MQL5 - órdenes ОСО"

 

Artículo publicado Recetas MQL5 - órdenes ОСО:

En el comercio, el trader usa diferentes mecanismos e interacciones, también entre órdenes. En este artículo se propone una solución para procesar las órdenes OCO. Además, implica las clases de la Biblioteca Estándar, y también se crean los nuevos tipos de datos.

En el artículo, se hablará del trabajo con el tipo de conexión de órdenes OCO. Este mecanismo ha sido implementado en ciertos terminales comerciales que compiten con MetaTrader 5. Partiendo del ejemplo de creación de un asesor que dispone de un panel para el procesamiento de órdenes ОСО, persigo dos objetivos. Por una parte, deseo arrojar luz sobre las posibilidades de la Biblioteca Estándar, por otra, ampliar el instrumental del trader.


1. Esencia de las órdenes ОСО

Las órdenes ОСО (one-cancels-the-other order) son la unión de una pareja de órdenes pendientes.

Están unidas entre sí por una función de cancelación mutua: si se activa la primera, entonces no se debe activar la segunda, y al contrario.

Fig. 1. Conexión de órdenes OCO

Fig. 1. Conexión de órdenes OCO

En la fig. 1 se muestra un esquema sencillo de la interdependencia entre órdenes. En él se muestra una definición esencial: la conexión existe mientras existan ambas órdenes. Desde el punto de la lógica de cualquier [una] orden de la pareja, existen condiciones imprencisdibles, pero insuficientes para la existencia de la unión.

En ciertas fuentes se hace notar que en la conexión, obligatoriamente una de las órdenes es de límite, en otras, de stop, además, las órdenes deberán tener una dirección (compra o venta). Mi punto de vista es que semejante limitación no posibilita la creación de estrategias comerciales flexibles. Propongo estudiar en la conexión diferentes órdenes OCO y, lo más importante, intentar programar esta conexión.

Autor: Dennis Kirichenko

 

Colegas, ¿alguien ha visto algún ejemplo de uso de las bibliotecas que se encuentran en MQL5\Include\Canvas\Charts, tengo una idea para utilizar la biblioteca estándar, pero sin ejemplos, es un poco difícil de aprender)).

 
thejobber:

Colegas, ¿alguien ha visto algún ejemplo de uso de las bibliotecas que se encuentran en MQL5\Include\Canvas\Charts, tengo una idea para utilizar la biblioteca estándar, pero sin ejemplos, es un poco difícil de aprender)).

Sección Scripts\Examples\Canvas.
 
tol64:
Sección Scripts\Examples\Canvas.
Gracias Anatoly, pensé que puede ser sólo en los indicadores )).
 

Gracias por este interesante artículo.

  • Hay un problema de traducción en el punto 1.

They are connected by mutual cancellation function: if the first one triggers, the second one stays untouched, and vice versa.

La segunda debe ser eliminada si se activa la primera, no "untouched".

  • La forma de procesar la eliminación de la segunda orden con OnTrade/OnTradeTransaction no es lo suficientemente fiable. Puede ocurrir que el evento de necesidad no se reciba en absoluto, o que se reciba y no se procese :

Además, las transacciones pueden perderse durante la entrega desde el servidor al terminal.

y

La longitud de la cola de transacciones comprende 1024 elementos. Si OnTradeTransaction gestiona una nueva transacción durante demasiado tiempo, las antiguas de la cola pueden ser sustituidas por las nuevas.

Así que es mejor añadir un procedimiento de protección para evitar grandes sorpresas si su segunda orden pendiente no es eliminada.

 

angevoyageur, ¡gracias por tus comentarios! Hablas de negocios como siempre :-)

En cuanto a la traducción - sí, hay un error garrafal.

En cuanto a la eliminación de la orden no disparada en el cuerpo del manejador deeventos Trade - sí, la comprobación adicional debe ser explotada, por ejemplo, en el cuerpo del manejador de eventosNewTick .


 
Por desgracia, hay muchos errores en la compilación, por lo que no es viable para un principiante.
 

Sé que este es un hilo viejo, pero realmente quiero usar esto. He descargado el archivo zip, pero no tengo ni idea de cómo hacer que esto funcione, alguna ayuda en la compilación de esto sería genial.


Gracias

 

Su artículo es intéressant. Gracias a gente como usted los principiantes pueden progresar y tal vez algún día empezar a operar . Gracias

 

Acabo de descargar todos los archivos zip, pero necesito ayuda con el instraction sobre cómo hacer que funcionen o instalar

 
vijanda:

Acabo de descargar todos los archivos zip pero necesito ayuda con la instracción de como hacerlos funcionar o instalarlos

Tienes que crear una carpeta donde estarán todos los archivos relevantes. Después de la creación sólo tienes que copiar los archivos en la carpeta. Por ejemplo:


oco_archivos


Después de la compilación encontrará el archivo experto en el Navegador MT5.


oco_files_mt5


Ha pasado mucho tiempo desde la publicación del artículo. Pero el código funciona bien. Compilación 1981.