Esta estratégia usa uma combinação de três tipos diferentes de médias móveis, TEMA, DEMA e HMA, para entrar em ação quando a média e a curta TEMA e a DEMA emitem sinais de golden/dead-fork, e usa a média e a longa HMA para determinar a direção da tendência e filtrar os sinais de negociação de contra-ação.
Especificamente, a estratégia usa simultaneamente o DEMA de movimentação de dois índices para determinar a tendência de médio prazo, o TEMA de movimentação de três índices para determinar a tendência de curto prazo e o HMA de movimentação de densidade para determinar a tendência de longo prazo. Só se produz um sinal de negociação quando o médio prazo curto inicia na mesma direção (TEMA e DEMA coincidem com a ruptura) e a tendência principal de longo prazo também coincide (a direção da HMA coincide com a ruptura).
O risco pode ser gerenciado por meio de testes de múltiplos parâmetros para encontrar a melhor combinação de parâmetros, introduzir estratégias de parada de perdas e relaxar adequadamente as condições de entrada.
Esta estratégia usa uma combinação de vários indicadores de equilíbrio para determinar a tendência. A vantagem é que a geração de sinais é clara e configurável. A desvantagem é o risco de atraso e a dependência de vários parâmetros.
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tuned-com
//@version=4
strategy("TEMA/DEMA/HMA", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000000, commission_type=strategy.commission.percent, commission_value=0.1)
Tlength = input(8, title="TEMA Length", minval=1)
Dlength = input(43, title="DEMA Length", minval=1)
Hlength = input(52, title="Hull Length", minval=1)
Rlength = input(2, title="Hull Trend Test Length", minval=1)
//TEMA//
ema1 = ema(close, Tlength)
ema2 = ema(ema1, Tlength)
ema3 = ema(ema2, Tlength)
tema = 3 * (ema1 - ema2) + ema3
//DEMA//
e1 = ema(close, Dlength)
e2 = ema(e1, Dlength)
dema = 2 * e1 - e2
//HMA//
hma = wma(2 * wma(close, Hlength / 2) - wma(close, Hlength), round(sqrt(Hlength)))
up = crossunder(dema, tema) and rising(hma, Rlength)
down = crossover(dema, tema) and falling(hma, Rlength)
downc = crossunder(dema, tema)
upc = crossover(dema, tema)
plot(dema, color=color.green, linewidth=2)
plot(tema, color=color.aqua, linewidth=2)
plot(hma, color=rising(hma, Rlength) ? color.green : na, linewidth=2, transp=0)
plot(hma, color=falling(hma, Rlength) ? color.red : na, linewidth=2, transp=0)
bgcolor(rising(hma, Rlength) ? color.green : na, transp=70)
bgcolor(falling(hma, Rlength) ? color.red : na, transp=70)
plotarrow(tema - dema, colorup=color.green, colordown=color.red, transp=70)
if up
strategy.entry("Long Entry", strategy.long)
if down
strategy.entry("Short Entry", strategy.short)