Estrategia de retroceso de tendencia basada en indicadores ADX EFI


Fecha de creación: 2023-09-19 17:10:51 Última modificación: 2023-09-19 17:10:51
Copiar: 0 Número de Visitas: 692
1
Seguir
1617
Seguidores

Descripción general

La estrategia utiliza el canal de 50 ciclos medidos y el índice de movimiento ADX, así como una combinación de indicadores de energía EFI para el comercio de tendencias. Cuando el indicador de energía EFI muestra una tendencia de inicio, el retorno a entrar en el campo en la zona de 50 canales medidos. La estrategia se aplica a un período de tiempo de 1 minuto.

Principio de estrategia

  1. Calcula el promedio de un canal de 50 ciclos, con el promedio de su punto más alto en la parte superior y el promedio de su punto más bajo en la inferior.

  2. El cálculo del índice de movimiento ADX determina la fuerza de la tendencia, y solo se considera el comercio cuando la tendencia es fuerte (ADX> 20).

  3. Calcula el indicador de energía EFI para períodos largos (~120 ciclos) y cortos (~15 ciclos). Un indicador de período largo mayor a 0 indica un aumento de energía de tendencia ascendente general, y un indicador de período corto menor a 0 indica una disminución de impulso ascendente a corto plazo.

  4. La operación de compra se realiza cuando el indicador EFI de período largo y corto emite una señal de compra y el precio se reajusta a un canal de línea media de 50.

  5. La operación de venta se realiza cuando el indicador EFI de período largo y corto emite una señal de venta y el precio se reajusta a 50 canales medios de línea.

Análisis de las ventajas

Esta estrategia, combinada con la tendencia, el impulso y la señal de retorno, puede filtrar eficazmente la mayoría de las brechas falsas. Las ventajas específicas son las siguientes:

  1. 50 canales de línea media para determinar con claridad las principales tendencias.

  2. El indicador ADX asegura que se negocie solo cuando la tendencia es clara, evitando el arbitraje en mercados convulsionados.

  3. El indicador EFI juzga que la tendencia aumenta en el momento en que se compra, lo que reduce el riesgo de compra.

  4. Esperar la llamada de retorno para entrar en el campo, puede obtener un mejor riesgo-rendimiento.

  5. Una combinación de indicadores puede filtrar eficazmente el riesgo de una falsa brecha.

Análisis de riesgos

El principal riesgo de esta estrategia es:

  1. En las tendencias fuertes también hay un retroceso más grande, que requiere un amplio margen de pérdida.

  2. En situaciones de crisis, los indicadores EFI pueden emitir señales erróneas y deben combinarse con indicadores de tendencia como el ADX.

  3. Si se vuelve a ajustar en profundidad, se perderá el tiempo de entrada, por lo que se puede ajustar el parámetro de la línea media.

  4. Las variedades de comercio único no pueden dispersar eficazmente el riesgo sistémico del mercado.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Prueba con más variedades y busca el alcance general de los parámetros de la estrategia.

  2. Aumentar las estrategias de stop loss para bloquear las ganancias mediante el seguimiento de los stops.

  3. Optimización de parámetros, optimización de parámetros de indicadores como ADX, EFI y otros.

  4. Aumentar los algoritmos de aprendizaje automático para usar el entrenamiento de datos grandes para determinar si las tendencias son reales o falsas.

  5. Aumentar el comercio en varios períodos de tiempo, utilizando la tecnología de espaciado para controlar las posiciones entre los diferentes períodos.

  6. Evaluar e introducir más indicadores de filtración de tendencias para mejorar la calidad de la señal.

Resumir

La estrategia en su conjunto es una estrategia de retroceso de tendencias muy adecuada para los principiantes. Combina varias señales, como la tendencia, el dinamismo y el retroceso, para filtrar eficazmente las brechas falsas. Mediante la optimización de la estrategia de parada de pérdidas, la configuración de parámetros, el ciclo de tiempo, etc., la estrategia puede convertirse en un sistema de seguimiento de tendencias potente. En general, la estrategia es una estrategia de comercio de tendencias muy práctica que vale la pena estudiar y aplicar.

Código Fuente de la Estrategia
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
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/
// © trent777brown

//@version=5
// strategy("adx efi 50 ema channel, trend pullback", overlay=true, margin_long=100, margin_short=100, currency=currency.USD, initial_capital= 100000, close_entries_rule="ANY")

//bollingerbands
[basis, upperband, lowerband]= ta.bb(ohlc4, 50, 3) 
[basis2, upperband2, lowerband2]= ta.bb(ohlc4, 50, 2)
psar= ta.sar(.1, .1, .09)
ema50= ta.ema(hlc3, 50) 
ema50hi= ta.ema(high, 50) 
ema50lo= ta.ema(low, 50) 
ema18= ta.wma(hlc3, 15)
wma9= ta.wma(open, 9) 
wma5= ta.wma(ohlc4, 5) 
ema34= ta.rma(hlc3, 10)
[macdline, signalline, histline]= ta.macd(hlc3, 5, 34, 5) 
[macdline2, signalline2, histline2]= ta.macd(hlc3, 15,70, 24) 
[diplus, diminus, adx]= ta.dmi(20, 20) 
[diplus2, diminus2, adx2]= ta.dmi(12, 12)
rsi= ta.rsi(hlc3, 14)
rsisma= ta.sma(rsi, 10) 
stoch= ta.stoch(close, high, low, 21)
k= ta.wma(stoch, 3)
d= ta.wma(k, 3)
trendline5= ta.wma(hlc3, 300) 
trendline9= ta.wma(open, 540) 
trendline18= ta.wma(open, 1080)
atr=ta.atr(14)
plot(psar, color=color.red, style=plot.style_circles)
plot(ema50, color=color.white, linewidth=4) 
plot(ema50hi, color=color.yellow, linewidth=4)
plot(ema50lo, color=color.yellow, linewidth=4)
plot(ema34, color=color.aqua, linewidth=4)
plot(wma9, color=color.gray, linewidth=4) 
plot(wma5, color=color.lime, linewidth=4) 
plot(trendline18, color=color.orange, linewidth=4) 
plot(upperband, color=color.navy, linewidth=4) 
plot(lowerband, color=color.navy, linewidth=4)
plot(upperband2, color=color.navy, linewidth=4)
plot(lowerband2, color=color.navy, linewidth=4)
plot(trendline9, color=color.maroon, linewidth=4)
plot(trendline5, color=color.yellow, linewidth=4)


efi = ta.rma(ta.change(close) * volume, 15)
efi2= ta.rma(ta.change(close) * volume, 120)

buy= efi2 > 0 and efi < 0 and efi[1] < efi  and adx >= 20 and open < ema50hi
sell= efi2 < 0 and efi > 0 and efi[1] > efi and adx >= 20 and open > ema50lo

//ell= rsi > 50 and ta.crossunder(wma5, wma9) and psar > high and ema18 <= ema50hi and macdline > 0 and macdline < signalline
//buy= ta.crossunder(close, ema50) and rsi < 50 and adx2 < adx2[1] and k < 25 and psar > high
//uy= rsi < 60 and ta.crossover(wma5, wma9)  and psar < low and ema18 >= ema50 and macdline2 > 0 and diplus2 < 30 // and histline2 < 0  
//buy=  ema18 > ema50 and ta.crossunder(rsi, 45) and open < ema50hi and adx2[3] < adx2 and diplus2 < 25 and macdline < 0  and adx < 10
//sell= ta.crossover(close, ema50) and rsi > 50 and adx2 < adx2[1] and k > 75 and psar < low
//ell= ema18 < ema50 and ta.crossover(rsi, 60) and open > ema50lo and diminus2 < 30 and macdline2 < 0 and adx2[2] < adx2 
//buy sell conditions 1
//buy= ta.crossover(wma5, ema18) and ema18 > ema50lo and diplus > 22 and diminus < 22 and adx > 15
//ell= ta.crossover(psar, high) and macdline2 < signalline2 and rsi < rsisma
//when conditions
buytrig= ema34 >= ema50lo
selltrig= ema34 <= ema50hi
//strategy
sl= low - atr * 8
tp= high +  atr * 4
sellsl= high + atr * 8
selltp= low - atr * 4
if(buy)
    strategy.entry("buy", strategy.long, when= buytrig)
    strategy.exit("exit buy", "buy", limit= tp, stop= sl)
    strategy.close("close", when= ta.crossunder(ema34, ema50lo))
if(sell)
    strategy.entry("sell", strategy.short, when= selltrig)
    strategy.exit("exit sell", "sell", limit= selltp, stop= sellsl)