
A estratégia de quantificação de tendências de acompanhamento dinâmico em níveis múltiplos é um sistema de acompanhamento de tendências avançado baseado na Hull Moving Average (HMA), que combina a identificação de sinais de entrada inteligentes com um mecanismo de parada de parada dinâmico. O núcleo da estratégia consiste na construção de sinais de entrada usando indicadores HMA de diferentes períodos (100, 200, 500, 1000) e, ao mesmo tempo, usa um mecanismo de proteção em três camadas: parada de dureza antes do disparo, parada de rastreamento inteligente após o disparo e filtragem da direção da tendência, formando um sistema de negociação completo.
A lógica central da estratégia pode ser dividida em quatro componentes-chave:
Mecanismo de geração de sinal de entrada:
Mecanismo de acionamento:
Mecanismos inteligentes de rastreamento de perdas:
Proteção contra perda de dureza:
A estratégia usa um controle rigoroso de uma única posição (sem pirâmide), garantindo que o risco seja controlado. O sistema registra automaticamente o preço de entrada, o preço máximo / mínimo e o estado de disparo, realizando uma gestão de fundos totalmente automatizada.
Uma análise aprofundada da implementação do código da estratégia pode ser resumida com as seguintes vantagens significativas:
Confirmação de tendências em vários níveisO sistema foi construído com quatro HMAs de diferentes ciclos, formando um rigoroso mecanismo de confirmação múltipla, aumentando significativamente a confiabilidade do sinal de entrada e reduzindo os danos causados por falsas brechas.
Gestão de risco adaptativaA estratégia foi concebida com um mecanismo de parada de perdas em duas etapas: a parada de duração pré-trigger e a parada de rastreamento pós-trigger, que permite a parada de perdas em tempo hábil em situações de grande desvantagem e a maximização de ganhos em situações de tendência, adaptando-se a diferentes condições de mercado.
Bloqueio de lucro precisoO mecanismo de stop loss de rastreamento dinâmico é capaz de rastrear automaticamente os novos altos e baixos dos preços, implementando o clássico conceito de negociação de “deixar os lucros correrem”, bloqueando a maior parte dos lucros sem a necessidade de intervenção humana.
Alta personalizaçãoOs três parâmetros-chave (trigger threshold, trace amplitude e perda máxima) podem ser customizados pelo usuário para adaptar-se a diferentes variedades, diferentes volatilidades e diferentes preferências de risco.
Apoio visualA estratégia inclui a visualização de indicadores HMA e a nuvem de tendências, permitindo que os comerciantes entendam intuitivamente o estado atual da tendência e a racionalidade dos pontos de entrada.
Apesar da estratégia ser bem concebida, existem os seguintes riscos potenciais:
Risco de tremores intermitentes: Em mercados com oscilação de intervalos sem uma tendência óbvia, os sinais de cruzamento de HMA podem gerar falsos sinais frequentes, resultando em perdas contínuas. A solução é adicionar condições de filtragem adicionais, como indicadores de volatilidade ou confirmação de força de tendência.
Sensibilidade do parâmetroO desempenho da estratégia é altamente dependente da configuração de três parâmetros-chave. Os parâmetros inadequados podem levar a uma parada prematura ou perder a maior parte dos lucros. É recomendado otimizar os parâmetros para diferentes variedades e períodos de tempo por meio de retrospectiva histórica.
Ponto de deslizamento e impacto nos custos de transaçãoEm ambientes de disco rígido, os pontos de deslizamento e os custos de transação podem afetar significativamente o desempenho da estratégia, especialmente em configurações com menor amplitude de rastreamento. Esses fatores devem ser considerados na retomada e os parâmetros devem ser ajustados de acordo.
Atraso na mudança de tendênciaEmbora a média móvel de Hull seja mais reativa do que a média móvel tradicional, ainda há um certo atraso, que pode levar a um retorno maior se a tendência se inverter repentinamente. Pode-se considerar a combinação de indicadores de curto prazo mais sensíveis para otimizar o tempo de saída.
Dependência de um único indicador técnicoA estratégia baseia-se principalmente na série de indicadores HMA e na falta de análise de mercado multidimensional. Pode ter um fraco desempenho em determinadas condições de mercado. Recomenda-se a verificação cruzada em combinação com outros tipos de indicadores, como indicadores de dinâmica ou indicadores de volume de transação.
Com base nos princípios da estratégia e na análise de riscos, pode-se fazer otimização nas seguintes direções:
Sistema de parâmetros adaptativos:
Análise de Multi-Framas de Tempo:
Mecanismos de verificação de quantidade:
Paralisia da parte inteligente:
Otimização de aprendizagem de máquina:
Mecanismo de proteção contra a tendência:
A estratégia de quantificação de tendências de rastreamento dinâmico em múltiplos níveis é uma estratégia de negociação de quantificação avançada que combina o indicador de médias móveis Hull de múltiplos períodos com um sistema inteligente de stop-loss. Ela aumenta a confiabilidade do sinal de entrada por meio de um mecanismo rigoroso de confirmação de tendências, ao mesmo tempo em que utiliza um sistema de controle de risco em vários níveis, incluindo um sistema de controle de risco de duração pré-trigger e um stop-loss de rastreamento dinâmico pós-trigger, para atingir o máximo equilíbrio entre proteção de fundos e lucratividade.
A principal vantagem da estratégia reside na sua adaptabilidade e na sua metodologia sistematizada de gestão de lucros, que permite manter um desempenho relativamente estável em diferentes cenários de mercado. No entanto, a estratégia também apresenta riscos, como a sensibilidade a parâmetros e a dependência de um único indicador, o que exige que os comerciantes otimizem, adicionando verificação de indicadores auxiliares, construindo sistemas de parâmetros adaptáveis e análises de múltiplos quadros temporais.
A estratégia pode ser usada como um componente central de um sistema de rastreamento de tendências de médio e longo prazo, ajudando os comerciantes a aproveitar as principais oportunidades de tendências e obter um crescimento sólido de capital, enquanto controlam os riscos.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-07-04 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Samil Dogru SmartTrailing v1.1", overlay=true, pyramiding=0,
default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === PARAMETRELER ===
triggerPerc = input.float(1.2, "Tetikleme Eşiği (%)", step=0.1)
trailPerc = input.float(0.8, "Trailing Marj (%)", step=0.1)
hardStopPerc = input.float(2.5, "Maksimum Zarar (%) (Tetiklenmeden önce)", step=0.1)
// === HMA'lar (giriş için referans) ===
hma100 = ta.hma(close, 100)
hma200 = ta.hma(close, 200)
hma500 = ta.hma(close, 500)
hma600 = ta.hma(close, 600)
isBull = hma500 > hma600
longCond = ta.crossover(hma100, hma200) and isBull and hma100 > hma500 and hma200 > hma500
shortCond = ta.crossunder(hma100, hma200) and not isBull and hma100 < hma500 and hma200 < hma500
// === GİRİŞLER ===
if (longCond)
strategy.entry("Long", strategy.long)
if (shortCond)
strategy.entry("Short", strategy.short)
// === DURUM DEĞİŞKENLERİ ===
var float entryPrice = na
var float maxSinceEntry = na
var bool triggered = false
// === POZİSYON AÇILDIĞINDA BAŞLAT ===
if strategy.opentrades > 0
if na(entryPrice)
entryPrice := strategy.position_avg_price
maxSinceEntry := close
triggered := false
else
// Güncel zirve/dip güncellemesi
if strategy.position_size > 0
maxSinceEntry := math.max(maxSinceEntry, close)
if strategy.position_size < 0
maxSinceEntry := math.min(maxSinceEntry, close)
// Tetikleme kontrolü
longTriggerPrice = entryPrice * (1 + triggerPerc / 100)
shortTriggerPrice = entryPrice * (1 - triggerPerc / 100)
if strategy.position_size > 0 and close >= longTriggerPrice
triggered := true
if strategy.position_size < 0 and close <= shortTriggerPrice
triggered := true
// Çıkış kontrolü (trailing)
if triggered
if strategy.position_size > 0
trailStop = maxSinceEntry * (1 - trailPerc / 100)
if close <= trailStop
strategy.close("Long", comment="TRAIL EXIT LONG")
if strategy.position_size < 0
trailStop = maxSinceEntry * (1 + trailPerc / 100)
if close >= trailStop
strategy.close("Short", comment="TRAIL EXIT SHORT")
else
// Tetiklenmeden önce sert zarar çıkışı (hard stop)
if strategy.position_size > 0 and close <= entryPrice * (1 - hardStopPerc / 100)
strategy.close("Long", comment="HARD STOP LONG")
if strategy.position_size < 0 and close >= entryPrice * (1 + hardStopPerc / 100)
strategy.close("Short", comment="HARD STOP SHORT")
// === POZİSYON KAPANDIĞINDA RESET ===
if strategy.opentrades == 0
entryPrice := na
maxSinceEntry := na
triggered := false
// === GÖRSEL ===
plot(hma100, title="HMA 100", color=color.white, linewidth=2)
plot(hma200, title="HMA 200", color=color.yellow, linewidth=3)
p1 = plot(hma500, title="HMA 500", color=color.green, linewidth=2)
p2 = plot(hma600, title="HMA 600", color=color.red, linewidth=2)
fill(p1, p2, color=isBull ? color.new(color.green, 70) : color.new(color.red, 70), title="HMA Cloud")