Estratégia de combinação de supertrend e EMA

ATR EMA
Data de criação: 2024-06-07 15:36:41 última modificação: 2024-06-07 15:36:41
cópia: 0 Cliques: 770
1
focar em
1617
Seguidores

Estratégia de combinação de supertrend e EMA

Visão geral

A estratégia de combinação de Supertrend e EMA é uma estratégia de negociação que utiliza o indicador Supertrend em combinação com vários EMAs. A estratégia usa o indicador Supertrend para determinar a direção da tendência do mercado atual e, ao mesmo tempo, usa o indicador EMA de diferentes períodos como um sinal de compra. Quando o EMA de curto prazo ocorre em um ponto de interseção com o EMA de médio prazo e o indicador Supertrend mostra uma tendência ascendente, gera um sinal de compra.

Princípio da estratégia

O princípio central da estratégia de combinação de Supertrend e EMA é usar as características do indicador Supertrend e do indicador EMA para capturar as mudanças de tendência do mercado e as flutuações de preços. O indicador Supertrend julga a direção da tendência do mercado atual comparando o preço de fechamento atual com a trajetória ascendente do período anterior. Quando o preço de fechamento supera a trajetória ascendente, o mercado entra em uma tendência ascendente; quando o preço de fechamento supera a trajetória descendente, o mercado entra em uma tendência descendente.

Vantagens estratégicas

  1. O indicador Supertrend capta com eficiência as mudanças de tendência do mercado, ajudando a estratégia de negociação em consonância com as tendências do mercado.
  2. Confirmação da EMA múltipla: o uso de indicadores EMA de diferentes períodos como condições de ação de sinais de compra e venda pode aumentar a confiabilidade do sinal e reduzir a ocorrência de falsos sinais.
  3. Controle de Risco: Com base na tendência do indicador Supertrend, pode-se evitar a negociação em situações adversas e reduzir o risco.
  4. Adaptabilidade: a estratégia pode ser aplicada a diferentes mercados e variedades, com uma melhor adaptabilidade e flexibilidade.

Risco estratégico

  1. Risco de otimização de parâmetros: A configuração de parâmetros do indicador Supertrend e do indicador EMA tem um grande impacto no desempenho da estratégia, e os parâmetros inadequados podem levar à falha da estratégia.
  2. Risco de flutuação do mercado: em situações de forte flutuação do mercado, pode haver frequentes cruzamentos entre EMAs de curto prazo e EMAs de médio prazo, resultando em vários falsos sinais para a estratégia.
  3. Risco de reversão de tendência: quando a tendência do mercado se reverte, o indicador de Supertrend pode estar atrasado, causando perdas na estratégia no início da reversão de tendência.

Direção de otimização da estratégia

  1. Optimização de parâmetros: encontrar a melhor combinação de parâmetros, aumentando a estabilidade e a lucratividade da estratégia, através da otimização do múltiplo do indicador Supertrend e do ciclo do indicador EMA.
  2. Filtragem de sinal: após a geração de sinal de cruzamento EMA, pode ser combinado com outros indicadores técnicos (como RSI, MACD, etc.) para a segunda confirmação do sinal, aumentando a confiabilidade do sinal.
  3. Stop loss: introdução de um mecanismo de stop loss razoável para controlar o risco de uma única transação e aumentar a taxa de risco-benefício da estratégia.
  4. Multi-variedade, multi-ciclo: aplicar a estratégia a diferentes variedades e ciclos, reduzindo o risco global por meio de investimentos diversificados.

Resumir

A estratégia de combinação de Supertrend e EMA combina o indicador Supertrend com vários indicadores EMA, formando um sistema de negociação de acompanhamento de tendências completo. A estratégia usa o indicador Supertrend para determinar a tendência do mercado e, ao mesmo tempo, gera sinais de compra e venda através da interseção do indicador EMA, com fortes vantagens de acompanhamento de tendências, confirmação de sinais confiáveis e ampla adaptabilidade.

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

//@version=4
strategy("Supertrend EMA Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Supertrend Parameters
atrPeriod = input(10, title="ATR Period")
src = input(hl2, title="Source")
multiplier = input(3.0, title="ATR Multiplier", step=0.1)
changeATR = input(true, title="Change ATR Calculation Method?")
showSignals = input(true, title="Show Buy/Sell Signals?")
highlighting = input(true, title="Highlighter On/Off?")

// Calculate ATR
atr = changeATR ? atr(atrPeriod) : sma(tr, atrPeriod)

// Calculate Supertrend
up = src - (multiplier * atr)
dn = src + (multiplier * atr)
up1 = nz(up[1], up)
dn1 = nz(dn[1], dn)
up := close[1] > up1 ? max(up, up1) : up
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(trend == 1 ? up : na, title="Up Trend", style=plot.style_linebr, linewidth=2, color=color.green)
dnPlot = plot(trend == 1 ? na : dn, title="Down Trend", style=plot.style_linebr, linewidth=2, color=color.red)

// EMA Parameters
shortEmaLength = input(20, title="Short EMA Length")
mediumEmaLength = input(50, title="Medium EMA Length")
longEmaLength = input(100, title="Long EMA Length")
longestEmaLength = input(200, title="Longest EMA Length")

// Calculate EMA
shortEma = ema(close, shortEmaLength)
mediumEma = ema(close, mediumEmaLength)
longEma = ema(close, longEmaLength)
longestEma = ema(close, longestEmaLength)

// Plot EMA
plot(shortEma, color=color.red, title="EMA 20")
plot(mediumEma, color=color.orange, title="EMA 50")
plot(longEma, color=color.aqua, title="EMA 100")
plot(longestEma, color=color.blue, title="EMA 200")

// Define Buy and Sell Conditions
buyCondition = crossover(shortEma, mediumEma) and trend == 1
sellCondition = crossunder(shortEma, mediumEma) and trend == -1

// Plot Buy/Sell Signals
plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Add Text Labels for Buy and Sell Signals
if (buyCondition)
    label.new(bar_index, high, text="Buy", color=color.green, textcolor=color.white, style=label.style_label_up, yloc=yloc.abovebar)
if (sellCondition)
    label.new(bar_index, low, text="Sell", color=color.red, textcolor=color.white, style=label.style_label_down, yloc=yloc.belowbar)

// Strategy Entry and Exit
if (buyCondition)
    strategy.entry("Buy", strategy.long)
if (sellCondition)
    strategy.close("Buy")

// Highlight Trend
longFillColor = highlighting ? (trend == 1 ? color.green : color.white) : color.white
shortFillColor = highlighting ? (trend == -1 ? color.red : color.white) : color.white
fill(plot(ohlc4, title="", style=plot.style_circles, linewidth=0), upPlot, title="UpTrend Highlighter", color=longFillColor)
fill(plot(ohlc4, title="", style=plot.style_circles, linewidth=0), dnPlot, title="DownTrend Highlighter", color=shortFillColor)

// Alerts
alertcondition(buyCondition, title="Buy Alert", message="Supertrend EMA Buy Signal")
alertcondition(sellCondition, title="Sell Alert", message="Supertrend EMA Sell Signal")