Estrategia de supertendencia basada en ATR y stop loss dinámico
Resumen
Esta estrategia diseña una línea de stop loss móvil y una línea de reversión basada en el indicador de Rango Verdadero Promedio (ATR). Ajusta el stop loss de forma dinámica según los movimientos del precio, es decir, un trailing stop loss. Específicamente, si el precio se mueve más del 1%, la línea de stop loss se desplaza en la dirección de las ganancias en una proporción fija. Cuando el precio rompe la línea de stop loss, la posición se cierra automáticamente. Esto permite asegurar ganancias y también reducir pérdidas.
Principio de la Estrategia
La estrategia utiliza el indicador ATR para calcular la línea de stop loss. La fórmula específica es la siguiente:
atr = multplierFactor * atr(barsBack)
longStop = hl2 - atr
shortStop = hl2 + atr
Donde multplierFactor es el factor de amplificación del ATR y barsBack es el período del ATR. Cuanto mayor sea el valor del ATR, mayor será la volatilidad del mercado.
A partir del valor del ATR se calculan la línea de stop loss para posiciones largas (longStop) y para posiciones cortas (shortStop). Cuando el precio supera estas líneas, se genera una señal de trading.
Además, la estrategia introduce una variable direction para determinar la tendencia:
direction = 1
direction := nz(direction[1], direction)
direction := direction == -1 and close > shortStopPrev ? 1 : direction == 1 and close < longStopPrev ? -1 : direction
Si direction es 1, indica una tendencia alcista; si es -1, indica una tendencia bajista.
Según el valor de la variable de dirección, se dibujan líneas de stop loss de diferentes colores:
if (direction == 1)
valueToPlot := longStop
colorToPlot := color.green
else
valueToPlot := shortStop
colorToPlot := color.red
De esta manera, se puede ver claramente la dirección de la tendencia actual y la posición de la línea de stop loss.
Mecanismo de Trailing Stop
El punto clave de esta estrategia es la introducción de un mecanismo de trailing stop, que permite ajustar la línea de stop loss en tiempo real según la evolución del precio.
La lógica específica es la siguiente:
strategyPercentege = (close - updatedEntryPrice) / updatedEntryPrice * 100.00
rideUpStopLoss = hasOpenTrade() and strategyPercentege > 1
if (rideUpStopLoss)
stopLossPercent := stopLossPercent + strategyPercentege - 1.0
newStopLossPrice = updatedEntryPrice + (updatedEntryPrice * stopLossPercent) / 100
stopLossPrice := max(stopLossPrice, newStopLossPrice)
updatedEntryPrice := stopLossPrice
Si el precio sube más del 1% respecto al precio de entrada, la línea de stop loss se desplaza hacia arriba de forma dinámica. El ajuste corresponde a la parte que supera el 1%.
Esto permite asegurar más ganancias y también reduce las pérdidas.
Análisis de Ventajas
En comparación con las estrategias tradicionales de stop loss móvil, la mayor ventaja de esta estrategia es que puede ajustar la línea de stop loss de forma dinámica según las condiciones del mercado. Las ventajas específicas son:
-
Mayor aseguramiento de ganancias en mercados con tendencia
El mecanismo de trailing stop permite que la línea de stop loss se desplace constantemente hacia la dirección de las ganancias, asegurando mayores beneficios cuando el mercado continúa fortaleciéndose.
-
Reducción de saltos de stop loss en mercados laterales
Cuando la tendencia del mercado cambia, las líneas de stop loss fijas pueden ser fácilmente superadas. En cambio, la línea de stop loss de esta estrategia se basa en la volatilidad del mercado, siguiendo razonablemente los cambios de precio y evitando ser superada durante consolidaciones.
-
Operación simple y fácil de automatizar
La estrategia se basa completamente en cálculos de indicadores, sin lógica compleja de juicio de tendencia. Se puede automatizar de manera muy sencilla.
-
Parámetros personalizables, aplicable a diferentes instrumentos
Parámetros como el período del ATR, el factor de amplificación y el margen de stop loss se pueden personalizar, lo que permite optimizar la estrategia para diferentes instrumentos y hacerla más universal.
Análisis de Riesgos
A pesar de las muchas ventajas, es necesario tener en cuenta los siguientes riesgos:
-
Incapacidad para identificar puntos de giro de tendencia, riesgo de comprar en máximos y vender en mínimos
La estrategia no incorpora lógica para determinar el final de una tendencia. Al final de un mercado alcista, es fácil incurrir en compras en máximos y ventas en mínimos.
-
Una configuración incorrecta de parámetros puede ampliar las pérdidas
Si el período del ATR se configura demasiado corto, la línea de stop loss será demasiado sensible, pudiendo ser activada frecuentemente por movimientos laterales.
-
Riesgo de ser detenido en un rebote desde mínimos
La estrategia no considera puntos de quiebre (fractales) como niveles de soporte para el stop loss. Por lo tanto, los rebotes a corto plazo también pueden provocar la salida del mercado.
Para abordar los riesgos anteriores, se pueden realizar optimizaciones en los siguientes aspectos:
- Incorporar indicadores de filtro de tendencia para anticipar reversiones.
- Realizar pruebas de optimización de parámetros para seleccionar la mejor combinación.
- Ampliar el rango del stop loss cerca de niveles de soporte específicos.
Direcciones de Optimización
La estrategia tiene margen para una mayor optimización:
-
Combinar con el análisis de patrones de velas
Se pueden identificar patrones típicos de velas, como divergencias, estrellas fugaces, etc., para evaluar la posibilidad de reversión de la tendencia. Esto puede evitar el riesgo de comprar en máximos y vender en mínimos.
-
Optimización dinámica de parámetros de trailing
Se puede hacer que parámetros como el período del ATR y el factor de amplificación también varíen dinámicamente, utilizando períodos de ATR más largos y rangos de stop loss más amplios en mercados de alta volatilidad.
-
Combinar con modelos de aprendizaje automático
Utilizar modelos de aprendizaje profundo como LSTM o RNN para predecir el posible rango de precios futuro y ajustar dinámicamente la distancia del stop loss.
Resumen
En general, esta estrategia utiliza el indicador ATR para diseñar una línea de stop loss móvil e introduce un mecanismo de trailing stop, que permite ajustar la posición de la línea de stop loss en tiempo real según los cambios del mercado. Esto logra un mayor aseguramiento de ganancias y también reduce el riesgo. Mediante optimizaciones adicionales, la estrategia puede volverse más adaptable a diversas condiciones del mercado, convirtiéndose en una estrategia de trading de amplia aplicabilidad.
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
// ------------------------------------------------------------------------------ 1

