Como o Stochastic Range é Calculado? Fórmula, Entradas e Limitações
Resposta direta
O Stochastic Range é calculado pegando um preço “atual” selecionado e colocando-o dentro de uma janela móvel de retrospectiva definida pela máxima mais alta e pela mínima mais baixa. O resultado é dimensionado para um valor limitado que expressa onde o preço atual se situa em relação a esse intervalo passado.
Em termos simples: ele responde: “Dentro das últimas N barras, quão próximo está o preço de hoje do topo do intervalo observado e quão distante está do fundo?”
Mecanismo e definição
Um cálculo típico do Stochastic Range segue esta estrutura:
- Escolha um comprimento de janela de retrospectiva, geralmente chamado de N.
- Para cada barra, calcule:
- MáximaMaisAlta(N) = o máximo dos valores de alta selecionados nas últimas N barras
- MínimaMaisBaixa(N) = o mínimo dos valores de baixa selecionados nas últimas N barras
- Selecione qual preço você usa como valor “atual”. Uma escolha comum é o fechamento atual (mas algumas variantes usam outros componentes de preço).
Em seguida, calcule uma posição dimensionada:
Stochastic Range (forma básica)
[ KR = \frac{PreçoAtual - MínimaMaisBaixa(N)}{MáximaMaisAlta(N) - MínimaMaisBaixa(N)} ]
Para expressá-lo como uma medida semelhante a porcentagem, algumas implementações multiplicam por 100:
[ SR = 100 \times \frac{PreçoAtual - MínimaMaisBaixa(N)}{MáximaMaisAlta(N) - MínimaMaisBaixa(N)} ]
Interpretação (sem prometer sinais):
- Se PreçoAtual = MínimaMaisBaixa(N), então KR = 0 (ou SR = 0).
- Se PreçoAtual = MáximaMaisAlta(N), então KR = 1 (ou SR = 100).
- Se PreçoAtual estiver entre os dois, o valor estará entre 0 e 1 (ou 0 e 100).
Requisitos de dados
Para calcular o acima de forma consistente, você precisa de:
- Uma série temporal de OHLC (ou pelo menos alta, baixa e um preço atual escolhido, como o fechamento).
- Uma definição clara dos limites das barras (por exemplo, barras diárias vs. barras de 1 hora), porque as máximas/mínimas móveis dependem da granularidade.
- Um comprimento de retrospectiva fixo N.
Diferenças entre variantes (por que dois gráficos podem discordar)
O Stochastic Range é frequentemente discutido junto com outros indicadores “estocásticos”, e as implementações variam. As fontes mais comuns de discordância são:
- Qual preço “atual” é usado (fechamento vs. outro componente).
- Como a máxima mais alta e a mínima mais baixa são calculadas (por exemplo, usando altas/baixas do OHLC ou entradas ajustadas).
- Se a suavização é aplicada (algumas versões adicionam etapas de média móvel antes ou depois da dimensionamento).
Como essas escolhas alteram os números calculados, você deve tratar a fórmula como dependente da definição da implementação.
Evidência ou exemplo (com suposições explícitas)
Abaixo está um exemplo concreto usando a forma básica sem suavização, e assumindo:
- Você usa PreçoAtual = Fechamento.
- Você usa as últimas N = 5 barras.
- Você calcula:
- MáximaMaisAlta(5) das 5 altas mais recentes
- MínimaMaisBaixa(5) das 5 baixas mais recentes
Suponha que nas últimas 5 barras você observe:
- MáximaMaisAlta(5) = 1.2000
- MínimaMaisBaixa(5) = 1.1800
- PreçoAtual (fechamento mais recente) = 1.1950
Etapa 1: calcule o denominador (largura do intervalo):
- MáximaMaisAlta(5) − MínimaMaisBaixa(5) = 1.2000 − 1.1800 = 0.0200
Etapa 2: calcule o numerador (distância do fundo):
- PreçoAtual − MínimaMaisBaixa(5) = 1.1950 − 1.1800 = 0.0150
Etapa 3: dimensione:
- KR = 0.0150 / 0.0200 = 0.75
- SR = 100 × 0.75 = 75
Portanto, o valor do Stochastic Range indica que o fechamento está cerca de 75% acima do intervalo de máxima–mínima observado nas 5 barras.
Uma exceção importante: denominador zero
Se MáximaMaisAlta(N) = MínimaMaisBaixa(N), o denominador se torna zero. Isso pode acontecer quando as altas e baixas são iguais em toda a janela (por exemplo, durante períodos sem variação nas entradas relevantes ou devido a peculiaridades dos dados).
Nesses casos, as implementações tipicamente:
- retornam um valor padrão (geralmente 0 ou ausente), ou
- definem um comportamento de caso especial.
Ao verificar seu cálculo, confira como o método escolhido lida com esse caso extremo.
Limitações e riscos (o que pode quebrar o resultado)
-
A escolha da janela muda tudo O comprimento da retrospectiva N controla os limites de máxima–mínima. Um N maior usa um intervalo mais amplo e frequentemente produz uma dimensionamento mais suave e estável; um N menor reage mais rápido, mas pode ser mais sensível a extremos breves.
-
A granularidade afeta o intervalo móvel Se você mudar de barras diárias para barras horárias, a máxima mais alta e a mínima mais baixa em “N barras” referem-se a um período de tempo diferente, então os valores calculados não são diretamente comparáveis.
-
Qualidade dos dados e consistência da fonte Como o cálculo usa extremos de alta e baixa, pequenas diferenças nos feeds de dados ou na construção das barras podem deslocar MáximaMaisAlta(N) e MínimaMaisBaixa(N), o que desloca o valor do oscilador.
-
Definições de variantes podem fazer parecer um indicador diferente Se uma plataforma aplica suavização ou usa um preço “atual” diferente, seu Stochastic Range calculado pode diferir mesmo quando o comprimento da retrospectiva é o mesmo.
-
Nenhuma garantia preditiva inerente Mesmo quando a matemática está correta, a posição calculada dentro de um intervalo histórico não garante, por si só, resultados futuros. A estrutura do intervalo histórico pode mudar, e o mesmo nível de Stochastic Range pode ocorrer em condições de mercado muito diferentes.
Verificação e próxima pergunta a fazer
Para verificar independentemente o Stochastic Range:
- Confirme a definição exata da implementação: N, qual preço é o PreçoAtual, se os valores são dimensionados para 0–1 ou 0–100, e se a suavização é usada.
- Calcule MáximaMaisAlta(N) e MínimaMaisBaixa(N) diretamente dos seus dados OHLC.
- Recalcule a fórmula barra por barra e verifique o caso extremo onde MáximaMaisAlta(N) − MínimaMaisBaixa(N) = 0.
Se você quiser o próximo passo, pergunte como as configurações escolhidas (especialmente N e qualquer suavização) mudam a saída. Um acompanhamento comum é: Como as configurações mudam o stochastic range?