Estrategia de cruce de la media móvil exponencial

El autor:¿ Qué pasa?, Fecha: 2024-01-12 14:04:37
Las etiquetas:

img

El cruce de la media móvil exponencial (EMA) es una señal comercial común. Esta estrategia utiliza el cruce de una EMA rápida y una EMA lenta para generar señales comerciales. Específicamente, cuando la EMA rápida cruza por encima de la EMA lenta, se toma una posición larga; cuando la EMA rápida cruza por debajo de la EMA lenta, se toma una posición corta.

Esta estrategia utiliza la EMA de 20 días como la EMA rápida, la EMA de 50 días como la EMA media y la EMA de 200 días como la EMA lenta.

Ventajas de la estrategia

  1. La estrategia de cruce de las medias móviles es sencilla y fácil de entender e implementar
  2. El uso de varias medias móviles puede ayudar a filtrar señales falsas
  3. Las señales de entrada y salida están claras.

Riesgos de la estrategia

  1. Tendencia a generar señales falsas durante los mercados de rango
  2. Las medias móviles tienen retraso y pueden no capturar giros rápidamente
  3. Incapaz de aprovechar al máximo los movimientos explosivos

Ideas para mejorar

  1. Optimizar los períodos de media móvil para diferentes productos y plazos
  2. Añadir filtros como volumen y bandas de Bollinger
  3. Combinar con el seguimiento de tendencia y la inversión media para flexibilidad

Resumen de las actividades

La estrategia de cruce de media móvil es fácil de comprender y es una de las estrategias de trading cuantitativas fundamentales.


/*backtest
start: 2023-01-05 00:00:00
end: 2024-01-11 00:00:00
period: 1d
basePeriod: 1h
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/
// © rt-maax

//@version=5

strategy(title = "rt maax EMA cross strategy", shorttitle = "rt maax ema ", overlay = true, precision = 8, max_bars_back = 200, pyramiding = 0, initial_capital = 100000, 
     currency = currency.USD, default_qty_type = strategy.cash, default_qty_value = 100000, commission_type = "percent", commission_value = 0.27)
fastema = ta.ema (close , 50)
fema=ta.ema(close,20)
slowema= ta.ema(close,200)
price = close

// === INPUT BACKTEST RANGE ===
fromMonth = input.int(defval = 1,    title = "From Month",  minval = 1, maxval = 12)
fromDay   = input.int(defval = 1,    title = "From Day",    minval = 1, maxval = 31)
fromYear  = input.int(defval = 2021, title = "From Year",   minval = 1970)
thruMonth = input.int(defval = 10,    title = "Thru Month",  minval = 1, maxval = 12)
thruDay   = input.int(defval = 25,    title = "Thru Day",    minval = 1, maxval = 31)
thruYear  = input.int(defval = 2112, title = "Thru Year",   minval = 1970)

// === INPUT SHOW PLOT ===
showDate  = input(defval = true, title = "Show Date Range")

// === FUNCTION EXAMPLE ===



longCondition1= ta.crossover (fema , fastema) 
longcondition2= fema> slowema
longcondition3=fastema>slowema


if (longCondition1 and longcondition2 and longcondition3 )
    stoploss=low*0.97
    takeprofit=high*1.12
    strategy.entry("Long Entry", strategy.long)
    strategy.exit ("exit","long",stop=stoploss,limit=takeprofit)
   


shortCondition1 = ta.crossunder (fema , fastema )
shortcondition2= fastema< slowema
shortcondition3= fema< slowema

if (shortCondition1 and shortcondition2 and shortcondition3 )
    stoploss=low*0.97 
    takeprofit=high*1.5
    strategy.entry("Short Entry", strategy.short)
    strategy.exit("exit","short",stop=stoploss,limit=takeprofit)






Más.