Estrategia de seguimiento de tendencias con doble media móvil


Fecha de creación: 2023-10-25 11:42:23 Última modificación: 2023-10-25 11:42:23
Copiar: 3 Número de Visitas: 875
1
Seguir
1617
Seguidores

Estrategia de seguimiento de tendencias con doble media móvil

Descripción general

Esta estrategia utiliza el indicador de calificación del índice de dirección media ((ADXR) para identificar la tendencia del mercado y, en combinación con la formación de una señal de comercio de doble línea de equilibrio, es una estrategia típica de seguimiento de tendencias. El indicador ADXR puede identificar eficazmente los cambios en la tendencia, mientras que la doble línea de equilibrio puede filtrar aún más algunas señales falsas.

Principio de estrategia

  1. Calcula el indicador ADXR. ADX representa el índice de dirección promedio, que refleja la intensidad de la tendencia. ADXR trata el ADX de manera suave, lo que le permite mostrar mejor la tendencia.

  2. Establece un doble umbral para el indicador ADXR, con un alza en el ADXR al atravesar el primer umbral y un descenso al atravesar el segundo umbral. Esto indica que se encuentra en un estado de tendencia.

  3. La dirección de la posición se determina por la señal ADXR. Si el ADXR pasa el primer umbral, haga más; Si el ADXR pasa el segundo umbral, haga un descuento.

  4. Combinado con una señal de filtración de doble línea uniforme. Solo hace más cuando el precio está por encima de la línea rápida y hace vacío cuando el precio está por debajo de la línea lenta. Este filtro evita el error de negociación cuando la tendencia se invierte.

  5. El color de la línea K se dibuja en función de la dirección de la posición.

Análisis de las ventajas

  1. El ADXR suaviza los movimientos de precios para identificar tendencias y evitar el riesgo de negociación de los ajustes de los mercados.

  2. El filtro de doble línea uniforme reduce el retroceso y evita las pérdidas de la inversión de tendencia.

  3. La combinación de un indicador de tendencia y una línea de paridad doble garantiza que las operaciones se realicen con la tendencia y controla el riesgo, lo que es muy adecuado para un mercado de tendencia.

  4. La estrategia es clara y fácil de entender, la configuración de los parámetros es flexible y se puede ajustar según sea necesario para adaptarse a diferentes entornos de mercado.

Análisis de riesgos

  1. La configuración incorrecta de los parámetros del indicador ADXR puede conducir a la imposibilidad de capturar la conversión de la tendencia a tiempo. Se debe configurar con cuidado los parámetros de ADXR según el mercado específico.

  2. La configuración incorrecta de los parámetros de la doble línea media también puede conducir a la filtración de demasiadas señales y a la pérdida de oportunidades de negociación. Los parámetros de la doble línea media deben ajustarse según el mercado.

  3. Cualquier indicador puede emitir una señal errónea y debe verificarse en combinación con tendencias de mayor nivel para evitar ser engañado.

  4. En una tendencia convulsiva, se debe reducir el tamaño de la posición para evitar que las pérdidas se extiendan.

Dirección de optimización

  1. Se puede combinar con otros indicadores para verificar la señal ADXR, como MACD, banda de Bryn, etc., para mejorar la precisión de la señal.

  2. Se pueden agregar estrategias de stop loss, como stop loss móvil, stop loss temporal, etc., para controlar la pérdida individual.

  3. Se pueden optimizar los parámetros en función de los cambios en el mercado, como la medianía de ciclo más larga cuando se reduce la eficiencia del mercado, la medianía de ciclo más corta en los mercados eficientes, etc.

  4. Se puede combinar la gestión de capital y estrategias de gestión de posiciones, como la participación fija, Martingale, etc., para controlar el riesgo global.

Resumir

Esta estrategia en general es una estrategia típica de seguimiento de tendencias, que utiliza el indicador ADXR para ayudar a determinar la dirección de la tendencia y el filtro de doble línea uniforme para reducir la retirada. Las ventajas de la estrategia son simples y claras, fáciles de implementar y se pueden ajustar los parámetros de acuerdo con diferentes entornos de mercado.

Código Fuente de la Estrategia
/*backtest
start: 2023-10-17 00:00:00
end: 2023-10-24 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 04/05/2018
// The Average Directional Movement Index Rating (ADXR) measures the strength 
// of the Average Directional Movement Index (ADX). It's calculated by taking 
// the average of the current ADX and the ADX from one time period before 
// (time periods can vary, but the most typical period used is 14 days).
// Like the ADX, the ADXR ranges from values of 0 to 100 and reflects strengthening 
// and weakening trends. However, because it represents an average of ADX, values 
// don't fluctuate as dramatically and some analysts believe the indicator helps 
// better display trends in volatile markets.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
fADX(Len) =>
    up = change(high)
    down = -change(low)
    trur = rma(tr, Len)
    plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur)
    minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur)
    sum = plus + minus 
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len)

strategy(title="Average Directional Movement Index Rating Backtest", shorttitle="ADXR")
LengthADX = input(title="Length ADX", defval=14)
LengthADXR = input(title="Length ADXR", defval=14)
reverse = input(false, title="Trade reverse")
Signal1 = input(13, step=0.01)
Signal2 = input(45, step=0.01)
hline(Signal1, color=green, linestyle=line)
hline(Signal2, color=red, linestyle=line)
xADX = fADX(LengthADX)
xADXR = (xADX + xADX[LengthADXR]) / 2
pos = iff(xADXR < Signal1, 1,
       iff(xADXR > Signal2, -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 ) 
plot(xADXR, color=green, title="ADXR")