Tendencia del comerciante Bandas Estrategia de prueba de retroceso basada en la media móvil del comerciante de tendencia

El autor:¿ Qué pasa?, fecha: 2023-12-11 13:12:44
Las etiquetas:

img

Resumen general

La idea principal de esta estrategia es juzgar las tendencias de precios y generar señales de negociación utilizando promedios móviles y bandas de Bollinger. Específicamente, primero calcula el rango verdadero promedio (ATR) durante un cierto período para obtener el rango de volatilidad, luego combina los precios más altos y más bajos para formar un canal limitante. Si el precio rompe a través de este canal, el precio de cierre se establece como el precio del canal. Después de eso, calcula el promedio móvil de los precios cerrados limitados, que se llama promedio móvil de Trend Trader (AVR). Finalmente, dibuja bandas de Bollinger por encima y por debajo del promedio móvil de Trend Trader para formar señales de negociación.

Estrategia lógica

La estrategia primero calcula el rango ATR y forma un canal limitante combinado con los precios más altos y más bajos. El precio de cierre se limitará al precio del canal solo cuando rompa el canal. Después de eso, calcula el promedio móvil de los precios de cierre limitados, que refleja la dirección de la tendencia a mediano y largo plazo. Por último, dibuja una banda superior y una banda inferior paralela al promedio móvil de Trend Trader como bandas de Bollinger.

El núcleo de juzgar la tendencia radica en el promedio móvil de Trend Trader, que encarna la dirección de la tendencia a medio y largo plazo.

Ventajas

  1. El ATR y el rango de precios crean un canal adaptativo para rastrear la volatilidad del mercado
  2. Trend Trade AVR juzga claramente la tendencia a medio y largo plazo
  3. Las bandas de Bollinger filtran las falsas rupturas y mejoran la calidad de la señal
  4. El sistema refleja una fuerte tendencia, la tenencia larga puede obtener buenos rendimientos

Los riesgos

  1. La retención a largo plazo puede sufrir pérdidas enormes debido a algunos eventos repentinos.
  2. El establecimiento incorrecto de parámetros puede dar lugar a una sobrecomercialización, un aumento de los costes de transacción y un deslizamiento
  3. El rendimiento depende en gran medida del ajuste de parámetros

Soluciones:

  1. Reducir adecuadamente el período de retención y establecer el stop loss
  2. Optimiza los parámetros para dar a las señales suficiente amortiguador
  3. Utilice los datos históricos y el comercio en vivo para ajustar los parámetros

Direcciones de optimización

  1. Configuración de parámetros de investigación en diferentes mercados y plazos
  2. Prueba si otros indicadores pueden filtrar las falsas rupturas
  3. Trate de incorporar el stop loss al límite por pérdida comercial

Conclusión

La estrategia es en general un fuerte sistema de seguimiento de tendencias. Puede juzgar la tendencia a medio y largo plazo y generar señales comerciales combinadas con bandas de Bollinger. A través de la optimización de parámetros, puede obtener alfa estable. Pero el control de riesgos también es importante para evitar grandes pérdidas debido a algunos eventos repentinos al mantener a largo plazo. En términos generales, la estrategia merece más investigación y optimización para alfa sostenible a largo plazo.


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

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 16/10/2018
// This is plots the indicator developed by Andrew Abraham 
// in the Trading the Trend article of TASC September 1998  
// It was modified, result values wass averages.
// And draw two bands above and below TT line.
////////////////////////////////////////////////////////////
strategy(title="Trend Trader Bands Backtest", overlay = true)
Length = input(21, minval=1),
LengthMA = input(21, minval=1),
BandStep = input(20),
Multiplier = input(3, minval=1)
reverse = input(false, title="Trade reverse")
avgTR      = wma(atr(1), Length)
highestC   = highest(Length)
lowestC    = lowest(Length)
hiLimit = highestC[1]-(avgTR[1] * Multiplier)
loLimit = lowestC[1]+(avgTR[1] * Multiplier)
ret = 0.0
ret :=  iff(close > hiLimit and close > loLimit, hiLimit,
         iff(close < loLimit and close < hiLimit, loLimit, nz(ret[1], 0)))
nResMA = ema(ret, LengthMA)        
pos = 0.0
pos := iff(close < nResMA - BandStep , -1,
       iff(close > nResMA + BandStep, 1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
barcolor(pos == -1 ? red: pos == 1 ? green : blue )
plot(nResMA, color= blue , title="Trend Trader AVR")
plot(nResMA+BandStep, color= red , title="Trend Trader UpBand")
plot(nResMA-BandStep, color= green, title="Trend Trader DnBand")

Más.