La estrategia de stop loss porcentual es una estrategia que establece y ajusta órdenes de stop loss basadas en el porcentaje del precio del instrumento.
Esta estrategia establece el porcentaje para la posición larga de stop loss a través de parámetros de entrada, como el 3%.
Cuando el precio excede el precio de entrada*(1+porcentaje de pérdida de parada), el precio de pérdida de parada se ajusta al precio de entrada para alcanzar el punto de equilibrio.
Cuando el precio está por debajo del nivel anterior, el precio de stop loss es el precio de entrada* ((1-porcentaje de stop loss posterior).
Esto puede lograr un stop loss de equilibrio cuando el precio alcanza un cierto nivel de ganancia, evitando perder todas las ganancias por pérdidas, al tiempo que evita que las fluctuaciones normales de precios eliminen un stop loss demasiado agresivo.
La estrategia también traza el precio de stop loss para la confirmación, y se establece para solo ir largo. Va largo en cruz dorada y cierra la posición en cruz de muerte.
La mayor ventaja de esta estrategia es que puede realizar un stop loss de equilibrio después de obtener ganancias a través de un stop loss de seguimiento, sin importar cómo vaya el mercado posterior, al menos el principal se puede mantener para evitar pérdidas.
Además, el stop loss de esta estrategia es relativamente leve. El rango de stop loss trasero no es demasiado grande, lo que puede evitar ser detenido por las fluctuaciones normales de precios en comparación con el stop loss fijo. Es más flexible e inteligente.
El principal riesgo de esta estrategia es que si el porcentaje de stop loss se establece incorrectamente. Si se establece demasiado pequeño, sería difícil realizar la pérdida de stop de equilibrio. Si se establece demasiado grande, sería fácil ser detenido por las fluctuaciones normales de precios. Por lo tanto, el porcentaje de stop loss adecuado necesita pruebas y evaluación cuidadosas.
Otro riesgo es que en los mercados anormales, los precios pueden repentinamente dispararse en gran medida.
Esta estrategia puede optimizarse en los siguientes aspectos:
Añadir reglas de salida tales como cruce de muerte, el precio de la ruptura a través de SMA, etc. para hacer la estrategia más completa.
Añadir un mecanismo de ajuste dinámico del porcentaje de pérdida de parada, para optimizar automáticamente el rango de pérdida de parada en diferentes entornos de mercado.
Agregue estrategias de salida a las posiciones de salida después de que los precios corran cierto rango para obtener ganancias.
Investigar las diferencias de los parámetros del porcentaje de pérdida de parada en diferentes instrumentos, establecer el mecanismo de optimización de autoadaptación de parámetros.
La estrategia de stop loss porcentual es muy práctica en general, lo que puede lograr efectivamente una stop loss de equilibrio después de obtener ganancias para evitar pérdidas.
/*backtest start: 2023-12-08 00:00:00 end: 2024-01-07 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © osmaras // based on https://kodify.net/tradingview/orders/percentage-trail/ //@version=5 strategy("Break even stop loss (% of instrument price)", overlay=true) // Configure trail stop level with input options (optional) longTrailPerc = input.float(defval=3.0,step=0.1,title="Trail Long Loss (%)")* 0.01 longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28)) // Determine trail stop loss prices longStopPrice = 0.0 lastEntryPrice = strategy.opentrades.entry_price(strategy.opentrades - 1) longStopPrice := if (strategy.position_size > 0 and close > (lastEntryPrice * (1 + longTrailPerc))) stopValue = lastEntryPrice math.max(stopValue, longStopPrice[1]) else longStopPrice := if (strategy.position_size > 0) stopValue = lastEntryPrice * (1 - longTrailPerc) math.max(stopValue, longStopPrice[1]) else 0 // Plot stop loss values for confirmation plot(series=(strategy.position_size > 0) ? longStopPrice : na, color=color.fuchsia, style=plot.style_cross, linewidth=2, title="Long Trail Stop") // set strategy only long strategy.risk.allow_entry_in(strategy.direction.long) // Submit entry orders if (longCondition) strategy.entry("Long", strategy.long) shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28)) if (shortCondition) strategy.close("Long") // Submit exit orders for trail stop loss price if (strategy.position_size > 0) strategy.exit(id="Stop Loss", stop=longStopPrice)