Tendencia de la nuez siguiendo una estrategia basada en la distancia de 200 EMA

El autor:¿ Qué pasa?, Fecha: 2024-03-01 10:50:03
Las etiquetas:

Alcanza el objetivo de ganancia al final del día

Salida corta:Cierre <= 200 EMA alcanza su objetivo de ganancia al final del día

El stop loss es del 20% de la prima de la opción.

II. Ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. Utilizando una media móvil de 200 días para determinar la tendencia a medio y largo plazo, evitando el ruido del mercado a corto plazo
  2. Establecimiento de tendencias siguiendo el mecanismo de seguimiento de la tendencia de los precios a medio y largo plazo
  3. Optimizar el tiempo de entrada cuando la última dirección de la vela se alinea con la tendencia principal
  4. Las pérdidas de suspensión razonables y las ganancias obtenidas para evitar pérdidas mayores

III. Riesgos

Los principales riesgos de esta estrategia son:

  1. Se pueden producir pérdidas múltiples durante la consolidación del mercado alrededor de la media móvil
  2. La inversión repentina de la tendencia desencadena el stop loss
  3. La selección inadecuada de parámetros como el período de media móvil conduce a un juicio de tendencia inexacto

Los siguientes aspectos pueden optimizarse para reducir los riesgos anteriores:

  1. Ajustar los parámetros de la media móvil o añadir otros indicadores para determinar la tendencia principal
  2. Optimizar el mecanismo de stop loss como ajustar la distancia de parada basada en el cambio de precio
  3. Optimizar las condiciones de entrada con más indicadores de juicio

IV. Direcciones de optimización

Las principales direcciones de optimización para esta estrategia son:

  1. Optimizar los parámetros de la media móvil, los efectos de ensayo de los diferentes parámetros de período
  2. Añadir otros indicadores como bandas de Bollinger, KDJ para determinar la tendencia principal
  3. Ajuste de la estrategia de stop loss para seguir el precio dinámicamente
  4. Optimizar las condiciones de entrada para evitar entradas erróneas debido a correcciones a corto plazo

V. Conclusión

Este artículo analizó en detalle la lógica, fortalezas, debilidades y direcciones de optimización de la estrategia de seguimiento de tendencia basada en la distancia entre el precio y el promedio móvil de 200 días. Esta estrategia juzga la tendencia a mediano y largo plazo mediante el seguimiento de la desviación del precio del promedio móvil a largo plazo. Las posiciones se establecen cuando la desviación excede un umbral y se cierran al alcanzar los objetivos de stop loss o take profit. Esta estrategia puede rastrear bien la tendencia a mediano y largo plazo, pero aún tiene algún espacio de optimización de parámetros.


/*backtest
start: 2024-02-22 00:00:00
end: 2024-02-24 06:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Intraday Price Away from 200 EMA Strategy", overlay=true)

// Define inputs
emaPeriod = input(200, title="EMA Period")
thresholdPercent = input(0.75, title="Threshold Percent", minval=0)  // Define the threshold percentage

// Calculate 200 EMA
ema = ema(close, emaPeriod)

// Calculate distance from 200 EMA as a percentage
distance_percent = ((close - ema) / ema) * 100

// Track average entry price
var float avgEntryPrice = na

// Buy conditions
buy_condition = close < ema and abs(distance_percent) >= thresholdPercent and close[1] < close[2]

// Exit conditions for buy
exit_buy_condition = close >= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) <= close

// Sell conditions
sell_condition = close > ema and abs(distance_percent) >= thresholdPercent and close[1] > close[2]

// Exit conditions for sell
exit_sell_condition = close <= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) >= close

// Execute buy and sell orders only if there are no open trades
if strategy.opentrades == 0
    strategy.entry("Buy", strategy.long, when=buy_condition)
    strategy.entry("Sell", strategy.short, when=sell_condition)

// Update average entry price for buy condition
if buy_condition
    avgEntryPrice := close

// Update average entry price for sell condition
if sell_condition
    avgEntryPrice := close

// Close buy position if exit condition is met
strategy.close("Buy", when=exit_buy_condition)

// Close sell position if exit condition is met
strategy.close("Sell", when=exit_sell_condition)

// Plot 200 EMA
plot(ema, color=color.blue, linewidth=2)

// Plot buy and sell signals
plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)


Más.