- Evento principal de Asesores Expertos: OnTick
- Principios y conceptos básicos: orden, transacción y posición
- Tipos de operaciones de trading
- Tipos de órdenes
- Modos de ejecución de órdenes por precio y volumen
- Fechas de vencimiento de órdenes pendientes
- Cálculo del margen para una orden futura: OrderCalcMargin
- Estimación del beneficio de una operación de trading: OrderCalcProfit
- Estructura MqlTradeRequest
- Estructura MqlTradeCheckResult
- Solicitar validación: OrderCheck
- Solicitar resultado del envío: estructura MqlTradeResult
- Enviar una solicitud de trading: OrderSend y OrderSendAsync
- Operaciones de compraventa
- Modificar los niveles de Stop Loss y/o Take Profit de una posición
- Trailing stop
- Cierre de una posición: total y parcial
- Cierre de posiciones opuestas: total y parcial
- Colocar una orden pendiente
- Modificar una orden pendiente
- Borrar una orden pendiente
- Obtener una lista de órdenes activas
- Propiedades de una orden (activas e históricas)
- Funciones para leer las propiedades de órdenes activas
- Seleccionar órdenes por propiedades
- Obtener la lista de posiciones
- Propiedades de posiciones
- Funciones de lectura de propiedades de posición
- Propiedades de transacción
- Seleccionar órdenes y transacciones del historial
- Funciones para leer propiedades de órdenes del historial
- Funciones para leer propiedades de transacciones del historial
- Tipos de transacciones de trading
- Evento OnTradeTransaction
- Peticiones síncronas y asíncronas
- Evento OnTrade
- Seguimiento de los cambios en el entorno de trading
- Crear Asesores Expertos multisímbolo
- Limitaciones y ventajas de los Asesores Expertos
- Crear Asesores Expertos en el Asistente MQL
Tipos de operaciones de trading
El trading en MQL5 se lleva a cabo mediante el envío de órdenes utilizando la función OrderSend. Lo estudiaremos en una de las siguientes secciones porque su descripción requiere familiarizarse primero con varios conceptos.
El primer concepto nuevo será el tipo de operación de trading. Cada solicitud de operación contiene una indicación del tipo de operación solicitada y permite realizar acciones tales como abrir y cerrar posiciones, así como colocar, modificar y eliminar órdenes pendientes. Todos los tipos de operaciones de trading se describen en la enumeración ENUM_TRADE_REQUEST_ACTIONS.
Identificador |
Descripción |
---|---|
TRADE_ACTION_DEAL |
Colocar una orden de trading para una operación inmediata con los parámetros especificados (colocar una orden de mercado). |
TRADE_ACTION_PENDING |
Colocar una orden de trading para ejecutar una operación en las condiciones especificadas (orden pendiente). |
TRADE_ACTION_SLTP |
Cambiar los valores Stop Loss y Take Profit de una posición abierta |
TRADE_ACTION_MODIFY |
Cambiar los parámetros de una orden realizada anteriormente |
TRADE_ACTION_REMOVE |
Eliminar una orden pendiente previamente colocada |
TRADE_ACTION_CLOSE_BY |
Cerrar una posición con otra opuesta |
Al solicitar TRADE_ACTION_DEAL y TRADE_ACTION_PENDING, el programa deberá especificar un tipo concreto de orden. Este es otro concepto importante que tiene su propio reflejo en la API de MQL5, y lo consideraremos en la siguiente sección.