La estrategia de Stop Loss de Noro es una estrategia de seguimiento de tendencias. Calcula la línea de promedio móvil simple de 3 días, y establece una línea larga por encima de ella y una línea de stop loss por debajo de ella en porcentajes dados. También se establecen líneas de ganancia. Esto permite abrir posiciones cuando comienzan las tendencias y detenerse cuando las tendencias se invierten.
El núcleo de esta estrategia es calcular la línea de media móvil simple de 3 días ma. Luego se agrega un porcentaje lo por encima de ma para obtener la línea larga para las entradas. Cuando el precio cruza por encima de largo, las posiciones largas se abren. Por debajo de ma se resta un porcentaje sl para obtener la línea de stop loss stop. Cuando el precio cae por debajo de stop, las posiciones se detienen. También hay líneas de ganancias se establecen en un porcentaje por encima del precio promedio de tenencia actual. tp
Las normas específicas son:
Esto construye una estrategia de seguimiento de tendencia que establece líneas de entrada, toma de ganancias y stop loss basadas en el índice de referencia ma y en porcentajes configurables.
La mayor ventaja de esta estrategia es que puede rastrear automáticamente las tendencias. Al ir largo para atrapar tendencias alcistas y corto para tendencias bajistas sin necesidad de reconocimiento de patrones, atrapa tendencias.
Otra ventaja es el ajuste flexible de parámetros. Al cambiar los porcentajes de largo, tomar ganancias y stop loss, el tamaño de la posición y el espaciamiento de stop loss se pueden controlar fácilmente.
El mayor riesgo de esta estrategia es el deslizamiento. Como una orden de parada se utiliza para la pérdida de parada, en un mercado que cae rápidamente los precios pueden caer muy por debajo de la pérdida de parada antes de que se cumplan las órdenes. Esto puede conducir a pérdidas catastróficas.
Otro riesgo proviene de parámetros mal establecidos que provocan entradas y salidas demasiado frecuentes, aumentando los costos de comisión.
La estrategia se puede optimizar de las siguientes maneras:
Utilizar órdenes de límite en lugar de órdenes de stop para evitar riesgos de deslizamiento
Añadir ajustes de dimensionamiento de posición para escalar dentro y fuera sin problemas, reduciendo la frecuencia comercial
Añadir filtros de detección de tendencias para evitar señales falsas en mercados que no están en tendencia
Optimice la configuración de parámetros para encontrar las combinaciones óptimas
La estrategia de Stop Loss de Noro es una estrategia simple y práctica de seguimiento de tendencias. Puede rastrear automáticamente las tendencias con riesgo de control de ganancias y pérdidas de stop. Los riesgos más grandes provienen de un posible deslizamiento y una negociación demasiado frecuente debido a una optimización de parámetros deficiente. Al mejorar la técnica de stop loss y optimizar los parámetros, la estrategia puede ser más robusta.
/*backtest start: 2023-12-30 00:00:00 end: 2024-01-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //2019 //Noro //@version=4 strategy("Stop-loss", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings lo = input(-5.0, title = "Long-line, %") tp = input(5.0, title = "Take-profit") sl = input(2.0, title = "Stop-loss") //SMA ma = sma(ohlc4, 3) long = ma + ((ma / 100) * lo) //Orders avg = strategy.position_avg_price if ma > 0 strategy.entry("Long", strategy.long, limit = long) strategy.entry("Take", strategy.short, 0, limit = avg + ((avg / 100) * tp)) strategy.entry("Stop", strategy.short, 0, stop = avg - ((avg / 100) * sl)) //Cancel order if strategy.position_size == 0 strategy.cancel("Take") strategy.cancel("Stop") //Lines plot(long, offset = 1, color = color.black, transp = 0) take = avg != 0 ? avg + ((avg / 100) * tp) : long + ((long / 100) * tp) stop = avg != 0 ? avg - ((avg / 100) * sl) : long - ((long / 100) * sl) takelinecolor = avg == avg[1] and avg != 0 ? color.lime : na stoplinecolor = avg == avg[1] and avg != 0 ? color.red : na plot(take, offset = 1, color = takelinecolor, linewidth = 3, transp = 0) plot(stop, offset = 1, color = stoplinecolor, linewidth = 3, transp = 0)