La Estrategia de tendencia de seguimiento de largo plazo es una estrategia que rastrea las tendencias de precios utilizando promedios móviles dinámicos. Determina la tendencia actual calculando los promedios móviles de los precios más altos y más bajos durante un período y lo combina con ATR para stop loss dinámico y tomar ganancias.
La estrategia primero calcula los promedios móviles de los precios más altos y más bajos durante un período (default 200 días) y toma su punto medio como la línea de base. Luego mide la desviación del precio de la línea de base. Si el precio está por encima de la línea de base en 1 ATR (0,5 veces el ATR de 10 días por defecto), se considera una tendencia alcista. Si el precio está por debajo de la línea de base en 1 ATR, se considera una tendencia bajista.
Cuando el precio vuelve a la línea de base, se activan las señales de salida. Además, el ATR dinámico permite detener la pérdida y obtener ganancias para seguir la tendencia principal, evitando el exceso de negociación en fluctuaciones menores.
Los riesgos pueden reducirse ajustando los parámetros de ATR, agregando filtros para configuraciones de alta probabilidad y evaluando las condiciones del mercado y el apetito por el riesgo.
La estrategia de tendencia sigue a largo sólo es un sistema de comercio de tendencia fácil de usar en general. Identifica la dirección de la tendencia utilizando promedios dinámicos y establece controles de riesgo con paradas basadas en ATR. Puede capturar efectivamente los cambios rentables en los mercados de tendencia. Se deben evitar los mercados de rango para evitar los golpes. Se pueden hacer mejoras adicionales mediante el ajuste de parámetros, la adición de filtros e integración de técnicas de aprendizaje automático.
/*backtest start: 2022-10-10 00:00:00 end: 2023-10-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Trend Following Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length") smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length") atr_length = input(10, type=input.integer, minval=1, title="ATR Length") atr_multiplier = input(0.5, type=input.float, minval=0.5, title="ATR Multiplier") vola = atr(atr_length) * atr_multiplier price = sma(close, 3) l = ema(lowest(low, lookback_length), smoother_length) h = ema(highest(high, lookback_length), smoother_length) center = (h + l) * 0.5 upper = center + vola lower = center - vola trend = ema(price > upper ? 1 : (price < lower ? -1 : 0), 3) c = trend < 0 ? upper : lower pcenter = plot(center, transp=100) pclose = plot(close, transp=100) pc = plot(c, transp=100) buy_signal = crossover(trend, 0.0) sell_signal = crossunder(trend, 0.0) strategy.entry("Buy", strategy.long, when=buy_signal) strategy.close("Buy", when=sell_signal) bgcolor(trend >= 0 ? color.green : color.red, transp=95) fill(pc, pclose, color=trend >= 0 ? color.green : color.red)