Estratégia de trailing stop loss baseada em média móvel e transcendência


Data de criação: 2024-01-17 11:46:01 última modificação: 2024-01-17 11:46:01
cópia: 0 Cliques: 552
1
focar em
1617
Seguidores

Estratégia de trailing stop loss baseada em média móvel e transcendência

Visão geral

Esta estratégia usa a linha de equilíbrio e os indicadores de superação para determinar a tendência do mercado, em combinação com o mecanismo de rastreamento de stop loss, para projetar uma estratégia de negociação de stop loss. Quando o indicador de superação é considerado uma tendência ascendente, se o preço de fechamento atravessar a linha de equilíbrio de 14 ciclos, faça mais; Quando o indicador de superação é considerado uma tendência descendente, se o preço de fechamento atravessar a linha de equilíbrio de 14 ciclos, faça mais.

Princípio da estratégia

Esta estratégia utiliza três indicadores técnicos: linha média, indicadores de superação e tracking stop loss.

Em primeiro lugar, calcula-se a média móvel indexada de 14 ciclos e 44 ciclos. A média de 14 ciclos é usada para determinar a tendência de curto prazo, e a média de 44 ciclos é usada para determinar a tendência de longo prazo. Quando a média de curto prazo atravessa a média de longo prazo, o sinal é visto como mais, e vice-versa.

Em segundo lugar, o cálculo do indicador de ultrapassagem determina a tendência atual do mercado. O indicador de ultrapassagem é composto pelo indicador DI + e pelo indicador DI - inverso. Quando o DI + é maior que o DI - é considerado uma tendência de alta; Quando o DI - é maior que o DI +, é considerado uma tendência de baixa.

Finalmente, combinando o sinal de equilíbrio com a determinação da tendência do indicador de superação, gera um sinal de negociação. Quando o indicador de superação é alto e o preço atravessa a média de 14 ciclos, faça mais; Quando o indicador de superação é baixo e o preço atravessa a média de 14 ciclos, faça falta. Após a entrada, configure o ponto de parada perto da média de 44 ciclos, para monitorar o stop loss.

Análise de vantagens

Esta estratégia combina os benefícios de três indicadores técnicos para um julgamento preciso e oportuno, com as seguintes vantagens:

  1. A linha média julga tendências de curto e longo prazo, identificando sinais de precisão.
  2. A partir de agora, a tendência é para que os indicadores sejam usados para determinar a direção das tendências, reduzindo assim os sinais errados.
  3. Acompanhar o mecanismo de parada de prejuízos, reduzir a parada de prejuízos individuais, o efeito geral de parada de prejuízos é bom.

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. Risco de fracasso de ruptura. O preço pode voltar a ser chamado de volta após a ruptura da linha média, resultando na perda do melhor ponto de entrada.
  2. O stop loss é um risco desencadeado. O tracking stop loss não pode evitar completamente os prejuízos, mas apenas controlar os prejuízos individuais até certo ponto.
  3. Risco de otimização de parâmetros. A configuração incorreta do ciclo de média, além dos parâmetros indicadores, afetará a qualidade do sinal.

Resolução:

  1. Em combinação com outros indicadores, os sinais de filtragem aumentam a taxa de sucesso da invasão.
  2. Optimizar o rastreamento de parâmetros de stop loss, colocando o ponto de stop loss em uma posição razoável.
  3. Otimizar os parâmetros para testes e selecionar a combinação de parâmetros mais adequada.

Direção de otimização

Esta estratégia pode ser melhorada em várias direções:

  1. Adicionar outros indicadores de julgamento, filtrar os sinais errados, aumentar a taxa de vitória da estratégia. Por exemplo, em combinação com o indicador de volume de transação, fortalecer a tendência.

  2. Optimizar o rastreamento de stop loss para que o stop loss seja mais inteligente e flexível. Por exemplo, stop loss com base no ATR, Chandelier Exit, etc.

  3. O uso de métodos de aprendizagem de máquina para encontrar os melhores parâmetros. Por exemplo, algoritmos genéticos, aprendizagem profunda e outros para encontrar o melhor conjunto de parâmetros.

  4. A estratégia é executada em um período de tempo mais longo, evitando a interferência de ruídos de alta frequência.

Resumir

Esta estratégia é uma estratégia prática e confiável de rastreamento de transações de parada de perda, usando a linha média, além dos indicadores e da tecnologia de rastreamento de parada de perda, para determinar se o sinal é preciso e se a parada é oportuna. Posteriormente, a eficácia da estratégia pode ser aumentada ainda mais, aumentando a qualidade do sinal e otimizando o método de parada de perda.

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

//@version=5
strategy("Santanu Strategy", overlay=true)

atrPeriod = input(3, "ATR Length")
factor = input.float(1, "Factor", step = 0.01)

[supertrend, direction] = ta.supertrend(factor, atrPeriod)

bodyMiddle = plot((open + close) / 2, display=display.none)
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend = plot(direction < 0? na : supertrend, "Down Trend", color = color.red, style=plot.style_linebr)

fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps=false)

len = input.int(14, minval=1, title="Length")
src = input(close, title="Source")
offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)
out = ta.ema(src, len)

len44 = input.int(44, minval=1, title="Length")
out44 = ta.ema(src, len44)

isRising = ta.rising(out, 1)
isFalling = ta.falling(out, 1)

plotColor = color.black
if isRising
    plotColor := color.green
else if isFalling
    plotColor := color.red
    

plot(out, color=plotColor, title="MA", offset=offset)
plot(out44, color=color.blue, title="MA", offset=offset)

if direction < 0
    if close >= out
        //if low >= out44
        if isRising
            strategy.entry("Buy Now", strategy.long)

if direction > 0
    if close <= out
        //if high <= out44
        if isFalling
            strategy.entry("Sell Now", strategy.short)


//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)