Curso Forex MetaTrader4: Creación de pedidos. ¿Cuáles funciones utilizar en MQL?

En el artículo anterior hemos comentado el funcionamiento de transacciones en los sistemas automáticos. Ahora, pasamos al tema de creación de pedidos. ¿Cómo y cuándo se puede crear un pedido nuevo utilizando las funciones integradas en el lenguaje en MQL?
En el momento de aparición de una señal que permite crear un pedido, es necesario activar la función transaccional especial OrderSend(...), responsable de este proceso. Es una de las funciones integradas más complicadas en MQL, dado que requiere proporcionar un número de parámetros muy elevado. Además del parámetro básico Symbol, que permite indicar para cuál instrumento el pedido es creado, es necesario introducir también una serie de otros parámetros:
Por supuesto, el número de argumentos es mucho más elevado, pero los mencionados más arriba son algunos de los más importantes.
La creación de un pedido en el momento de la aparición de una señal es, por supuesto, la situación más simple. Desgraciadamente, hay que tomar en cuenta también la situación cuando la creación del pedido, por cualquier razón, no es posible (un problema con el servidor, falta de medios en la cuenta, valores SL / TP inadecuados). En tal momento vale la pena utilizar las funciones de administración de cuenta, que permitirán verificar p. ej. los medios accesibles en la cuenta, así como (lo que es incluso más importante) los medios accesibles en la cuenta después de una posible creación del pedido. Gracias a esto se evitarán sorpresas desagradables relacionadas con tener la cuenta vaciada por el programa. Vale la pena pensar también sobre el contador de pedidos. Es porque la gran mayoría de traders está al tanto de sus posiciones abiertas y las administra. Una situación similar debería tener lugar en el caso de un sistema automático: de vez en cuando las posiciones abiertas deben ser verificadas y posiblemente modificadas. De aquí viene la sugerencia de determinar un número máximo de pedidos abiertos: dependiendo del capital accesible, pueden ser 5, 10, o incluso más.
Cada pedido posee un número único, llamado billete (en inglés Ticket), que permite verificar la historia del pedido. Gracias a esto se puede controlar completamente la situación en la cuenta. Vale la pena mencionar aquí la función OrderSelect(...), que permite revisar todos los pedidos activos (utilizando el bucle FOR).