Indicador de Super Tendência DEMA Estratégia de Acompanhamento de Tendência Dupla


Data de criação: 2024-01-16 15:03:55 última modificação: 2024-01-16 15:03:55
cópia: 1 Cliques: 643
1
focar em
1617
Seguidores

Indicador de Super Tendência DEMA Estratégia de Acompanhamento de Tendência Dupla

Visão geral

A estratégia de rastreamento de tendências duplas é uma estratégia de combinação de indicadores de tendências super, médias móveis de dois índices (DEMA) e faixa de brinquedo. O objetivo é aproveitar os benefícios de vários indicadores técnicos para capturar sinais de compra e venda em tempo hábil quando a tendência se inverte.

Princípio da estratégia

A estratégia consiste em três partes principais:

  1. Indicador de supertrend: calcula a linha de ruptura para cima e a linha de ruptura para baixo para determinar a direção da tendência atual. Gera um sinal de compra quando o preço quebra a linha de supertrend de baixo para cima; Gera um sinal de venda quando o preço quebra de cima para baixo.

  2. DEMA: um indicador de acompanhamento de tendências que combina as características de uma média móvel simples e uma média móvel de índice para responder mais rapidamente às mudanças de preço. A estratégia define uma DEMA de 200 dias para determinar a direção da tendência a longo prazo.

  3. Banda Brin: indica a amplitude da oscilação dos preços. Quando a banda Brin se contraz ou se expande de forma anormal, indica uma possível reversão da tendência.

Quando o indicador de tendência super e o DEMA emitem sinais de compra/venda, entram em posição correspondente. Além disso, as anomalias da faixa de Bryn também podem servir como sinal de julgamento auxiliar.

Vantagens estratégicas

  1. Combinação de vários indicadores, julgamento integrado, redução de falsos sinais.
  2. O indicador de tendência super não é sensível a pequenas mudanças de preço, gerando sinais apenas em pontos de mudança de tendência, evitando negociações muito frequentes.
  3. DEMA suaviza a curva para determinar com precisão e confiança as tendências de longo prazo.
  4. O blogueiro brasileiro Brin, com a ajuda de um juiz auxiliar, decidiu que a tendência estava a mudar.

Riscos e soluções

  1. A configuração dos parâmetros do indicador de tendência super sensível pode gerar mais ruído. O ciclo ATR e os parâmetros do múltiplo podem ser ajustados para otimização.
  2. O período DEMA é muito longo e a capacidade de acompanhar a tendência é fraca. Pode testar parâmetros reduzidos a 100 dias.
  3. Caso os sinais sejam inconsistentes ao julgar uma combinação de indicadores múltiplos. Nesse caso, o indicador de tendência super pode ser seguido como sinal principal.

Direção de otimização

  1. Testar diferentes configurações de parâmetros de ATR e multiplicadores para encontrar o melhor parâmetro do indicador de super-tendência.
  2. Optimizar os parâmetros do ciclo DEMA.
  3. Adicionar outros indicadores auxiliares de julgamento, como KDJ, MACD, etc.
  4. Aumentar as estratégias de stop loss.

Resumir

A combinação de múltiplos indicadores da estratégia de rastreamento de tendências duplas, aproveitando integralmente as vantagens da super tendência, DEMA e as três faixas de Brin, aumentando a qualidade do sinal ao capturar a tendência e, ao mesmo tempo, obtendo melhores resultados estratégicos através da otimização de parâmetros. A adição de mecanismos de parada de prejuízos também é um foco de otimização no futuro.

Código-fonte da estratégia
/*backtest
start: 2023-01-09 00:00:00
end: 2024-01-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Supertrend + DEMA + Bollinger Bands", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, precision=2)

// Input parameters for Supertrend
atrLength = input(title="ATR Period", type=input.integer, defval=12)
src = input(hl2, title="Source")
multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0)
changeATR = input(title="Change ATR Calculation Method?", type=input.bool, defval=true)
showSupertrend = input(title="Show Supertrend Indicator?", type=input.bool, defval=true)

// Input parameters for DEMA
demaLength = input(200, title="DEMA Period")
showDEMA = input(title="Show DEMA Indicator?", type=input.bool, defval=true)

// Calculate ATR for Supertrend
atr2 = sma(tr, atrLength)
atr = changeATR ? atr(atrLength) : atr2

// Calculate Supertrend
up = src - (multiplier * atr)
up1 = nz(up[1], up)
up := close[1] > up1 ? max(up, up1) : up

dn = src + (multiplier * atr)
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? min(dn, dn1) : dn

trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend

// Plot Supertrend
upPlot = plot(showSupertrend ? (trend == 1 ? up : na) : na, title="Up Trend", style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1
plotshape(buySignal ? up : na, title="UpTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.green, 0))
plotshape(buySignal ? up : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))

dnPlot = plot(showSupertrend ? (trend == 1 ? na : dn) : na, title="Down Trend", style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1
plotshape(sellSignal ? dn : na, title="DownTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.red, 0))
plotshape(sellSignal ? dn : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))

mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0)

longFillColor = (trend == 1 ? color.new(color.green, 80) : color.new(color.white, 0))
shortFillColor = (trend == -1 ? color.new(color.red, 80) : color.new(color.white, 0))

fill(mPlot, upPlot, title="UpTrend Highlighter", color=longFillColor)
fill(mPlot, dnPlot, title="DownTrend Highlighter", color=shortFillColor)

// Alert conditions
alertcondition(buySignal, title="Custom Supertrend Buy", message="Custom Supertrend Buy!")
alertcondition(sellSignal, title="Custom Supertrend Sell", message="Custom Supertrend Sell!")

// Calculate DEMA
ema1 = ema(close, demaLength)
dema = 2 * ema1 - ema(ema1, demaLength)

// Plot DEMA with white color
plot(showDEMA ? dema : na, color=color.new(color.white, 0), title="DEMA", linewidth=2)

// Add push notification on mobile if buy and sell occurred
if (buySignal)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell")
    alert("Buy Signal - Supertrend")

if (sellSignal)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover")
    alert("Sell Signal - Supertrend")