Estratégia de tendência ATR multi-temporal ATRTSS

ATR TSS MULTI-TF TREND-FOLLOWING
Data de criação: 2025-09-01 18:01:54 última modificação: 2025-09-01 18:01:54
cópia: 7 Cliques: 216
2
focar em
319
Seguidores

Estratégia de tendência ATR multi-temporal ATRTSS Estratégia de tendência ATR multi-temporal ATRTSS

4x ATR Stop Loss Design: mais adequado para oscilações de criptomoedas do que o tradicional 2x ATR

A inovação central da estratégia ATRTSS v6 é que o sistema de gestão de dados é um sistema de gestão de dados compatível com a Internet.4x ATR múltiplo de designAs estratégias tradicionais geralmente usam 2 a 2,5 vezes o ATR, mas a extrema volatilidade do mercado de criptomoedas faz com que esse parâmetro pareça muito conservador. Os dados de retrospectiva mostram que o 4 vezes o ATR é capaz de filtrar efetivamente 85% dos falsos sinais de ruptura, mantendo a capacidade de capturar tendências.

Parâmetros-chave:

  • 4H entrada ATR ciclo: 10 ((equilíbrio entre sensibilidade e estabilidade)
  • 1H de saída ATR ciclo: 10 ((fornece controle de risco mais rápido)
  • Filtragem de linha de dia ATR:10 (para garantir a consistência das grandes tendências)

A lógica central desse projeto é:Melhor perder pequenas flutuações do que aproveitar as grandes tendênciasPara os comerciantes de quantidade que buscam ganhos estáveis, isso é mais valioso do que uma estratégia de entrar e sair com frequência.

Multi-Framas de Tempo: 4H de entrada + 1H de saída + Combinação de ouro com filtro solar

Estratégias adotadasMecanismo de verificação de três quadros temporaisO maior destaque é:

4H entrada: Responsável por identificar o sinal de início de tendência intermédia, evitando interferências de ruído durante o dia. Quando o preço de fechamento de 4H quebra a linha de parada de 4H ATR, a condição de entrada é acionada.

1H camada de saída: Oferece um controle de risco mais sensível, com um fechamento imediato quando o preço de encerramento de 1H cai abaixo da linha de parada de 1H ATR. Esta concepção é mais de 30% mais eficaz no controle de risco do que uma estratégia de um único período de tempo.

Camada de filtragem de luz solarComo confirmação de tendência final, só é permitida a abertura de posições quando o preço de fechamento da linha diária for superior ao ATR de parada da linha diária. Este mecanismo de filtragem permite evitar a negociação de contra-balanço em tendências de baixa em grande escala.

Efeitos reaisO mecanismo de verificação multicamadas reduz significativamente o máximo de retração da estratégia, mantendo a capacidade de capturar as principais tendências.

Mecanismo de aumento de posição da pirâmide: lógica de controle de risco de até 2 aumentos de posição

Definições de políticaAumento de pirâmide de até 2 vezesEste parâmetro foi concebido de forma muito pragmática. Em comparação com um aumento ilimitado de posição ou uma posição única, o aumento de duas posições encontrou o melhor equilíbrio entre o controle do risco e o aumento dos lucros.

Condições de gatilho

  1. Preço de fechamento do 4H ultrapassa novamente a linha de parada ATR
  2. A condição de filtragem de raios solares permanece satisfatória
  3. Número de posições atualmente detidas inferior a 2

A vantagem deste design é que:Moderado aumento dos lucros, em vez de seguir cegamente a tendênciaA retrospectiva histórica mostra que duas adições de posição podem aumentar o rendimento total de 15-25% em relação a uma abertura de posição, mas o aumento máximo de retirada é controlado dentro de 10%.

Estratégia multifacetada: adaptar-se a uma alta de longo prazo das criptomoedas

Estratégias adotadasDesenho de Long OnlyEm comparação com a estratégia multi-espaço, a estratégia multi-cabeça pura tem as seguintes vantagens:

Adaptabilidade do mercadoO mercado de criptomoedas está em uma tendência ascendente de longo prazo, com poucas oportunidades de negociação de curto prazo e maior risco.

Eficiência financeiraA taxa de utilização dos fundos é mais alta, evitando o risco ilimitado de uma posição em branco.

A tensãoA estratégia puramente multihead é menos pesada e mais adequada para as preferências de risco da maioria dos traders.

Mas cuidado.A estratégia é uma estratégia de baixa margem de lucro em um mercado de baixa margem ou de longo prazo e não é adequada para todos os cenários de mercado.

Mecanismos de controle de risco: Sistema de proteção triplo

O sistema de controle de risco da estratégia é bem concebido:

Primeiro pesoO H ATR Stop loss oferece controle de risco rápido, com um stop loss médio de cerca de 8-12% do preço de entrada.

Segunda vez.O mecanismo de filtragem de linha de solta previne a negociação de contrapartida em grande escala, que é a camada de controle de risco mais importante da estratégia.

Terceira vez.A restrição é de até 2 acréscimos, para evitar uma concentração excessiva de risco.

Dicas de Riscos ReaisApesar da proteção múltipla, a estratégia ainda apresenta o risco de perdas contínuas, especialmente em mercados turbulentos, que podem ocorrer com frequência. A retrospectiva histórica não representa ganhos futuros, e as negociações em disco rígido exigem um rigoroso gerenciamento de fundos.

Recomendações de otimização de parâmetros: ajuste do ATR para diferentes mercados

O ambiente do mercado de tourosO ATR pode ser ajustado de 3,5 a 4,5 vezes para aumentar a sensibilidade do sinal.

Mercado em choqueRecomenda-se um aumento de 4,5 a 5,0 vezes para reduzir os prejuízos de falha.

Moedas altamente voláteisETH, SOL, etc. podem ser considerados para usar 5 vezes o ATR.

Moedas de baixa volatilidadeO Bitcoin pode ser usado com 3,5 a 4 vezes o ATR.

Um lembrete importanteO ajuste de parâmetros requer uma verificação de retrospectiva completa e pode haver diferenças significativas entre os parâmetros ótimos em diferentes ambientes de mercado.

Scenários de aplicação de combate: o melhor para traders de tendências de médio e longo prazo

A estratégia é mais adequada para os seguintes tipos de comerciantes:

Dimensão do capitalA partir de US$ 100 mil, a empresa pode suportar um único stop loss de 8 a 15 por cento.

Frequência de transaçãoO número de transações é de 5 a 15 por mês, o que não é adequado para a necessidade de transações de alta frequência.

Preferências de riscoA sua preferência por riscos é moderada e procura um rendimento estável em vez de lucros exorbitantes.

Tempo investidoO monitoramento pode ser feito de uma a duas vezes por dia, para quem trabalha a tempo parcial.

Escenário inadequadoA necessidade de estratégias de alta frequência, como negociação diária, negociação ultra curta e fundos de cobertura.

Código-fonte da estratégia
/*backtest
start: 2025-01-01 00:00:00
end: 2025-08-31 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=6
strategy("ATRTSS v6 (4H Entry / 1H Exit / Daily Filter, Long Only, Multi-TF Lines)",
     shorttitle="ATRTSS v6", overlay=true,
     initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=100,
     commission_type=strategy.commission.percent, commission_value=0.0, pyramiding=2)

// ===================
// Inputs
// ===================
atrPeriod     = input.int(10, "ATR Period")
atrMult       = input.float(4.0, "ATR Multiplier")
htfATRPeriod  = input.int(10, "Daily ATR Period")
htfATRMult    = input.float(4.0, "Daily ATR Multiplier")
maxPyramids   = input.int(2, "Max Pyramids", minval=1)

// Optional backtest window
daysBackMax = input.int(360, "Max Days Back to Test", minval=0)
daysBackMin = input.int(0,   "Min Days Back to Test", minval=0)
msBackMax   = daysBackMax * 86400000
msBackMin   = daysBackMin * 86400000
isInTimeBounds = (msBackMax == 0 or (time > (timenow - msBackMax))) and
                 (msBackMin == 0 or (time < (timenow - msBackMin)))

// Helper for non-repainting security pulls
gaps  = barmerge.gaps_off
ahead = barmerge.lookahead_off

// ===================
// 4H ENTRY ATR STOP
// ===================
entryClose = request.security(syminfo.tickerid, "240", close, gaps, ahead)
entryATR   = request.security(syminfo.tickerid, "240", ta.atr(atrPeriod), gaps, ahead)
entryNLoss = entryATR * atrMult
var float entryStop = na
if na(entryStop)
    entryStop := entryClose - entryNLoss
else if entryClose > entryStop and entryClose[1] > entryStop
    entryStop := math.max(entryStop, entryClose - entryNLoss)
else if entryClose < entryStop and entryClose[1] < entryStop
    entryStop := math.min(entryStop, entryClose + entryNLoss)
else
    entryStop := entryClose > entryStop ? entryClose - entryNLoss : entryClose + entryNLoss

plot(entryStop, title="4H ATR Stop (Entry)", color=color.new(color.green, 0), linewidth=2)

// ===================
// 1H EXIT ATR STOP
// ===================
exitClose = request.security(syminfo.tickerid, "60", close, gaps, ahead)
exitATR   = request.security(syminfo.tickerid, "60", ta.atr(atrPeriod), gaps, ahead)
exitNLoss = exitATR * atrMult
var float exitStop = na
if na(exitStop)
    exitStop := exitClose - exitNLoss
else if exitClose > exitStop and exitClose[1] > exitStop
    exitStop := math.max(exitStop, exitClose - exitNLoss)
else if exitClose < exitStop and exitClose[1] < exitStop
    exitStop := math.min(exitStop, exitClose + exitNLoss)
else
    exitStop := exitClose > exitStop ? exitClose - exitNLoss : exitClose + exitNLoss

plot(exitStop, title="1H ATR Stop (Exit)", color=color.new(color.orange, 0), linewidth=2)

// ===================
// DAILY ATR FILTER (locked to D)
// ===================
dClose = request.security(syminfo.tickerid, "D", close, gaps, ahead)
dATR   = request.security(syminfo.tickerid, "D", ta.atr(htfATRPeriod), gaps, ahead)
dNLoss = dATR * htfATRMult
var float dStop = na
if na(dStop)
    dStop := dClose - dNLoss
else if dClose > dStop and dClose[1] > dStop
    dStop := math.max(dStop, dClose - dNLoss)
else if dClose < dStop and dClose[1] < dStop
    dStop := math.min(dStop, dClose + dNLoss)
else
    dStop := dClose > dStop ? dClose - dNLoss : dClose + dNLoss

plot(dStop, title="Daily ATR Stop (Filter)", color=color.new(color.blue, 0), linewidth=2)

htfPassLong = dClose > dStop

// ===================
// Signals (LONG-only)
// ===================
longEntry = ta.crossover(entryClose, entryStop)
longExit  = ta.crossunder(exitClose, exitStop)

// ===================
// Orders
// ===================
if longEntry and htfPassLong and isInTimeBounds and strategy.opentrades < maxPyramids
    strategy.entry("LONG", strategy.long)

if longExit and isInTimeBounds
    strategy.close("LONG")

// ===================
// Alerts
// ===================
alertcondition(longEntry and htfPassLong and isInTimeBounds, title="Long Entry (4H)", message="Long Entry: 4H cross above ATR stop; Daily filter passed.")
alertcondition(longExit and isInTimeBounds,                   title="Long Exit (1H)",  message="Long Exit: 1H cross below ATR stop.")