Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Telegram!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Visualizações:
52
Avaliação:
(7)
Publicado:
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

Esse é um indicador SuperTrend de última geração que coloca um mecanismo completo de aprendizado de máquina sobre o conceito clássico de acompanhamento de tendências. Em vez de usar multiplicadores ATR fixos e regras estáticas, o indicador aprende continuamente com seu próprio histórico de sinais, adapta seus parâmetros principais barra a barra e filtra as entradas por meio de um pipeline de confirmação de vários estágios antes de traçar qualquer seta no gráfico. Ele é executado inteiramente dentro da estrutura de indicadores do MetaTrader 5, não requer bibliotecas externas e expõe um buffer de confiança oculto que qualquer Expert Advisor pode ler diretamente para negociação automatizada.

O indicador é organizado em 13 grupos de entrada que abrangem todos os aspectos de seu comportamento: modo de sinal, envelope de volatilidade, filtro de momentum, análise de fluxo, qualidade do sinal, o mostrador de reatividade principal, o mecanismo de ajuste automático, o otimizador, a proteção de risco, a memória de contexto (grade de regime), traços de decaimento, alertas e exibição. Os valores padrão foram escolhidos para que o indicador funcione imediatamente em qualquer símbolo líquido e em qualquer período de tempo, mas cada parâmetro pode ser ajustado independentemente para se adequar a um instrumento ou estilo de negociação específico.


Como o indicador funciona

Em sua essência, o indicador calcula duas bandas SuperTrend - uma linha Bull (azul) e uma linha Bear (vermelha) - usando um envelope ATR suavizado por RMA aplicado a uma base de preço selecionada pelo usuário. A largura da banda e o período ATR não são fixos: eles começam com os valores inseridos pelo usuário e são continuamente ajustados pelo otimizador sempre que novos resultados de negociação são avaliados. Isso significa que o envelope se amplia naturalmente durante os regimes de alta volatilidade e se estreita durante os mercados calmos, sem nenhuma intervenção manual.

Os sinais são gerados em um dos dois modos. No modo Reversão, o indicador observa uma inversão de tendência confirmada: um pivô de alta deve se formar enquanto a tendência é de baixa (produzindo uma seta verde de compra) ou um pivô de baixa deve se formar enquanto a tendência é de alta (produzindo uma seta vermelha de venda). No modo de rompimento, a lógica é invertida: uma nova oscilação de alta durante uma tendência de alta aciona um sinal de venda antecipando um rompimento fracassado, e uma nova oscilação de baixa durante uma tendência de baixa aciona um sinal de compra. Ambos os modos exigem que todos os filtros de confirmação ativos estejam de acordo antes que qualquer seta seja desenhada.


Filtros de confirmação

Todo sinal candidato passa por três filtros independentes antes de ser aceito.

O filtro Momentum usa um RSI padrão. Para que um sinal de compra seja disparado, o RSI deve ter tocado ou cruzado abaixo do Nível Frio (padrão 30) dentro da janela de lookback recente. Para um sinal de venda, o RSI deve ter tocado ou cruzado acima do nível quente (padrão 70). Isso evita que o indicador gere entradas de contra-tendência durante as execuções de momentum unilateral.

O filtro Flow Analysis examina o volume de ticks. Quando a opção Exigir Surto está ativada, um sinal só é aceito se o volume da barra atual exceder a média das barras de amostra anteriores em pelo menos o fator Limite de Surto. Isso elimina os sinais que ocorrem em barras de baixa atividade, nas quais os rompimentos têm maior probabilidade de serem falsos.

O filtro de qualidade do sinal, quando o modo Key Levels Only está ativo, exige que o pivô por trás do sinal seja um nível estrutural importante: a distância entre a oscilação alta e a oscilação baixa mais próxima (ou vice-versa) deve exceder a profundidade do nível chave multiplicada pelo ATR atual. Isso mantém os sinais ancorados em uma estrutura de preço significativa em vez de pequenas oscilações.


Mecanismo de aprendizado de máquina

O mecanismo de ML opera por meio de quatro subsistemas cooperativos.

A memória de contexto (Regime Grid) é uma grade 8x8 (configurável) que mapeia o regime de mercado em um eixo e a volatilidade no outro. Cada célula acumula estatísticas exponencialmente ponderadas de negociações anteriores que ocorreram em condições semelhantes. Quando um novo sinal está sendo avaliado, o indicador lê a célula correspondente ao regime e à volatilidade atuais, mescla suas recomendações nas células vizinhas usando um kernel gaussiano (controlado pelo Neighbor Blend Radius) e ajusta a pontuação de confiança de acordo. As células se deterioram com o tempo por meio de um parâmetro de meia-vida, de modo que a memória obsoleta do mercado é gradualmente esquecida.

O Otimizador é executado a cada poucas barras (definido pelo Update Cooldown). Ele avalia uma janela contínua de resultados de negociações recentes e calcula atualizações em estilo gradiente para cinco parâmetros: multiplicador de largura de banda, comprimento de suavização de ATR, distância de stop, distância de take-profit e buffer de breakout. As atualizações são quantizadas para evitar a perda de ruído, e uma banda morta evita microajustes que não alteram significativamente o comportamento. Uma etapa de reversão periódica puxa os parâmetros de volta para seus valores de âncora para evitar desvios durante condições de mercado incomuns.

O buffer de rastreamento de decaimento armazena uma memória de curto prazo dos resultados recentes do sinal como registros de energia em decaimento. Cada registro contém o retorno normalizado pelo ATR, a excursão adversa máxima, o estado do regime e o nível de volatilidade no momento do sinal. Esses rastros alimentam o otimizador com um contexto mais rico do que as simples contagens de ganhos/perdas, ajudando-o a distinguir entre os sinais que estavam direcionalmente corretos, mas que foram interrompidos pelo ruído, e aqueles que estavam genuinamente errados.

O processador de micro-lotes, quando ativado, agrupa os resultados recentes em pequenos lotes e calcula recomendações de parâmetros em nível de lote. Esses sinais de lote são combinados com as recomendações contínuas do otimizador para suavizar as reações exageradas de uma única negociação.


Proteção contra riscos

O sistema Risk Guard fica entre o mecanismo de sinal e o gravador de buffer. Mesmo que todos os filtros de confirmação sejam aprovados e o mecanismo de ML endosse um sinal, o Risk Guard pode bloqueá-lo sob as seguintes condições.

  • Limite de negociação da sessão. Quando o número de sinais no dia de negociação atual atingir o máximo de entradas por sessão, nenhum outro sinal será plotado pelo resto do dia.
  • Limite de perda da sessão. Se o PnL da sessão simulada (calculado a partir da posição Sim USD e das distâncias de parada baseadas em ATR) cair abaixo do limite de perda da sessão, todos os sinais adicionais serão bloqueados até a próxima sessão.
  • Resfriamento após perda. Depois de uma negociação com perda, o indicador impõe uma pausa de, pelo menos, barras de Base Pause After Loss. Se o Dynamic Cooldown estiver ativado, a pausa será dimensionada de acordo com o tamanho da perda em relação ao ATR, de modo que perdas maiores produzirão pausas mais longas.
  • Sequência de perdas consecutivas. Se o número de perdas consecutivas atingir o Limite de Sequência, a negociação será pausada pelo restante da sessão, independentemente do cronômetro de resfriamento.

Todos os contadores do Risk Guard são redefinidos automaticamente no início de cada novo dia de negociação.


Pontuação de confiança e integração de EA

Cada barra de sinal recebe uma pontuação de confiança entre 0 e 100, gravada no quinto buffer oculto (rótulo: Confidence). A pontuação é construída a partir de quatro componentes: a confiança da célula da grade do Regime Grid, um aumento quando o RSI está confirmando fortemente a direção do sinal, um aumento quando há um aumento de volume e um aumento quando o regime atual se alinha com a direção do sinal. Um Expert Advisor pode ler esse buffer usando CopyBuffer e usar a pontuação para dimensionar o tamanho da posição, filtrar sinais de baixa confiança ou classificar sinais concorrentes em vários símbolos.


Painel de controle

Quando Show Info Dashboard está ativado, uma tabela de várias colunas é desenhada diretamente no gráfico como um objeto de rótulo de texto. O painel exibe a direção da tendência atual, as taxas de ganho reais para sinais longos e curtos separadamente (calculadas a partir da comparação real de preços futuros de 5 barras em vez de simulação), os índices de Sharpe e Sortino do histórico de retorno ATR contínuo, a contagem total de sinais, a pontuação de confiança atual e o status do Risk Guard (barras de resfriamento ativas restantes, negociações usadas na sessão, PnL da sessão). O painel é atualizado a cada nova barra e a cada tick em tempo real.


Alertas

O indicador pode enviar um alerta pop-up do MetaTrader e/ou uma notificação push móvel sempre que uma nova seta de compra ou venda for desenhada na barra atual (ao vivo). A opção Alerta uma vez por barra evita alertas duplicados quando o indicador recalcula na mesma barra devido a novos ticks.


Parâmetros de entrada

Parâmetro
Padrão
Descrição
GRUPO 1 - MODO DE SINAL


Tipo de sinal
Reversão
Reversão: o sinal é disparado na inversão da tendência. Rompimento: o sinal é disparado quando há falha no rompimento em um novo extremo.
Exigir novo pivô
falso
Quando verdadeiro, um sinal de reversão exige que um novo extremo de oscilação tenha se formado antes da inversão da tendência. Reduz a frequência do sinal e aumenta a seletividade.
Espaçamento do sinal
10
Número mínimo de barras que deve passar entre dois sinais consecutivos. Evita o agrupamento de sinais em mercados rápidos.
GRUPO 2 - ENVELOPE DE VOLATILIDADE


Janela de lookback
30
Número de barras recentes usadas para detectar oscilações altas e baixas para a lógica do sinal. Também define o valor de sensibilidade inicial passado para o otimizador.
Período de suavização
24
Período ATR para o envelope SuperTrend. Adaptado pelo otimizador ao longo do tempo. Um período mais longo produz bandas mais suaves que reagem mais lentamente às mudanças de volatilidade.
Largura da banda
1.4
Multiplicador de ATR para a banda da SuperTrend. Adaptado pelo otimizador. Valores mais altos criam bandas mais largas com menos inversões de tendência, porém mais confiáveis.
Base de preço
hlcc4
Série de preços usada como ponto médio para as bandas da SuperTrend. Opções: aberto, alto, baixo, fechado, hl2, hlc3, ohlc4, hlcc4.
Modo True Range
verdadeiro
Quando verdadeiro, o ATR é suavizado com RMA (suavização de Wilder). Quando falso, é usada a suavização da EMA. A RMA é a convenção clássica da SuperTrend.
GRUPO 3 - FILTRO DE MOMENTUM


RSI Ativo
Verdadeiro
Habilita o filtro de confirmação de momentum RSI. Desativar para permitir sinais independentemente da posição do RSI.
Comprimento do RSI
14
Período para o cálculo do RSI.
Memória da zona quente
50
Número de barras a serem analisadas ao verificar se o RSI esteve acima do Nível Quente. Um sinal de venda exige que pelo menos uma barra nessa janela tenha o RSI acima do nível quente.
Memória da zona fria
50
Número de barras a serem analisadas ao verificar se o RSI esteve abaixo do Nível Frio. Um sinal de compra requer pelo menos uma barra nessa janela para que o RSI esteja abaixo do nível frio.
Nível quente do RSI
70
Limite do RSI acima do qual o momentum é considerado sobrecomprado. Usado tanto pelo filtro quanto pelo marcador de confiança.
Nível frio do RSI
30
Limite do RSI abaixo do qual o momentum é considerado sobrevendido.
GRUPO 4 - ANÁLISE DE FLUXO


Profundidade da amostra
3
Número de barras recentes cujo volume é calculado como média para formar a linha de base para a verificação de surto.
Limite de surto
1.2
O volume atual da barra deve exceder esse múltiplo do volume médio para que o filtro de surto seja aprovado.
Exigir surto
Falso
Quando verdadeiro, um aumento de volume é obrigatório para qualquer sinal. Quando falso, a verificação de surto é apenas consultiva e não bloqueia sinais.
GRUPO 5 - QUALIDADE DO SINAL


Key Levels Only (Somente níveis-chave)
falso
Quando verdadeiro, os sinais são restritos aos pivôs que se qualificam como níveis estruturais principais com base no limite de profundidade do nível-chave.
Profundidade do nível-chave (xATR)
4.5
Intervalo mínimo de oscilação em unidades ATR necessário para que um pivô seja classificado como um nível principal.
GRUPO 6 - MOSTRADOR MESTRE


Reatividade (1-20)
10
Seletor de sensibilidade global. Valores mais baixos tornam o mecanismo de sinal menos reativo às oscilações de preço, reduzindo o ruído, mas também a capacidade de resposta. Valores mais altos aumentam a sensibilidade.
Processamento de micro-lotes
verdadeiro
Ativa o subsistema de aprendizado de microlotes que agrupa resultados de sinais recentes e combina recomendações de parâmetros em nível de lote com a saída do otimizador.
Sensor de pressão em tempo real
Verdadeiro
Ativa o rastreamento da pressão do tick em tempo real. O sensor acumula a pressão de compra e venda em cada barra e a alimenta no classificador de regime.
GRUPO 7 - MECANISMO DE AJUSTE AUTOMÁTICO


Ativar o Auto-Tune
verdadeiro
Chave principal do sistema de ajuste automático. Quando desativado, a largura da banda e o período de suavização permanecem fixos em seus valores de entrada.
Use Background Test Matrix (Usar matriz de teste em segundo plano)
Verdadeiro
Ativa o sistema de sonda em segundo plano que rastreia silenciosamente resultados hipotéticos de negociação em diferentes combinações de parâmetros para informar o otimizador.
Bloquear envelope na base
verdadeiro
Quando verdadeiro, as bandas do gráfico (o que você vê no gráfico) são bloqueadas para o valor de largura da banda de entrada. O mecanismo de sinal ainda usa parâmetros adaptativos internamente.
GRUPO 8 - OTIMIZADOR


Ativação do otimizador
Verdadeiro
Chave mestra para o otimizador de parâmetros. Quando desativado, os cinco parâmetros adaptativos permanecem em seus valores iniciais.
Tamanho do passo
0.25
Taxa de aprendizado para atualizações de parâmetros. Valores menores produzem uma adaptação mais estável, porém mais lenta. Valores maiores reagem mais rapidamente, mas podem oscilar.
Profundidade do histórico
30
Número de resultados de negociações recentes usados na janela de estatísticas contínuas para cálculos de Sharpe, Sortino e taxa de ganho.
Teto de ganhos
0.62
Se a taxa de ganhos da rolagem subir acima desse valor, o otimizador aumenta o multiplicador ATR para reduzir a frequência do sinal e capturar apenas configurações de maior qualidade.
Piso de ganhos
0.38
Se a taxa de ganhos da rolagem cair abaixo desse valor, o otimizador diminuirá o multiplicador ATR para se tornar mais responsivo e recuperar o impulso.
Normalizar retornos por ATR
verdadeiro
Divide o PnL da negociação pelo ATR no momento do sinal antes de armazenar na matriz de retorno contínuo. Isso torna os índices de Sharpe e Sortino comparáveis em diferentes regimes de volatilidade.
Suavização de momentum
0.35
EMA alfa aplicado ao gradiente do otimizador antes de ser adicionado a cada parâmetro. Suaviza as reações exageradas de uma única negociação.
Resfriamento da atualização (barras)
3
Número mínimo de barras entre os ciclos de atualização de parâmetros. Evita que o otimizador seja acionado em cada barra.
Largura da banda morta
0.01
As alterações de parâmetros menores que essa fração do valor atual são suprimidas. Evita microajustes acionados por ruído.
Período da banda morta
0.25
Período fracionário usado no cálculo do decaimento da banda morta juntamente com a Largura da banda morta.
Largura do passo do Quant
0.05
Etapa de quantização para as atualizações do multiplicador de largura de banda. Arredonda os valores propostos para o múltiplo mais próximo dessa etapa.
Proteção da etapa do quant
0.02
Etapa de quantização para o multiplicador de distância de parada adaptável.
Quant Step Target (Meta da etapa Quant)
0.02
Etapa de quantização para o multiplicador adaptativo de take-profit.
Quant Step Edge (Borda da etapa quant)
0.01
Etapa de quantização para o buffer de breakout adaptável.
Intervalo de reversão da âncora
200
A cada tantas barras, todos os parâmetros adaptativos são empurrados de volta para seus valores de âncora de entrada pela fração de Força de Reversão de Âncora. Evita desvios de longo prazo.
Força de reversão da âncora
0.01
Fração da lacuna entre o valor adaptativo atual e o valor de âncora que é fechada em cada evento de reversão.
Limite de PnL por negociação
750.0
Os valores simulados de PnL acima desse valor absoluto em dólares são limitados antes de serem armazenados na matriz de retorno contínuo. Evita que valores extremos distorçam as estatísticas do otimizador.
GRUPO 9 - PROTEÇÃO CONTRA RISCOS


Máximo de entradas por sessão
20
Número máximo de setas de sinal que podem ser plotadas em um único dia de negociação. É redefinido no início de cada novo dia.
Limite de perda de sessão USD
-1000.0
Se o PnL da sessão simulada cair abaixo desse valor, nenhum outro sinal será plotado pelo resto do dia.
Pausa básica após perda
5
Número mínimo de barras a esperar após um sinal de perda antes de permitir um novo sinal. Estendido pelo Dynamic Cooldown quando ativado.
Limite de sequência
3
Número máximo de sinais de perda consecutivos permitido antes que a negociação seja interrompida pelo resto da sessão.
Escala de pausa por tamanho da perda
Verdadeiro
Quando verdadeiro, o resfriamento pós-perda é estendido proporcionalmente ao tamanho da perda em relação ao ATR. Perdas maiores produzem pausas mais longas.
GRUPO 10 - MEMÓRIA DE CONTEXTO (GRADE DE REGIME)


Ativar grade de regime
verdadeiro
Ativa a grade de memória de contexto 2D que armazena estatísticas de desempenho por célula de regime/volatilidade e combina suas recomendações com a pontuação de confiança.
Bins de regime
8
Número de compartimentos ao longo do eixo do regime da grade. Mais compartimentos proporcionam uma resolução de contexto mais fina ao custo de uma população de células mais lenta.
Bins de volatilidade
8
Número de compartimentos ao longo do eixo de volatilidade da grade.
Raio de mistura de vizinhos
0.8
Sigma do kernel gaussiano usado para mesclar recomendações de células de grade adjacentes. Valores maiores suavizam mais células, enquanto valores menores tornam cada célula mais independente.
Meia-vida de decaimento (negociações)
50
Número de negociações após as quais as estatísticas acumuladas de uma célula de grade decaem até a metade de sua influência. Controla a rapidez com que a memória antiga do mercado é esquecida.
Rampa de confiança (negociações)
20
Número mínimo de negociações que uma célula de grade deve acumular antes que sua recomendação de confiança atinja o peso total.
Influência máxima da grade
0.65
Fração máxima pela qual a grade do regime pode ajustar o resultado do otimizador. Limita a autoridade da grade para evitar que ela substitua totalmente o otimizador.
Teto da relação de volume
2.5
Índice máximo de volatilidade usado ao normalizar o eixo de volatilidade para o agrupamento da grade. Os valores acima desse valor são fixados no compartimento superior.
GRUPO 11 - RASTROS DE DECAIMENTO


Ativar buffer de rastreamento
verdadeiro
Ativa o buffer de rastreamento da memória de curto prazo que armazena os resultados recentes do sinal como registros de energia de decaimento para o otimizador.
Profundidade do buffer
30
Número máximo de registros de rastreamento de decaimento mantidos na memória simultaneamente.
Taxa de esmaecimento por barra
0.02
Fração pela qual a energia de cada registro de traço decai em cada nova barra. Um registro com energia abaixo de um limite mínimo é removido do buffer.
Intervalo de mesclagem (barras)
200
A cada tantas barras, os registros de rastreamento com regime e perfis de volatilidade semelhantes são consolidados para reduzir a fragmentação do buffer.
Limite de movimento adverso
0.8
Excursão adversa máxima em unidades ATR acima da qual um registro de rastreamento é sinalizado como um evento de cauda. Os registros marcados como cauda têm maior influência no parâmetro de distância de parada do otimizador.
Limite de aperto de guarda
0.02
Valor fracionário máximo pelo qual o multiplicador de parada adaptável pode ser reforçado em um único ciclo do otimizador em resposta a registros de rastreamento marcados com cauda.
GRUPO 12 - ALERTAS


Alerta pop-up sobre sinal
verdadeiro
Envia uma caixa de diálogo de alerta pop-up do MetaTrader quando uma nova seta de sinal aparece na barra ativa.
Notificação push no sinal
falso
Envia uma notificação push para o aplicativo móvel MetaTrader quando um novo sinal é disparado. Requer que as notificações push sejam configuradas nas definições do MetaTrader.
Alerta uma vez por barra
true
Evita alertas repetidos quando o indicador recalcula na mesma barra devido a novos ticks recebidos.
GRUPO 13 - EXIBIÇÃO


Proteção xATR
1.00
Multiplicador de ATR usado para computar a distância de stop-loss simulada para rastreamento de PnL do painel e cálculos do Risk Guard.
Alvo xATR
2.00
Multiplicador ATR usado para calcular a distância de take-profit simulada para rastreamento de PnL no painel.
Buffer de borda xATR
0.20
Buffer ATR adicional adicionado além do nível de stop ou meta no modo breakout para levar em conta o spread e a derrapagem no PnL simulado.
Posição simulada USD
1000.0
Tamanho da posição nocional em dólares americanos usado para todos os cálculos de PnL simulados no painel e no Risk Guard. Não afeta a negociação real.
Mostrar painel de informações
true
Ativa a tabela de informações de várias colunas desenhada no gráfico que mostra o estado da tendência, as taxas de vitória, os índices Sharpe/Sortino, a pontuação de confiança e o status do Risk Guard.

ss


Observação: esse indicador é fornecido para fins educacionais e analíticos. Os subsistemas de aprendizado de máquina se adaptam aos dados históricos de preços e não garantem o desempenho futuro. Sempre valide em uma conta de demonstração antes de usar em negociações reais. Os números simulados de PnL mostrados no painel baseiam-se em suposições com escala ATR e não refletem as condições reais de execução do corretor.

Nome do arquivo
Descrição do arquivo
ML_SuperTrend.mq5
Código-fonte completo do indicador ML SuperTrend (v10.02)

Traduzido do inglês pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/en/code/72110

XANDER Adaptive Cross XANDER Adaptive Cross

Duas médias móveis adaptativas que leem o mercado de forma diferente. Os crossovers sinalizam mudanças de tendência.

Institutional GARCH(1,1) Volatility Forecaster Institutional GARCH(1,1) Volatility Forecaster

Um mecanismo quantitativo preditivo que substitui o ATR de varejo defasado, ele utiliza o modelo econométrico GARCH(1,1), ganhador do prêmio Nobel, para prever matematicamente a volatilidade e a variação futuras do mercado.

Accumulation/Distribution Accumulation/Distribution

O Indicador Accumulation/Distribution (Acumulação/Distribuição ou A/D) é determinado pelas mudanças de preço e volume.

Accelerator Oscillator (AC) Accelerator Oscillator (AC)

O Indicador Acceleration/Deceleration (Aceleração/Desaceleração ou AC) mede a aceleração e a desaceleração da força motriz atual do mercado.