La estrategia ATR de seguimiento de stop loss es una estrategia de negociación basada en la media real del indicador de amplitud de onda para establecer un punto de parada de forma dinámica. La estrategia se aplica a las variedades de operaciones de divisas con gran fluctuación de precios, para establecer un stop loss mediante el seguimiento dinámico de las fluctuaciones del mercado y al mismo tiempo controlar el riesgo para capturar ganancias en las grandes tendencias.
La estrategia forma un canal de negociación mediante el cálculo del indicador AVERAGE (la línea media del precio) y el DIFF de la vía ascendente y el DIFFLOW de la vía descendente calculados en base al indicador ATR. Hacer un alza cuando el precio está en la vía ascendente DIFF, hacer una caída cuando el precio está en la vía descendente DIFFLOW, usar el ATR para establecer un stop loss dinámico y alcanzar una posición de paridad en el momento de la parada.
En concreto, la estrategia comienza por calcular el AVERAGE móvil simple del precio y el indicador ATR, y multiplica el valor de ATR por un factor multiplicador para calcular el DIFF ascendente y el DIFFLOW descendente. Esto forma un canal de negociación cuyos límites ascendentes y descendentes son determinados por el DIFF y el DIFFLOW.
De esta manera, la estrategia puede hacer más deuda pública para capturar ganancias en grandes tendencias, mientras controla el riesgo mediante el seguimiento dinámico de los paros ATR, adecuado para variedades con mayor volatilidad.
La estrategia tiene las siguientes ventajas:
El uso de un indicador ATR para el stop loss dinámico permite establecer un punto de stop loss flexible en función de la volatilidad del mercado, evitando que el stop loss esté demasiado cerca o demasiado lejos.
Establecer un canal de negociación para capturar oportunidades de retorno de la media en una gran tendencia. La estrategia puede obtener una mejor utilización de capital cuando los precios se estancan en el canal.
Continuar haciendo más deuda pública para participar en la tendencia, sin tener que predecir que los precios se romperán hacia arriba o hacia abajo, y seguir la tendencia para obtener mejores ganancias.
Establecimiento de parámetros y reglas de negociación simples, fáciles de entender e implementar, adecuados para el comercio automático.
La utilización de los fondos es alta, no hay necesidad de predecir la dirección de la ruptura, y el comercio continuo ofrece más oportunidades de obtener ganancias.
La estrategia también tiene algunos riesgos a tener en cuenta:
El ATR es demasiado alto, lo que hace que el límite de pérdidas sea demasiado largo para controlar el riesgo de manera efectiva. Se recomienda que el coeficiente ATR sea de 1 a 3 veces el ATR diario.
En el mercado de liquidación, el intercambio de inversiones es activo, los precios fluctúan mucho, y los paros se activan con frecuencia. Se puede ajustar adecuadamente el coeficiente ATR para reducir la frecuencia de los paros.
Algunas veces el precio puede romper el canal y luego volver, en este caso la estrategia genera pérdidas. Se puede combinar con un filtro de tendencia, que solo entra en juego cuando la dirección de la tendencia rompe el canal.
Cuando hay una gran variación, el stop loss puede no tener un buen efecto de protección. Se puede considerar agregar la configuración de stop loss máximo para evitar un stop loss excesivo.
La estrategia se puede optimizar de la siguiente manera:
Optimice los parámetros ATR para encontrar el coeficiente de multiplicador ATR adecuado, que no solo pueda rastrear el stop loss, sino que también sea demasiado sensible.
Incorporar indicadores de juicio de tendencia, hacer más solo cuando la tendencia es al alza, hacer vacío cuando la tendencia es a la baja, evitar el comercio fuera de la tendencia.
Prueba los parámetros para las diferentes variedades y encuentra la combinación adecuada para cada variedad.
Optimización de las oportunidades de ingreso, que se puede considerar al entrar en el eje central de la brecha.
El objetivo es aumentar el tamaño de las reservas, pero también controlar las pérdidas globales.
La estrategia de seguimiento de pérdidas de ATR captura ganancias mediante la creación de un canal de negociación, la negociación continua en una gran tendencia, y el uso de la configuración de pérdidas dinámicas de ATR para controlar el riesgo. La estrategia es adecuada para variedades con mayor volatilidad y puede obtener una mejor utilización de fondos. En la práctica, se necesitan parámetros de optimización y se puede considerar la adición de un juicio de tendencia para mejorar aún más.
/*backtest
start: 2023-09-18 00:00:00
end: 2023-09-25 00:00:00
period: 5m
basePeriod: 1m
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/
// © Investoz
//@version=4
strategy("ATR Strategy FOREX", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
len = input(26, type=input.integer, minval=1, title="Length")
mul = input(1, type=input.float, minval=0, title="Length")
mullow = input(2, type=input.float, minval=0, title="Length")
price = sma(close, 1)
average = ema(close, len)
diff = atr(len) * mul
difflow = atr(len) * mullow
bull_level = average + diff
bear_level = average - difflow
bull_cross = crossunder(price, bear_level)
bear_cross = crossunder(bull_level, price)
FromMonth = input(defval = 8, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 18, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2008, title = "From Year", minval = 2008)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 2020, title = "To Year", minval = 2019)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
startTimeOk() => true
if (startTimeOk())
strategy.entry("KOP", strategy.long, when=bull_cross)
strategy.close("KOP", when=bear_cross)
strategy.entry("SALJ", strategy.short, when=bear_cross)
strategy.close("SALJ", when=bull_cross)
plot(price, title="price", color=color.black, transp=50, linewidth=2)
a0 = plot(average, title="average", color=color.red, transp=50, linewidth=1)
a1 = plot(bull_level, title="bull", color=color.green, transp=50, linewidth=1)
a2 = plot(bear_level, title="bear", color=color.red, transp=50, linewidth=1)
fill(a0, a1, color=color.green, transp=97)
fill(a0, a2, color=color.red, transp=97)