Estratégia de acompanhamento de tendência média de suavização dupla - com base na linha K aprimorada de Ping An Jiang


Data de criação: 2024-11-29 15:03:37 última modificação: 2024-11-29 15:03:37
cópia: 1 Cliques: 491
1
focar em
1617
Seguidores

Estratégia de acompanhamento de tendência média de suavização dupla - com base na linha K aprimorada de Ping An Jiang

Visão geral

Esta estratégia é um sistema de acompanhamento de tendências baseado no Heikin-Ashi. A estratégia opera de várias maneiras, mantendo posições em tendências ascendentes e posições em tendências descendentes, captando tendências com eficiência para obter ganhos de mercado.

Princípio da estratégia

A lógica central da estratégia inclui as seguintes etapas principais:

  1. Primeira suavização EMA de dados de preços de OHLC
  2. Linha K de Pingyang, modelo melhorado para calcular preços após suavização
  3. Segundo EMA de suavização da linha K de Pyongyang
  4. A variação da cor da linha K é julgada pela comparação entre o preço de abertura e o preço de fechamento após o alinhamento
  5. A linha K gera um sinal de compra quando o vermelho se torna verde e um sinal de venda quando o verde se torna vermelho
  6. Transações com posições de 100% do valor total da conta

Vantagens estratégicas

  1. O processamento de dupla suavização reduz significativamente os falsos sinais
  2. A estratégia reduz o risco de falência
  3. A partir da confirmação da tendência, a probabilidade de vitória aumenta.
  4. Sistema de sinalização completo para transações automatizadas
  5. Opções de períodos de tempo flexíveis para atender a diferentes necessidades de transação
  6. Regras de entrada e saída simples e claras para facilitar a execução
  7. Apoio à gestão de fundos em diferentes condições de mercado

Risco estratégico

  1. A reversão de tendência pode ter início com uma retracção maior.
  2. Falso sinal pode ser produzido em mercados em turbulência
  3. O método de negociação de posição total aumenta o risco de capital
  4. O atraso no sinal de entrada pode ter perdido parte da subida
  5. Diferenças de desempenho em diferentes períodos de tempo

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

  1. Introdução de filtros de intensidade de tendência para reduzir os falsos sinais de mercado
  2. Aumentar a gestão dinâmica dos depósitos e otimizar a utilização dos fundos
  3. Adição de stop loss móvel para controlar o risco de retração
  4. Combinação com outros indicadores técnicos para confirmar a eficácia do sinal
  5. Desenvolver um sistema de parâmetros de adaptação para aumentar a estabilidade da estratégia

Resumir

A estratégia, com o duplo processamento de suavização e a linha K de Pyongyang em seu núcleo, constrói um robusto sistema de acompanhamento de tendências. A estratégia é concebida de forma concisa, fácil de entender e executar, além de oferecer várias direções de otimização para se adaptar a diferentes condições de mercado. Embora haja um certo risco de atraso e retirada, a estratégia pode fornecer aos investidores uma ferramenta de acompanhamento de tendências confiável por meio de medidas razoáveis de gerenciamento de fundos e controle de risco.

Código-fonte da estratégia
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Smoothed Heiken Ashi Strategy Long Only", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

len = input.int(10, title="EMA Length")
len2 = input.int(10, title="Smoothing Length")
start_date = input(defval=timestamp("2020-01-01"), title="Backtest Start Date")

o = ta.ema(open, len)
c = ta.ema(close, len)
h = ta.ema(high, len)
l = ta.ema(low, len)

haclose = (o + h + l + c) / 4
var float haopen = na
haopen := na(haopen[1]) ? (o + c) / 2 : (haopen[1] + haclose[1]) / 2
hahigh = math.max(h, math.max(haopen, haclose))
halow = math.min(l, math.min(haopen, haclose))

o2 = ta.ema(haopen, len2)
c2 = ta.ema(haclose, len2)
h2 = ta.ema(hahigh, len2)
l2 = ta.ema(halow, len2)

col = o2 > c2 ? color.red : color.lime

// Plot candles without visible wicks
plotcandle(o2, o2, c2, c2, title="Heikin Smoothed", color=col, wickcolor=color.new(col, 100))

// Delayed Buy and Sell signals
colorChange = col != col[1]
buySignal = colorChange[1] and col[1] == color.lime
sellSignal = colorChange[1] and col[1] == color.red

plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Strategy entry and exit
if (true)
    if (buySignal)
        strategy.entry("Long", strategy.long)
    if (sellSignal)
        strategy.close("Long")

// Add a vertical line at the start date
// if (time == start_date)
//     line.new(x1=bar_index, y1=low, x2=bar_index, y2=high, color=color.blue, width=2)

// Alert conditions
alertcondition(colorChange[1], title="Color Change Alert", message="Heiken Ashi Candle Color Changed")
alertcondition(buySignal, title="Buy Signal Alert", message="Buy Signal: Color changed from Red to Green")
alertcondition(sellSignal, title="Sell Signal Alert", message="Sell Signal: Color changed from Green to Red")