Seguimiento de la estrategia con paradas dinámicas

El autor:¿ Qué pasa?, fecha: 2023-11-01 13:46:28
Las etiquetas:

img

Resumen general

Esta estrategia genera señales comerciales cuando el precio cruza la EMA y utiliza ATR como un stop loss dinámico para gestionar los riesgos.

Cómo funciona

La lógica clave es:

  1. Calcular ATR como la línea de pérdida de parada, el valor ATR determina la distancia de parada nLoss

  2. La fuente de precios es el precio de cierre por defecto, use Heikin Ashi close si la opción de Heikin Ashi h está habilitada

  3. xATRTrailingStop sigue la línea dinámica de pérdida de parada basada en la comparación de precios con la parada anterior

  4. La posición pos es 1 para largo cuando el precio cruza por encima de la línea de stop loss, -1 para corto cuando cruza por debajo, de lo contrario 0

  5. Las señales de cruce de la EMA, por encima de la EMA es la señal de compra, por debajo es la señal de venta

  6. Entrar en operaciones con señales de compra/venta, salir con señales opuestas

  7. Barras de color basadas en la posición, señales de marca y líneas de stop loss

Esta estrategia sigue las tendencias con paradas dinámicas basadas en ATR. Puede identificar tendencias y gestionar los riesgos de manera efectiva.

Ventajas

Las ventajas son:

  1. La suspensión dinámica basada en ATR se adapta a la volatilidad del mercado

  2. El filtro EMA reduce las señales falsas del ruido

  3. Opcional Heikin Ashi filtra el ruido e identifica la tendencia

  4. Clear long/short position avoids whipsaws from trailing stop Orden para dejar una posición larga o corta

  5. Ayudas visuales como líneas, etiquetas y coloración

  6. Sencilla y fácil de entender la lógica para modificar

  7. Período ATR y multiplicador personalizables para diferentes mercados

En resumen, al combinar el seguimiento de tendencias y las paradas dinámicas, esta estrategia puede detectar tendencias y gestionar bien los riesgos para el swing trading.

Los riesgos

Hay algunos riesgos a tener en cuenta:

  1. Las señales de la EMA pueden retrasarse con los movimientos a corto plazo

  2. Se pueden desencadenar pérdidas de parada frecuentes en mercados agitados

  3. No se consideran los costes como las comisiones

  4. Falta de control de dimensionamiento de la posición

  5. El rendimiento depende del ajuste de parámetros

  6. Riesgo de pérdidas en mercados variados

  7. Requiere monitoreo e intervención

Los riesgos pueden reducirse optimizando los parámetros, agregando filtros, dimensionando las posiciones correctamente, monitoreando el rendimiento e interviniendo cuando sea necesario.

Optimización

Algunas maneras de mejorar la estrategia:

  1. Ajuste de los parámetros ATR para diferentes mercados

  2. Prueba otras medias móviles para filtrar señales

  3. Añadir indicadores de filtro de tendencia para una mayor probabilidad

  4. Implementar límites de tamaño de posición

  5. Añadir condiciones de entrada como el volumen, la distancia de MA

  6. Incorporar costos como comisiones en las paradas

  7. Optimice el tiempo de entrada y salida con más señales

  8. Introducción de operaciones de toma de ganancias o paradas de seguimiento

  9. Optimización automática de parámetros

Al combinar más técnicas para entradas, salidas, filtros y ajuste de parámetros, la estrategia se puede robustecer aún más.

Conclusión

Esta estrategia combina bien las paradas dinámicas y el seguimiento de tendencias. Con paradas efectivas, seguimiento de tendencias sin problemas, facilidad de uso y personalización, es adecuada para las tendencias de negociación de swing. Pero se requiere una gestión adecuada del riesgo, monitoreo y ajuste de parámetros. Cuando se aplica bien en los mercados de tendencias, se pueden lograr buenos resultados. En general, proporciona un enfoque simple y práctico para combinar el comercio de tendencias y la gestión de riesgos.


/*backtest
start: 2022-10-25 00:00:00
end: 2023-10-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="UT Bot Strategy", overlay = true)
//CREDITS to HPotter for the orginal code. The guy trying to sell this as his own is a scammer lol. 

// Inputs
a = input(1,     title = "Key Vaule. 'This changes the sensitivity'")
c = input(10,    title = "ATR Period")
h = input(false, title = "Signals from Heikin Ashi Candles")

xATR  = atr(c)
nLoss = a * xATR

src = h ? security(heikinashi(syminfo.tickerid), timeframe.period, close, lookahead = false) : close

xATRTrailingStop = 0.0
xATRTrailingStop := iff(src > nz(xATRTrailingStop[1], 0) and src[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), src - nLoss),
   iff(src < nz(xATRTrailingStop[1], 0) and src[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), src + nLoss), 
   iff(src > nz(xATRTrailingStop[1], 0), src - nLoss, src + nLoss)))
 
pos = 0   
pos :=	iff(src[1] < nz(xATRTrailingStop[1], 0) and src > nz(xATRTrailingStop[1], 0), 1,
   iff(src[1] > nz(xATRTrailingStop[1], 0) and src < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) 
   
xcolor = pos == -1 ? color.red: pos == 1 ? color.green : color.blue 

ema   = ema(src,1)
above = crossover(ema, xATRTrailingStop)
below = crossover(xATRTrailingStop, ema)

buy  = src > xATRTrailingStop and above 
sell = src < xATRTrailingStop and below

barbuy  = src > xATRTrailingStop 
barsell = src < xATRTrailingStop 

plotshape(buy,  title = "Buy",  text = 'Buy',  style = shape.labelup,   location = location.belowbar, color= color.green, textcolor = color.white, transp = 0, size = size.tiny)
plotshape(sell, title = "Sell", text = 'Sell', style = shape.labeldown, location = location.abovebar, color= color.red,   textcolor = color.white, transp = 0, size = size.tiny)

barcolor(barbuy  ? color.green : na)
barcolor(barsell ? color.red   : na)

strategy.entry("long",   true, when = buy)
strategy.entry("short", false, when = sell)

Más.