Conteúdo do artigo
- Evidências e escopo
- Ilustração
- Processo
- O que cada característica realmente mede
- Fórmulas e cronograma de informações
- Separando volatilidade de volume
- Cálculos elaborados e um caso enganoso
- Como um detector consome as características
- Testando filtros sem alterar a estratégia
- Erros comuns
- Lista prática de verificação
- Perguntas frequentes
- Fontes de pesquisa
Evidências e escopo
As definições principais foram verificadas em relação à documentação da plataforma e do provedor de gráficos. O filtro combinado, a normalização da inclinação e os limiares de percentis abaixo são propostas de pesquisa originais. Não são apresentados novos resultados de backtesting ou alegações de lucro para essa combinação de indicadores.
Fluxo de trabalho prático
- Alinhar os dadosSincronizar OHLC, valores de referência e registros de disponibilidade.
- Calcule as característicasUtilize as fórmulas fixas ATR, de inclinação, ADX e RS.
- Verifique o aquecimentoRetorne NA quando o histórico for insuficiente, em vez de inventar zeros.
- Filtrar o contextoUtilize a imagem instantânea armazenada que antecede o sinal original do detector.
- Medir o valor agregadoAvalie os filtros individuais e as interações de volume fora da amostra.
O que cada característica realmente mede
ATR mede a amplitude de preço, incluindo gaps, e não possui sinal direcional. [1] ADX mede a força da tendência, com +DI e −DI acrescentando informação direcional. [2] Força relativa aqui significa uma razão entre o preço do ativo e o preço do índice de referência. [3] RSI é outro oscilador, derivado das próprias variações de preço do ativo, não dessa comparação com o índice de referência.
As características respondem a perguntas distintas: o stop loss proposto é grande em relação à movimentação normal? A direção de longo prazo é de alta ou de baixa? A movimentação é persistente o suficiente para ser considerada uma tendência? E o ativo está superando seu índice de referência? Diversas leituras favoráveis não fornecem automaticamente evidências independentes, pois as medidas compartilham informações sobre o preço.
O objetivo da implementação é um instantâneo de contexto imutável que um detector existente possa consultar. Mantenha intactos o sinal original, o dimensionamento da posição e as regras de saída ao testar um filtro. Caso contrário, um resultado mais robusto não poderá ser atribuído especificamente à informação adicionada.
Fórmulas e cronograma de informações
TR[t]=max(H[t]−L[t],|H[t]−C[t−1]|,|L[t]−C[t−1]|). Inicialize ATR14 com a média das primeiras quatorze observações TR válidas e, em seguida, atualize ATR[t]=(13ATR[t−1]+TR[t])/14. O valor normalizado proposto ATR é nATR=100ATR/C quando C>0. Compare o nATR atual com as 252 observações válidas precedentes para calcular o pATR; exclua a observação atual desse conjunto histórico. Retorne NA quando o histórico necessário estiver ausente.
A inclinação da média móvel proposta é s=(SMA50[t]−SMA50[t−10])/(10ATR14[t]), medida em unidades ATR por barra. Retorne NA para um denominador ATR igual a zero. Uma inclinação positiva não garante que o preço esteja acima da média, portanto, mantenha esses valores como características separadas. A variação percentual da média é uma normalização diferente.
Para movimento direcional, utilize UpMove=H[t]−H[t−1] e DownMove=L[t−1]−L[t]. Defina +DM=UpMove somente quando UpMove>DownMove e UpMove>0 forem verdadeiras; caso contrário, defina-o como zero. Defina −DM simetricamente. Em caso de empate, defina ambos como zero. Aplique Wilder RMA14 a DM e TR; +DI=100RMA(+DM)/ATR, e da mesma forma para −DI. DX=100|+DI−−DI|/(+DI+−DI); ADX=RMA14(DX). Declare a semente e a política de aquecimento. Quando ambos os valores DI forem zero após um aquecimento válido, utilize DX=0 nesta implementação.
RS[t]=P[t]/B[t], com benchmark positivo B. O desempenho relativo em n observações é rel_n=RS[t]/RS[t−n]−1. Não classifique os instrumentos por RS absoluto, pois os preços nominais das ações diferem. Combine P e B pelo instante em que seus valores se tornaram disponíveis, e não apenas por uma data correspondente. Um benchmark com fechamento posterior não pode filtrar a ordem de um mercado anterior.
O filtro de contexto longo proposto utiliza o snapshot t−1 para uma configuração emitida no fechamento do instante t: C>SMA50, slope>0.02, ADX≥20, rel20>0 e pATR entre 0.20 e 0.80, inclusive. Essa separação de uma barra é uma escolha de projeto declarada. Utilizar recursos de fechamento de instante t completos para uma ordem submetida posteriormente também pode ser causal, mas trata-se de uma configuração diferente.
Quando ATR for zero ou indisponível, retorne NA para DI, DX e ADX nesta implementação proposta; não divida por zero. A convenção DX=0 aplica-se somente após um aquecimento válido com ATR positivo e ambos os componentes direcionais iguais a zero.
after close t, save immutable feature snapshot:
nATR=100*ATR14[t]/C[t]
pATR=count(past_252_nATR<=nATR)/252
slope=(SMA50[t]-SMA50[t-10])/(10*ATR14[t])
rel20=(P[t]/B[t])/(P[t-20]/B[t-20])-1
# Proposed LONG filter: use snapshot t-1 for a setup emitted at close t.
context_ok = C[t-1]>SMA50[t-1] and slope[t-1]>0.02
context_ok &= ADX14[t-1]>=20 and rel20[t-1]>0
context_ok &= 0.20<=pATR[t-1]<=0.80
# The filter enables the original detector; it does not submit orders.
Separando volatilidade de volume
ATR e ADX não medem o volume negociado. Ao adicionar RVOL a um rompimento, mantenha a volatilidade e o contexto da tendência constantes para estimar a contribuição incremental do volume. Um único evento de notícias pode aumentar tanto ATR quanto o volume; a concordância entre os recursos não representa necessariamente fontes de informação independentes.
Um experimento compacto começa com o detector de preços, adiciona cada recurso de contexto separadamente e, em seguida, testa a interação com RVOL. Se o filtro pATR excluir sessões de notícias e grandes rompimentos bem-sucedidos simultaneamente, relate a redução no drawdown juntamente com os lucros perdidos e a cobertura de oportunidades reduzida.
Torne explícita a política de dados faltantes para o modelo combinado. Um valor válido ATR juntamente com um valor ausente RVOL não implica atividade zero, e um valor de referência ausente não implica força relativa neutra. Monitore as linhas de recursos indisponíveis separadamente das linhas rejeitadas porque um valor genuinamente observado não cumpriu a condição do limiar.
Cálculos elaborados e um caso enganoso
Exemplo sintético: o preço do ativo P sobe de 100 para 110 ao longo de vinte observações, enquanto o índice de referência B sobe de 200 para 210. O RS aumenta de 0.5 para 0.52381, resultando em rel20=4.7619%. Isso difere da subtração dos retornos, que resulta em cinco pontos percentuais. Com ATR=2.5, o nATR é aproximadamente 2.273%.
SMA50 sobe de 103 para 105 em dez barras, logo slope=2/(10×2.5)=0.08 ATR por barra. Se ADX=28, pATR=0.60 e C=110>SMA50=105, o filtro passa. Para um sinal no fechamento t, os valores devem pertencer ao snapshot t−1 declarado, nunca a uma observação posterior escolhida por parecer favorável.
Um caso enganoso mostra P caindo de 100 para 95 enquanto B cai de 200 para 180. O desempenho relativo é +5.5556%, mesmo que o ativo perca 5% em termos absolutos. Se SMA50=100 e a inclinação for negativa, o filtro de compra proposto o rejeita. Um valor alto de ADX durante uma forte queda também não gera um sinal de compra.
Essas são verificações de fórmulas e lógica, não análises históricas de operações lucrativas e perdedoras. O gráfico do indicador normaliza o RS para um valor inicial de 100; ele pode subir enquanto o preço do ativo cai. Seu valor de volume zero significa que o volume não se aplica a esse gráfico, e não que a atividade de negociação foi zero.
Como um detector consome as características
Este conjunto de recursos não possui entrada, stop de proteção ou saída independentes. Quando conectado a um detector de fundo duplo, VCP ou de rompimento, preserve as regras de negociação desse detector; o filtro apenas decide se o contexto é elegível. A introdução de um stop 2ATR cria uma decisão de estratégia adicional que requer sua própria comparação.
Alinhar os dados importa mais que adicionar indicadores. Guarde fuso horário, sessão da bolsa, updated_at, atraso do feed e regra de junção as-of por disponibilidade. Não carregue indefinidamente o último benchmark através de feriados distintos. Declare um limite de desatualização e se valores antigos rejeitam o candidato ou o tornam indisponível.
Para avaliar a força relativa em longo prazo, escolha consistentemente o retorno do preço ou o retorno total. Combinar um ativo ajustado por dividendos com um índice de referência que os exclui altera a comparação. A conversão de moeda deve utilizar as taxas disponíveis no momento da decisão. Em preços futuros não positivos, ATR/C não é a medida indicada; uma alternativa escalonada por tick ou contrato requer uma definição distinta.
Testando filtros sem alterar a estratégia
Compare uma única linha de base com cada filtro, mantendo os custos e o dimensionamento constantes. Apresente o número de negociações, a expectativa líquida, o drawdown e a cobertura por regime de mercado. ADX20, slope0.02 e a faixa do vigésimo ao 80º percentil são parâmetros propostos. Selecione-os em uma amostra de desenvolvimento e fixe-os antes da avaliação final.
Verifique os termos ATR e ADX da biblioteca em relação a sequências calculadas manualmente que contenham lacunas, barras internas, movimentos direcionais empatados e limites de aquecimento. Diferentes sementes podem alterar substancialmente as observações iniciais. A extensão de uma série de dados com barras futuras não deve alterar as características já emitidas para seu prefixo anterior.
Para RS, teste ativos e índices de referência cujos mercados fecham em horários diferentes. Inclua discrepâncias relacionadas a feriados, um valor de índice de referência desatualizado, conversão de moeda e denominador ausente. Para pATR, teste empates e verifique a convenção de classificação "menor ou igual a". A análise de sensibilidade deve variar uma pequena grade predefinida, e não buscar indefinidamente até que uma combinação pareça lucrativa.
Erros comuns
Força relativa positiva interpretada como preço crescente
Um ativo pode superar um índice de referência simplesmente por cair menos.
Indicadores sobrepostos foram considerados como evidências independentes.
A inclinação da média móvel, ADX, e o momentum podem descrever o mesmo movimento de preço subjacente.
Um índice de referência que se encerra mais tarde
Mesmo um preço de fechamento da mesma data pode ainda não estar disponível na decisão; usá-lo introduz viés por informação futura.
Lista de verificação antes de usar este método
Marque cada item após verificá-lo nos seus dados. O progresso fica salvo neste navegador; isso não certifica que a estratégia seja lucrativa.
Perguntas frequentes
O valor normalizado ATR pode ser usado quando os preços futuros são negativos?
Não com a definição ATR/C aqui. Use uma medida de tick ou escala de contrato definida separadamente; usar um denominador absoluto não preserva exatamente a mesma interpretação.
Essa força relativa é a classificação IBD RS?
Não. Trata-se de uma relação de preços com um índice de referência escolhido e sua variação ao longo do tempo. Uma classificação proprietária ou um percentil transversal do universo de ações é uma medida diferente.
Fontes de pesquisa
Cada fonte sustenta a definição ou evidência descrita ao lado. O pseudocódigo, os exemplos sintéticos e os parâmetros propostos exigem validação separada.
- Average True Range — TradingViewTradingView. Fórmula True Range, suavização e interpretação da volatilidade. Verificado em: .
- Average Directional Index — TradingViewTradingView. ADX e componentes do movimento direcional; não comprova vantagem rentável para o filtro proposto. Verificado em: .
- Price Relative / Relative Strength — ChartSchoolStockCharts. Razão entre preço do ativo e preço do benchmark; os gráficos de exemplo da fonte não são reproduzidos. Verificado em: .
Métodos relacionados
Nota de risco
Este conteúdo apoia a educação e o planejamento de pesquisas, não constitui aconselhamento financeiro. O Backtest é uma simulação histórica, não garante desempenho futuro e não executa operações reais. Os métodos desta biblioteca não são necessariamente recursos disponíveis no aplicativo. Consulte a metodologia e a central de aprendizado.
Valide as regras antes de arriscar capital real
Verifique o suporte do aplicativo, os dados e cada operação simulada; detectores avançados podem exigir uma implementação própria.
Baixe o Backtest na App Store