Estrategia ADX para el seguimiento de los indicadores de riesgo

El autor:¿ Qué pasa?, Fecha: 2023-10-10 10:32:48
Las etiquetas:

Resumen de las actividades

La estrategia RSI Tracking ADX es una estrategia de seguimiento de tendencias que combina el indicador RSI y el indicador ADX. Utiliza el indicador RSI para determinar las condiciones de sobrecompra y sobreventa, y el indicador ADX para medir la fuerza de la tendencia, permitiendo entradas durante tendencias alcistas cuando no se sobrecompra y salidas cuando las tendencias se debilitan o se sobrecompran.

Estrategia lógica

La estrategia utiliza principalmente una combinación del indicador RSI y el indicador ADX para determinar entradas y salidas.

Condiciones de entrada:

  1. La SMA de 20 días sube;

  2. El ADX subió más de 0,2 respecto al día anterior, lo que indica una tendencia de fortalecimiento.

  3. RSI por debajo de 85 para evitar el estado de sobrecompra;

O también:

  1. La SMA de 20 días sube;

  2. ADX en alza, pero inferior a 0,2, lo que indica una tendencia leve;

  3. RSI por debajo de 50, espacio para el rebote.

Condiciones de salida:

  1. RSI por encima de 75, estado de sobrecompra;

  2. ADX sube ligeramente, tendencia débil;

O también:

  1. RSI por encima de 75, estado de sobrecompra;

  2. El ADX sube fuertemente, con una fuerte tendencia.

O también:

La SMA de 20 días está bajando.

La estrategia utiliza el RSI para sobrecomprado/sobrevendido y el ADX para entrar en tendencia durante tendencias alcistas cuando no está sobrecomprado y salir cuando está sobrecomprado o la tendencia se debilita.

Ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. La combinación de RSI y ADX permite una tendencia más precisa y lecturas de sobrecompra / sobreventa para mejores entradas y salidas.

  2. ADX mide la fuerza de la tendencia para evitar salidas de la sierra durante la consolidación.

  3. El RSI utiliza parámetros sueltos para seguir las tendencias a mediano y largo plazo y reducir el exceso de operaciones.

  4. Lógica sencilla y fácil aplicación, adecuada para las explotaciones a largo plazo.

  5. Los parámetros configurables permiten la flexibilidad.

Los riesgos

Los principales riesgos son:

  1. El retraso del ADX puede perder los puntos de inflexión de la tendencia que conducen a mayores pérdidas.

  2. El stop loss puede desencadenarse tarde durante las caídas de precios similares a un acantilado, aumentando las pérdidas.

  3. Los parámetros del RSI demasiado flojos pueden causar que las tenencias se sobrecompren durante demasiado tiempo.

  4. Los parámetros ADX demasiado sensibles pueden desencadenar erroneamente salidas durante tendencias débiles.

  5. Las existencias pueden comportarse de manera anormal durante los cambios en el régimen del mercado.

Gestión de riesgos:

  1. Se utilizarán períodos de ADX más cortos para la sensibilidad.

  2. Un stop loss más estricto para limitar las pérdidas.

  3. Acortar los períodos de RSI para evitar una sobrecompra prolongada.

  4. Evite que los parámetros de ADX sean demasiado sensibles.

  5. Anulación manual durante cambios significativos en el mercado.

Mejoras

La estrategia se puede optimizar mediante:

  1. Probando períodos de RSI para mejores parámetros.

  2. Optimización de los períodos ADX para la capacidad de captura de tendencias.

  3. Añadiendo otros indicadores como el MACD para confirmación.

  4. Probando combinaciones de promedios móviles para mejorar las entradas.

  5. Añadir la toma de ganancias y detener las pérdidas para mejorar la relación riesgo-recompensa.

  6. Juzgar los regímenes de mercado para anularlos manualmente en los puntos de inflexión.

Conclusión

La estrategia RSI Tracking ADX es una estrategia de seguimiento de tendencias efectiva pero simple. Sinergiza las fortalezas de RSI y ADX para un análisis preciso de tendencias y sobrecompras/superventas. La lógica es sencilla y fácil de implementar con flexibilidad de optimización. Se necesita precaución contra el retraso de ADX y la configuración de stop loss. En general, es adecuado para el seguimiento de tendencias a medio y largo plazo y puede proporcionar ganancias constantes.


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

//Copyright by Reed Asset Management registered in Shanghai, China
//该策略为上海蘆田资产管理有限公司制
//@version=2
strategy("[蘆田策略]ADX+RSI", overlay=true)

//ADX
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
	up = change(high)
	down = -change(low)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
	minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)
	[plus, minus]

adx(dilen, adxlen) => 
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)

sig = adx(dilen, adxlen)

plot(sig, color=red, title="ADX")

//ADX+RSI Strategy Long Entry
longEntry1 = sma(close, 20) > sma(close, 20)[1] //check if the ADX is rising
longEntry2 = (adx(14, 14) - adx(14, 14)[1]) > 0.2
longEntry3 = rsi(close, 14) < 85
longEntry4 = (adx(14, 14) - adx(14, 14)[1]) > 0
longEntry5 = (adx(14, 14) - adx(14, 14)[1] ) < 0.2
longEntry6 = rsi(close, 14) < 50

longCondition1 = longEntry1 and longEntry2 and longEntry3
longCondition2 = longEntry1 and longEntry4 and longEntry5 and longEntry6
if(longCondition1 or longCondition2)
    strategy.entry("long", strategy.long)

//ADX+RSI Strategy Long Exit
longExit1 = rsi(close, 9) > 75
longExit2 = (adx(14, 14) - adx(14, 14)[1]) > 0
longExit3 = (adx(14, 14) - adx(14, 14)[1] ) < 0.2
longExit4 = (adx(14, 14) - adx(14, 14)[1]) > 0.2
longExit5 = sma(close, 20) < sma(close,20)[1]

longExitCondition1 = longExit1 and longExit2 and longExit3
longExitCondition2 = longExit1 and longExit4
longStop1 = strategy.position_avg_price + 4 * tr
longExitCondition3 = longExit5
longStop2 = sma(close, 20)

strategy.close_all(when = longExitCondition1)
if (longExitCondition2)
    strategy.exit("exit", "long", stop = longStop1)
if (longExitCondition3)
    strategy.exit("exit", "long", stop = longStop2)
    

//Strategy


Más.