Porcentaje de estrategia de pérdidas de parada de seguimiento

El autor:¿ Qué pasa?, Fecha: 2024-01-08 17:12:46
Las etiquetas:

img

Resumen general

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.

Estrategia lógica

Esta estrategia establece el porcentaje para la posición larga de stop loss a través de parámetros de entrada, como el 3%.

  1. 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.

  2. 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.

Análisis de ventajas

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.

Análisis de riesgos

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.

Direcciones de optimización

Esta estrategia puede optimizarse en los siguientes aspectos:

  1. 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.

  2. 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.

  3. Agregue estrategias de salida a las posiciones de salida después de que los precios corran cierto rango para obtener ganancias.

  4. 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.

Conclusión

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)



Más.