Estrategia de trading inteligente G Trend EMA ATR

EMA ATR
Fecha de creación: 2024-06-14 15:35:15 Última modificación: 2024-06-14 15:35:15
Copiar: 8 Número de Visitas: 713
1
Seguir
1617
Seguidores

Estrategia de trading inteligente G Trend EMA ATR

Descripción general

Esta estrategia utiliza el indicador de canal G para identificar la dirección de la tendencia del mercado y, al mismo tiempo, combina los indicadores EMA y ATR para optimizar los puntos de entrada y salida. La idea principal de la estrategia es: cuando el precio rompe la trayectoria superior del canal G y hace más en la parte inferior del EMA, rompe la trayectoria inferior del canal G y hace vacío en la parte superior del EMA.

Principio de estrategia

  1. Calculación de la subida y bajada del canal G: la subida y bajada del canal G se calcula utilizando el precio de cierre actual y el precio más bajo del precio más alto anterior.
  2. Determinar la dirección de la tendencia: juzgar la tendencia de los vacíos observando la relación entre el precio y la subida y bajada del canal G.
  3. Cálculo de la EMA: Calcula el valor de la EMA del período especificado.
  4. Cálculo del ATR: Cálculo del ATR para el período especificado.
  5. Para determinar las condiciones de compra y venta, el precio se activa cuando el canal G se sale de la vía y se encuentra por debajo de la EMA. El precio se activa cuando el canal G se sale de la vía y se encuentra por encima de la EMA.
  6. Establezca el stop loss: el stop loss es el precio de apertura de la posición - 2 veces el ATR, el stop loss es el precio de apertura de la posición + 4 veces el ATR ((múltiples caras); el stop loss es el precio de apertura de la posición + 2 veces el ATR, el stop loss es el precio de apertura de la posición - 4 veces el ATR ((caras vacías)).
  7. Trigger de estrategia: ejecuta la operación de apertura de posición correspondiente cuando se cumplen las condiciones de compra y venta, y establece el correspondiente Stop Loss.

Ventajas estratégicas

  1. Seguimiento de tendencias: estrategias que utilizan el canal G para capturar las tendencias del mercado de manera efectiva y adecuada a las situaciones de tendencia.
  2. Detención de pérdidas dinámicas: Utiliza ATR para ajustar dinámicamente las paradas de pérdidas, para adaptarse mejor a la volatilidad del mercado.
  3. Control de riesgo: el Stop Loss está configurado en el doble de la ATR, controlando el riesgo de cada operación.
  4. Sencillo y fácil de usar: La lógica de la estrategia es clara y adecuada para la mayoría de los inversores.

Riesgo estratégico

  1. En un mercado convulso, las frecuentes señales de intercambio pueden aumentar las pérdidas.
  2. Optimización de parámetros: diferentes variedades y ciclos pueden requerir diferentes parámetros, y el uso a ciegas puede conllevar riesgos.
  3. En casos extremos, los precios pueden fluctuar mucho y el stop loss puede no ejecutarse.

Dirección de optimización de la estrategia

  1. Filtración de tendencias: Aumentar las condiciones de filtración de tendencias, como MA cruzado, DMI, etc., para reducir las operaciones en situaciones de crisis.
  2. Optimización de parámetros: Optimización de parámetros para diferentes variedades y ciclos para encontrar la combinación óptima de parámetros.
  3. Gestión de posiciones: ajustar las posiciones de acuerdo con la dinámica de la volatilidad del mercado para mejorar la utilización de los fondos.
  4. Estrategia combinada: combinación de esta estrategia con otras estrategias efectivas para mejorar la estabilidad.

Resumir

La estrategia utiliza el canal G, EMA, ATR y otros indicadores para construir un sistema de comercio de seguimiento de tendencias simple y eficaz. Puede obtener buenos resultados en situaciones de tendencia, pero suele funcionar en situaciones de crisis. Posteriormente, la estrategia se puede optimizar en términos de filtración de tendencias, optimización de parámetros, administración de posiciones y combinación de estrategias, para mejorar aún más la solidez y la rentabilidad de la estrategia.

Código Fuente de la Estrategia
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// Full credit to AlexGrover: https://www.tradingview.com/script/fIvlS64B-G-Channels-Efficient-Calculation-Of-Upper-Lower-Extremities/
strategy ("G-Channel Trend Detection with EMA Strategy and ATR", shorttitle="G-Trend EMA ATR Strategy", overlay=true)

// Inputs for G-Channel
length = input(100, title="G-Channel Length")
src = input(close, title="Source")

// G-Channel Calculation
var float a = na
var float b = na
a := max(src, nz(a[1])) - (nz(a[1] - b[1]) / length)
b := min(src, nz(b[1])) + (nz(a[1] - b[1]) / length)
avg = (a + b) / 2

// G-Channel Signals
crossup = b[1] < close[1] and b > close
crossdn = a[1] < close[1] and a > close
bullish = barssince(crossdn) <= barssince(crossup)
c = bullish ? color.lime : color.red

// Plot G-Channel Average
p1 = plot(avg, "Average", color=c, linewidth=1, transp=90)
p2 = plot(close, "Close price", color=c, linewidth=1, transp=100)
fill(p1, p2, color=c, transp=90)

// Show Buy/Sell Labels
showcross = input(true, title="Show Buy/Sell Labels")
plotshape(showcross and not bullish and bullish[1] ? avg : na, location=location.absolute, style=shape.labeldown, color=color.red, size=size.tiny, text="Sell", textcolor=color.white, transp=0, offset=-1)
plotshape(showcross and bullish and not bullish[1] ? avg : na, location=location.absolute, style=shape.labelup, color=color.lime, size=size.tiny, text="Buy", textcolor=color.white, transp=0, offset=-1)

// Inputs for EMA
emaLength = input(50, title="EMA Length")
emaValue = ema(close, emaLength)

// Plot EMA
plot(emaValue, title="EMA", color=color.blue, linewidth=1)

// ATR Calculation
atrLength = input(14, title="ATR Length")
atrValue = atr(atrLength)

// Strategy Conditions
buyCondition = bullish and close < emaValue
sellCondition = not bullish and close > emaValue

// Stop Loss and Take Profit Levels
longStopLoss = close - 2 * atrValue
longTakeProfit = close + 4 * atrValue
shortStopLoss = close + 2 * atrValue
shortTakeProfit = close - 4 * atrValue

// Execute Strategy with ATR-based stop loss and take profit
if (buyCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell", "Buy", stop=longStopLoss, limit=longTakeProfit)

if (sellCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=shortStopLoss, limit=shortTakeProfit)

// Plot Buy/Sell Signals on the chart
plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", offset=-1)
plotshape(series=sellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", offset=-1)