Estratégia de Crossover de Longo Prazo Adaptável Triple SMA K-line


Data de criação: 2023-11-24 14:26:37 última modificação: 2023-11-24 14:26:37
cópia: 2 Cliques: 550
1
focar em
1617
Seguidores

Estratégia de Crossover de Longo Prazo Adaptável Triple SMA K-line

Visão geral

A estratégia combina o uso de uma média móvel simples (SMA) de três períodos diferentes com a média móvel adaptada de Kaufman para formar um sinal de entrada de linha longa. A estratégia também combina a cor da entidade de linha K para determinar a tendência principal e produzir um sinal de compra apenas em tendências de múltiplos pontos, evitando falsas rupturas.

Princípio da estratégia

Esta estratégia usa 3 SMAs de diferentes períodos, incluindo SMA 4, SMA 9 e SMA 18. A combinação cruzada desses 3 SMAs é um indicador técnico clássico para determinar a direção da tendência. Quando o SMA 4 atravessa o SMA 9 e o SMA 9 atravessa o SMA 18, gera um sinal de compra de linha longa.

A fim de filtrar brechas falsas, a estratégia também introduziu a média móvel adaptada de Kaufman. O sinal de golden fork do SMA só é efetuado para iniciar a linha longa quando o preço de fechamento é superior à média móvel adaptada, ou seja, em uma tendência multi-cabeça.

Além disso, a estratégia também usa o SMA de 100 ciclos para determinar a tendência principal. Quando o preço atravessa o SMA de 100 ciclos acima, confirma a entrada em uma tendência de alta. A estratégia só gera um sinal de compra na tendência de alta.

Em suma, os sinais de compra da estratégia vêm de uma combinação das seguintes partes:

  1. O SMA 4 atravessa o SMA 9, e o SMA 9 atravessa o SMA 18, formando um forco de ouro para o SMA de curto período
  2. Os preços de fechamento estão acima da média móvel adaptada de Kaufman e estão em uma tendência multi-cabeça
  3. Preço sobe em 100 SMA, confirmando a pluralidade de ativos

Quando as três condições acima são satisfeitas simultaneamente, um sinal de compra de linha longa é gerado.

Análise de vantagens

A estratégia tem as seguintes vantagens:

  1. Utilizando a tendência de julgamento de cruzamento de três SMAs, pode filtrar o ruído de forma eficaz e melhorar a confiabilidade do sinal
  2. Introdução de médias móveis adaptáveis para evitar brechas falsas quando não há uma tendência clara
  3. Combinando o julgamento de tendências dominantes, aumentar a probabilidade de lucro e evitar a abertura de posições repetidas em situações de turbulência
  4. Os SMAs de curto e longo período se cruzam para formar sinais de linha longa, facilitando a captação de tendências maiores
  5. Aplica-se em tempos de alta periodicidade, como 4 horas ou nível de linha diurna, o sinal é mais confiável

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. A estratégia de linha longa, não pode parar o prejuízo a curto prazo, existe um certo risco de retração
  2. A entrada de sinais é relativamente escassa e pode ter perdido parte do aumento.
  3. Quando as tendências de curto, médio e longo prazo não são consistentes, ocorre um erro de sinal.

Otimizamos as informações de forma a:

  1. Reduzir adequadamente o ciclo de SMA de médio e longo prazo para aumentar as oportunidades de entrada
  2. Adicionar outros indicadores auxiliares, como o volume de transações, para confirmar a confiabilidade da tendência
  3. Atividades de parada científica e de retirada de controle racional

Direção de otimização

A estratégia ainda tem espaço para ser melhorada:

  1. Pode testar mais combinações de ciclos SMA para encontrar os parâmetros ótimos
  2. Confirmação de transações pode ser adicionada para evitar falsas brechas
  3. Pode ser adicionado um indicador de flutuação para filtrar a entrada em cenários de aumento de vibração
  4. Algoritmos de aprendizagem de máquina podem ser introduzidos para encontrar os parâmetros ótimos
  5. Pode-se introduzir indicadores de emoção para evitar posicionamentos em mercados de pânico ou excitação

Resumir

Esta estratégia, combinada com a adaptação das médias móveis e o julgamento da tendência principal, pode obter maiores ganhos em situações de tendência, com lógica estável e forte eficácia de batalha. Mas também existe um certo risco, que precisa ser continuamente otimizado para reduzir a retração e aumentar a taxa de vitória. Esta estratégia é uma estratégia de posição de longo prazo, adequada para investidores com paciência e controle de risco.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Wielkieef


//@version=5
strategy(title='twisted SMA strategy [4h] ', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03)

src = close

Length1 = input.int(4, title='  1-SMA Lenght', minval=1, group='SMA')
Length2 = input.int(9, title='  2-SMA Lenght', minval=1, group='SMA')
Length3 = input.int(18, title='  3-SMA Lenght', minval=1, group='SMA')
SMA1 = ta.sma(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)

Long_ma = SMA1 > SMA2 and SMA2 > SMA3
Short_ma = SMA1 < SMA2 and SMA2 < SMA3

LengthMainSMA = input.int(100, title='  SMA Lenght', minval=1)

SMAas = ta.sma(src, LengthMainSMA)

//  Powered Kaufman Adaptive Moving Average by alexgrover (modificated by Wielkieef)
lengthas = input.int(25, title='    Lenght')
sp = input.bool(true, title='  Self Powered')

er = math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas)
pow = sp ? 1 / er : 2
per = math.pow(math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas), pow)
a = 0.
a := per * src + (1 - per) * nz(a[1], src)
mad4h = 0.
a_f = a / a[1] > .999 and a / a[1] < 1.001

///.

Bar_color = close > SMAas ? color.green : Long_ma ? color.blue : Short_ma ? color.maroon : color.gray

barcolor(color=Bar_color)

long_cond = Long_ma and SMAas < close and not a_f
  
long_stop = Short_ma 

if  long_cond
    strategy.entry('BUY', strategy.long)

strategy.close_all(when=long_stop)

//by wielkieef