
Esta estrategia se llama Estrategia de cruce de promedios móviles exponenciales dobles y triples. La estrategia combina la señal de cruce de promedios móviles exponenciales dobles y promedios móviles exponenciales triples para determinar la entrada en juego a través de la cruz de oro de DEMA y TEMA.
Esta estrategia se basa principalmente en el cruce de las medias móviles de dos índices (DEMA) y las medias móviles de tres índices (TEMA) para generar señales de negociación.
La fórmula para calcular el promedio móvil de doble índice (DEMA) es:
DEMA = 2*EMA1 - EMA2
Entre ellos, EMA1 y EMA2 son Exponential Moving Averages de N períodos de longitud. DEMA combina la suavidad y la rapidez de respuesta de EMA.
La fórmula para calcular el promedio móvil de tres índices (TEMA) es:
TEMA = 3*(EMA1 - EMA2) + EMA3
Entre ellos, EMA1, EMA2 y EMA3 son respectivamente Exponential Moving Average con un período de longitud de N. TEMA se suaviza a través de un índice de tres veces y puede filtrar falsas rupturas.
Cuando DEMA pasa por TEMA, genera una señal de compra; cuando DEMA pasa por TEMA, genera una señal de venta. De acuerdo con el principio de cruce de doble curva, se puede capturar la conversión de ciclo, entrar y salir a tiempo.
Esta estrategia mejora la precisión de las operaciones mediante la formación de señales de negociación mediante la formación de una media móvil de doble índice y una media móvil de tres índices, combinada con la velocidad de respuesta de DEMA y el efecto de fluctuación de TEMA. Sin embargo, la combinación de un solo indicador es susceptible a la ilusión y aún requiere la ayuda de varias herramientas de verificación para formar un sistema de operaciones sistemático y obtener ganancias estables a largo plazo.
/*backtest
start: 2023-12-03 00:00:00
end: 2024-01-02 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("DEMA-TEMA Cross Strategy", shorttitle="DEMA-TEMA Cross", overlay=true)
// Input options for Double EMA (DEMA)
dema_length = input.int(10, title="DEMA Length", minval=1)
dema_src = input(close, title="DEMA Source")
// Calculate Double EMA (DEMA)
dema_e1 = ta.ema(dema_src, dema_length)
dema_e2 = ta.ema(dema_e1, dema_length)
dema = 2 * dema_e1 - dema_e2
// Input options for Triple EMA (TEMA)
tema_length = input.int(8, title="TEMA Length", minval=1)
tema_src = input(close, title="TEMA Source")
// Calculate Triple EMA (TEMA)
tema_ema1 = ta.ema(tema_src, tema_length)
tema_ema2 = ta.ema(tema_ema1, tema_length)
tema_ema3 = ta.ema(tema_ema2, tema_length)
tema = 3 * (tema_ema1 - tema_ema2) + tema_ema3
// Crossover signals for long (small green arrow below candle)
crossover_long = ta.crossover(dema, tema)
// Crossunder signals for short (small red arrow above candle)
crossunder_short = ta.crossunder(dema, tema)
plotshape(crossunder_short ? 1 : na, title="Short Entry", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
plotshape(crossover_long ? -1 : na, title="Long Entry", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plot(dema, "DEMA", color=color.green)
plot(tema, "TEMA", color=color.blue)
if (crossover_long)
strategy.entry("Long", strategy.long)
if (crossunder_short)
strategy.entry("Short", strategy.short)