PLOSS
PLOSS fija un stop loss a un número fijo de puntos del precio medio de la posición en ProBacktest y ProOrder, y se escribe como SET STOP PLOSS x en una estrategia.
Sintaxis
SET STOP PLOSS xParámetros
| Nombre | Tipo | Por defecto | Descripción |
|---|---|---|---|
x | entero o expresión numérica | obligatorio | Distancia en puntos entre el precio medio de la posición y el nivel del stop. |
Cómo funciona
Cuando la instrucción se ejecuta, la estrategia registra un stop de protección en x puntos en el lado perdedor del precio medio de la posición, por debajo de la entrada para un long y por encima para un short. Si el precio alcanza ese nivel, la posición se cierra a mercado.
La distancia está anclada a POSITIONPRICE, el precio medio de entrada de toda la posición, no al precio de la última orden. Cuando la estrategia añade contratos a una posición existente, la media se desplaza y el nivel del stop se desplaza con ella en la siguiente evaluación.
A SET STOP comando permanece activo hasta que se sustituye. No es necesario repetirlo en cada bar, aunque pasar una variable como x y volver a ejecutar la línea permite que la distancia se adapte a las condiciones cambiantes. Todas las variantes de stop comparten una única ranura interna de stop, por lo que llamar a SET STOP PLOSS después de SET STOP %LOSS, SET STOP $LOSS, o una variante trailing simplemente sobrescribe el ajuste anterior.
Ejemplos
Ejemplo 1, entrada con MACD y stop de 50 puntos (ProOrder)
myMACD = MACD[12,26,9](close)
long = myMACD CROSSES OVER 0
IF NOT LongOnMarket AND long THEN
BUY 1 CONTRACTS AT MARKET
ENDIF
// Stop loss 50 points from the average position price
SET STOP PLOSS 50Se abre un long cuando el MACD cruza por encima de cero, y la posición queda protegida por un stop 50 puntos por debajo del precio medio de entrada. Este es el ejemplo de referencia de la documentación original con los comentarios reescritos.
Ejemplo 2, stop basado en puntos en una posición short (ProBacktest)
short = close CROSSES UNDER average[100](close)
IF NOT shortonmarket AND short THEN
SELLSHORT 1 CONTRACTS AT MARKET
ENDIF
// Stop 30 points above the average short entry price
SET STOP PLOSS 30En una posición short la misma instrucción coloca el stop en el lado opuesto, 30 puntos por encima de la entrada media, cerrando la operación si el precio sube hasta ahí.
Ejemplo 3, distancia de stop escalada por la volatilidad (ProOrder)
// Convert an ATR distance in price units into whole points
atr = AverageTrueRange[14](close)
stopPoints = max(10, round((2 * atr) / pointsize))
IF NOT onmarket AND close > highest[20](high[1]) THEN
BUY 1 CONTRACTS AT MARKET
ENDIF
SET STOP PLOSS stopPointsLa distancia del stop sigue a la volatilidad, dos ATR convertidos en puntos con un mínimo de 10 puntos, por lo que los mercados tranquilos tienen stops ajustados y los mercados volátiles tienen espacio para respirar.
Errores y trampas habituales
- Anclado a la media, no a la última ejecución. Después de piramidar o promediar a la baja, el stop se mide desde el nuevo POSITIONPRICE. Un stop que parecía seguro respecto a la primera entrada puede quedar mucho más cerca del mercado, o mucho más lejos, de lo esperado.
- Una sola ranura de stop.
PLOSS,%LOSS,$LOSS,BREAKEVEN, y todas las variantes trailing escriben en el mismo stop interno. Solo la más recienteSET STOPestá activa, por lo que alternar variantes en cada bar provoca salidas erráticas. - Los puntos no son efectivo ni porcentaje.
xes un número de puntos. UsaSET STOP %LOSSpara una distancia porcentual ySET STOP $LOSSpara un importe en efectivo. Pasar una cifra en efectivo a PLOSS en un instrumento con un tamaño de punto pequeño produce un stop absurdamente amplio. - Ejecuciones ideales en los backtests. ProBacktest ejecuta el stop exactamente en el nivel calculado. La ejecución en real puede pasarse de largo en huecos o mercados rápidos, así que las pérdidas reales pueden superar el
xpuntos.
Instrucciones relacionadas
%LOSS, stop loss como porcentaje del precio de la posición.$LOSS, stop loss como importe en efectivo.PPROFIT, take profit en puntos, la instrucción simétrica.%PROFIT, take profit en porcentaje.BREAKEVEN, mueve el stop o el objetivo al precio de entrada.PTRAILING, trailing stop expresado en puntos.POSITIONPRICE, el precio medio de entrada desde el que se mide la distancia.POINTSIZE, el tamaño de un punto en unidades de precio.STOP, resumen de la familia de instrucciones de stop.