¿UtilizaStopLimit en el comercio real?
Está claro queStopLimit funciona de forma inadecuada en el probador.
¿Tiene sentido utilizarlo en el comercio real? ¿Cuáles son las ventajas y los inconvenientes?
¿Qué pasa con el probador?
Aparentemente nadie lo usa,
el pedido se abre a precios inexistentes:
Un ejemplo sencillo para comprobarlo:
//+------------------------------------------------------------------+ //| StopLimit_Test.mq5 | //+------------------------------------------------------------------+ #include <Trade\Trade.mqh> CTrade trade; input int Deviation = 100; //+------------------------------------------------------------------+ void OnTick() { MqlTick tick; SymbolInfoTick(_Symbol,tick); trade.SetTypeFilling(ORDER_FILLING_RETURN); double ticksise=SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE); if(OrdersTotal()==0) trade.OrderOpen( _Symbol, // символ ORDER_TYPE_BUY_STOP_LIMIT, // тип ордера 1.0, // объем ордера tick.ask+Deviation*ticksise, // цена исполнения tick.ask+10*ticksise, // цена стоплимита 0, // цена stop loss 0 // цена take profit ); } //+------------------------------------------------------------------+
Aparentemente nadie lo usa,
el pedido se abre a precios inexistentes:
Un ejemplo sencillo para comprobarlo:
Una orden BuyStopLimit funciona así:
- Se coloca una orden BuyStop por encima del precio (valor del precio en la estructura de solicitud de operaciones = precio + distancia de ajuste de la orden stop)
- Cuando se activa una orden BuyStop, se coloca una orden BuyLimit por debajo del precio
(al precio de stopplimit en la estructura de la solicitud de operación, que debería calcularse correctamente: stoplimit = precio - distancia de ajuste de la orden de stop) - Cuando se activa una orden BuyLimit, se realiza una entrada en el mercado al precio de la orden BuyLimit
Ejemplo:
Una orden BuyStopLimit funciona así:
- Establecemos una orden BuyStop por encima del precio (valor del precio en la estructura de solicitud de operaciones = precio + distancia de establecimiento de la orden stop)
- Cuando se activa BuyStop, se coloca una orden BuyLimit por debajo del precio
(al precio de stopplimit en la estructura de la solicitud de operación que debe ser calculada correctamente: stoplimit = precio - distancia de ajuste de la orden de stop) - Cuando se activa una orden BuyLimit, se realiza una entrada en el mercado al precio de la orden BuyLimit
Ejemplo:
CuandoBuyLimit está por debajo del precio, funciona bien en el probador.
CuandoBuyLimit es mayor que el precio, debe abrirse al precio Ask. En la bolsa, en lo real, funciona así.
No tiene sentido utilizar StopLimit para establecerBuyLimit por debajo del precio.
CuandoBuyLimit está por debajo del precio, funciona bien en el probador.
CuandoBuyLimit está por encima del precio, debe abrirse al precio Ask. En la bolsa, en lo real, funciona así.
Usar un StopLimit para poner el BuyLimit por debajo del precio no tiene sentido.
Campo | Descripción |
acción | Tipo de operación comercial. El valor puede ser uno de los valores de la enumeración ENUM_TRADE_REQUEST_ACTIONS |
magia | Identificador del Asesor Experto. Permite organizar el tratamiento analítico de las órdenes comerciales. Cada Asesor Experto puede mostrar su propio identificador único al enviar una solicitud de operación |
pedir | Pida su billete. Necesario para modificar las órdenes pendientes |
símbolo | Nombre del símbolo para el que se realiza la orden. No es necesario para la modificación de órdenes y el cierre de posiciones |
Volumen | Volumen solicitado de una operación en lotes. El valor real del volumen al abrir una posición depend erádel tipo de orden que se ejecute. |
precio | Es el precio al que se debe ejecutar la orden. El precio no es necesariopara las órdenes de mercado con el tipo "Market Execution" ( SYMBOL_TRADE_EXECUTION_MARKET ) con el tipoTRADE_ACTION_DEAL |
stoplimit | Precio al que se colocará la orden de Límite pendiente una vez que el precio alcance el valor del precio (esta condición es obligatoria). Hasta ese momento, la orden pendiente no se coloca en el sistema de negociación |
sl | Precio al que se activará una orden de Stop Loss cuando el precio del valor se mueva en una dirección desfavorable |
tp | Precio al que se activa la orden Take Profit por el movimiento del precio en la dirección favorable |
desviación | Desviación máxima aceptable del precio solicitado, fijada en puntos |
tipo | Tipo de pedido. El valor puede ser uno de los valores de la enumeración ENUM_ORDER_TYPE |
tipo_relleno | Tipo de orden a ejecutar. El valor puede ser uno de los valores deENUM_ORDER_TYPE_FILLING |
tipo_tiempo | Tipo de orden_tiempo de llenado. El valor puede ser uno de los valores deENUM_ORDER_TYPE_TIME |
caducidad | Hora de vencimientode la orden pendiente (para órdenes ORDER_TIME_SPECIFIED) |
comentario | Comentario a la orden |
posición | Billete a la posición. Debe rellenarse cuando se cambie y se cierre un puesto para identificarlo claramente. Suele coincidir con el ticket de la orden que dio lugar a la apertura de la posición. |
posición_por | Un billete para una posición contraria. Se utiliza cuando se cierra una posición de contador - abierto para el mismo instrumento, pero en la dirección opuesta. |
Espero que sepas lo que es una orden limitada. Y también una orden de paro, espero que no tengas dudas.
Y esto es lo que dice aquí sobre cómo funciona una orden StopLimit: cuando el precio alcanza el nivel de una orden Stop (y se coloca por encima del precio de compra), sólo entonces se coloca una orden Limit (y se coloca por debajo del precio de compra).
CuandoBuyLimit está por debajo del precio, funciona bien en el probador.
CuandoBuyLimit está por encima del precio, debe abrirse al precio Ask.En la bolsa, en lo real, funciona así.
Usar el StopLimit para poner el BuyLimit por debajo del precio no tiene sentido.
Lo siento, ¿cómo se pone la orden BuyLimit por encima del precio?
En este caso, no debería fijarse en absoluto.
Si se utiliza una clase de negociación SB, hay una comprobación de parámetros erróneos, y en tal situación no se coloca una orden pendiente, sino que se abre una orden de mercado.
Campo | Descripción |
acción | Tipo de operación comercial. El valor puede ser uno de los valores de la enumeración ENUM_TRADE_REQUEST_ACTIONS |
magia | Identificador del Asesor Experto. Permite organizar el tratamiento analítico de las órdenes comerciales. Cada Asesor Experto puede mostrar su propio identificador único al enviar una solicitud de operación |
pedir | Pida su billete. Necesario para modificar las órdenes pendientes |
símbolo | Nombre del símbolo para el que se realiza la orden. No es necesario para la modificación de órdenes y el cierre de posiciones |
Volumen | Volumen solicitado de una operación en lotes. El valor real del volumen al abrir una posición depend erádel tipo de orden que se ejecute. |
precio | Es el precio al que se debe ejecutar la orden. El precio no es necesariopara las órdenes de mercado del tipo "Market Execution" ( SYMBOL_TRADE_EXECUTION_MARKET ) con el tipoTRADE_ACTION_DEAL |
stoplimit | Precio al que se colocará la orden de Límite pendiente una vez que el precio alcance el valor del precio (esta condición es obligatoria). Hasta ese momento, la orden pendiente no se coloca en el sistema de negociación |
sl | Precio al que se activará una orden de Stop Loss cuando el precio del valor se mueva en una dirección desfavorable |
tp | Precio al que se activa la orden Take Profit por el movimiento del precio en la dirección favorable |
desviación | Desviación máxima aceptable del precio solicitado, fijada en puntos |
tipo | Tipo de pedido. El valor puede ser uno de los valores de la enumeración ENUM_ORDER_TYPE |
tipo_relleno | Tipo de orden a ejecutar. El valor puede ser uno de los valores deENUM_ORDER_TYPE_FILLING |
tipo_tiempo | Tipo de orden_tiempo de llenado. El valor puede ser uno de los valores deENUM_ORDER_TYPE_TIME |
caducidad | Hora de vencimientode la orden pendiente (para órdenes ORDER_TIME_SPECIFIED) |
comentario | Comentario a la orden |
posición | Billete a la posición. Debe rellenarse cuando se cambie y se cierre un puesto para identificarlo claramente. Suele coincidir con el ticket de la orden que dio lugar a la apertura de la posición. |
posición_por | Un billete para una posición contraria. Se utiliza cuando se cierra una posición con una posición contraria - abierta para el mismo instrumento, pero en sentido contrario. |
Espero que sepas lo que es una orden limitada. Y también una orden de paro, espero que no tengas ninguna duda.
Y esto es lo que dice aquí sobre cómo funciona una orden StopLimit: cuando el precio alcanza el nivel de la orden Stop ( y se coloca por encima del precio de compra), sólo en este caso se colocará una orden Limit (y se coloca por debajo del precio de compra).
¿Qué le hace pensar que la orden BuyLimit debe estar necesariamente por debajo del precio?
Hablo de la bolsa, el forex no es interesante.
Perdona, ¿qué haces poniendo la orden BuyLimit por encima del precio?
En esta situación, no debería fijarse en absoluto.
Si está utilizando la clase SB-trading, tiene una comprobación de parámetros no válidos y en tal situación, la orden pendiente no se abre, y la posición se abre por orden de mercado.
Más arriba te he dado un ejemplo de código.
Debería estar fijado y está fijado.
Si se abriera por el mercado, no habría problema en el probador; se abriría por el precio Ask. Pero se abriría a un precio inexistente, se puede ver en la imagen de arriba.
p.d. Pruebe usted mismo el código anterior en una cuenta de intercambioel límite debe establecer el deslizamiento de una orden de mercado, no el ajuste de una orden de límite :))
El "impresionante" stoplimit en la biblioteca estándar, sin palabras :))
el límite debe establecer el deslizamiento de la orden de mercado, no el ajuste de la orden de límite :))
El deslizamiento se establece mediante el parámetro de desviación en la solicitud de negociación.
Y el nivel stoplimit es el nivel en el que se establece la orden Limit en relación con el nivel de la orden Stop.
- www.mql5.com
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
¿UtilizaStopLimit en el comercio real?
Está claro queStopLimit no funciona adecuadamente en el probador.
¿Tiene sentido utilizarlo en el comercio real? ¿Cuáles son las ventajas y los inconvenientes?