Ideal ZigZag: O Indicador Rápido para MetaTrader 5

Mike 2012.07.20 23:07 15 0 0
Anexo

Se você está procurando uma forma rápida e eficiente de identificar picos no mercado, o Ideal ZigZag pode ser exatamente o que você precisa!

Este indicador não só é simples, mas também extremamente ágil. Os picos são recuperados de maneira otimizada, sem interrupções ou erros.

Ideal ZigZag

Vantagens:

  • O Ideal ZigZag utiliza uma função de busca de picos muito eficiente, substituindo a função iBarShift pelo ArrayBSearch. Isso significa que ele é mais rápido e eficiente em comparação com sua versão em MQL4.
  • Todos os dados necessários para cada barra estão disponíveis em tempo real, e podem ser acessados por EAs em qualquer momento histórico.
  • Não há picos suspensos, o que garante uma visualização mais precisa.
  • O método para encontrar picos é eficiente, sem a necessidade de buscar os valores do indicador.
  • É muito rápido!
  • Funciona corretamente mesmo em inserções de histórico e ao trocar de timeframes.
  • Perfeito para uso em EAs.

Desvantagens:

  • A exigência de memória é um ponto a considerar. O ZigZag precisa de dois buffers (um só não é suficiente por causa dos atrasos), enquanto aqui são utilizados cinco buffers. No entanto, essa desvantagem é superada pela vantagem #6, já que nenhum ZigZag rápido consegue processar corretamente inserções de histórico em dois buffers.
  • Linhas adicionais são geradas para tornar os dados visíveis para um Expert Advisor. Essas linhas não devem ser visíveis para o usuário.

Princípio:

O ZigZag é desenhado com base no princípio de canalização. A largura do canal pode ser definida em pontos (IdealZZ) ou em termos percentuais (IdealZZP).

Recuperação de Picos:

input int ChannelWidth=100;

#property indicator_chart_window

datetime LastTime;
int ZZHandle;
//+------------------------------------------------------------------+
//| Função de inicialização do indicador personalizado | 
//+------------------------------------------------------------------+
void OnInit()
  {
   LastTime = 0;
   ZZHandle = iCustom(_Symbol, Period(), "IdealZZ", ChannelWidth);
  }
//+------------------------------------------------------------------+

Este exemplo é um indicador que marca (uma vez por barra) os primeiros cinco picos (incluindo o que está se formando atualmente).

⚠️ Atenção! O código pode não funcionar corretamente se o modo de barra zero estiver ativado.

Modo de Barra Zero:

O modo pode ser habilitado na variável DrawZeroBar no código. Ele está desativado por padrão. Não é recomendado ativá-lo, especialmente se o indicador estiver sendo utilizado em um Expert Advisor.

Aproveite o uso do Ideal ZigZag e fique à vontade para me informar sobre qualquer problema que você encontrar!

Lista
Comentário 0