Artigos com exemplos de como programar indicadores na linguagem MQL5

icon

Os indicadores técnicos são as ferramentas mais simples e práticas para analisar gráficos de preços. Nesta seção, você encontra artigos que lhe ensinam passo a passo a aprender MQL5. Desse modo, você pode contruir indicadores clássicos de análise técnica e aprender a criar os seus próprios.

Estes artigos oferecem uma explicação detalhada dos códigos-fonte que estão anexados a eles. Você pode baixá-los e abri-los no MetaEditor enquanto segue a leitura do artigo.

Novo artigo
recentes | melhores
Interfaces Gráficas III: Grupos de Botões Simples e Multifuncionais (Capítulo 2)
Interfaces Gráficas III: Grupos de Botões Simples e Multifuncionais (Capítulo 2)

Interfaces Gráficas III: Grupos de Botões Simples e Multifuncionais (Capítulo 2)

O primeiro capítulo desta série foi sobre os botões simples e multifuncionais. O segundo artigo se dedicará aos grupos de botões interconectados entre si, que permitirão a criação dos controles, quando um usuário puder selecionar uma das opções a partir de um determinado conjunto (grupo).
Interfaces Gráficas III: Botões Simples e Multifuncionais (Capítulo 1)
Interfaces Gráficas III: Botões Simples e Multifuncionais (Capítulo 1)

Interfaces Gráficas III: Botões Simples e Multifuncionais (Capítulo 1)

Vamos começar a estudos sobre o controle chamado botão. Nós vamos mostrar exemplos de várias classes para a criação de um botão simples, botões com funcionalidades estendidas (botão com ícones/imagens e botão de divisão - "split button") e aqueles que são interconectados (grupos de botões e botão de radio). Além disso, nós vamos apresentar alguns incrementos para as classes existentes afim de ampliar a capacidade dos controles.
Interfaces Gráficas II: O Elemento Menu Principal (Capítulo 4)
Interfaces Gráficas II: O Elemento Menu Principal (Capítulo 4)

Interfaces Gráficas II: O Elemento Menu Principal (Capítulo 4)

Este é o capítulo final da segunda parte da série sobre interfaces gráficas. Aqui, nós vamos estudar a criação do menu principal. Demonstraremos neste artigo o desenvolvimento deste controle e a configuração dos manipuladores das classes da biblioteca para que ele tenha uma reação correta para as ações do usuário. Nós também vamos discutir como anexar os menus de contexto para os elementos do menu principal. Além disso, nós vamos mencionar a questão do bloqueio dos elementos inativos atualmente.
Interfaces Gráficas II: Configuração dos manipuladores de eventos da Biblioteca (Capítulo 3)
Interfaces Gráficas II: Configuração dos manipuladores de eventos da Biblioteca (Capítulo 3)

Interfaces Gráficas II: Configuração dos manipuladores de eventos da Biblioteca (Capítulo 3)

Os artigos anteriores contêm a implementação das classes para criar os componentes do menu principal. Agora, está na hora de olharmos com mais atenção os manipuladores de eventos nas classes base principais e dos controles criados. Nós também prestaremos uma atenção especial na gestão do estado do gráfico, dependendo da localização do cursor do mouse.
Como criar um indicador de gráfico não padronizado no Mercado MetaTrader
Como criar um indicador de gráfico não padronizado no Mercado MetaTrader

Como criar um indicador de gráfico não padronizado no Mercado MetaTrader

Através de gráficos off-line, programação em MQL4 e uma disposição razoável, você pode obter uma variedade de tipos de gráficos: "Point & Figure", "Renko", "Kagi", "Range bars", gráficos equivolumes, etc. Neste artigo, vamos mostrar como isso pode ser alcançado sem o uso de DLL e como indicadores "dois-para-um" podem ser publicados e comprados no mercado.
Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)
Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)

Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)

Neste artigo, nós vamos criar o elemento linha de separação. Será possível usá-lo não só como um elemento de interface independentes, mas também como uma parte de diversos outros elementos. Depois disso, nós teremos todos os recursos necessários para o desenvolvimento da classe do menu de contexto, que também serão considerados neste artigo em detalhe. Acrescentando, nós vamos apresentar todos os incrementos necessários à classe, que é a base para armazenar os ponteiros para todos os elementos da interface gráfica da aplicação.
Interfaces Gráficas II: O Elemento de Menu (Capítulo 1)
Interfaces Gráficas II: O Elemento de Menu (Capítulo 1)

Interfaces Gráficas II: O Elemento de Menu (Capítulo 1)

Na segunda parte da série, nós vamos mostrar em detalhes o desenvolvimento de tais elementos de interface como o menu principal e o menu de contexto. Nós também vamos mencionar os elementos de desenho e criar uma classe especial para ele. Nós vamos discutir detalhadamente tais questões como a gestão de eventos do programa, incluindo aquelas que são personalizadas.
Interfaces gráficas I: Biblioteca de Testes em Programas de Diferentes Tipos e no Terminal MetaTrader 4 (Capítulo 5)
Interfaces gráficas I: Biblioteca de Testes em Programas de Diferentes Tipos e no Terminal MetaTrader 4 (Capítulo 5)

Interfaces gráficas I: Biblioteca de Testes em Programas de Diferentes Tipos e no Terminal MetaTrader 4 (Capítulo 5)

No capítulo anterior da primeira parte da série sobre interfaces gráficas, a classe de formulário foi enriquecida por métodos que permitiram gerir o formulário através dos cliques em seus controles. Neste artigo, nós vamos testar nosso trabalho em diferentes tipos de programa MQL, como indicadores e scripts. Já que a biblioteca foi concebida para ser multi-plataforma para que ela pudesse ser utilizada em todas as plataformas MetaTrader, nós também vamos testá-la no MetaTrader 4.
Interfaces gráficas I: Funções para os Botões do Formulário e Remoção dos Elementos da Interface (Capítulo 4)
Interfaces gráficas I: Funções para os Botões do Formulário e Remoção dos Elementos da Interface (Capítulo 4)

Interfaces gráficas I: Funções para os Botões do Formulário e Remoção dos Elementos da Interface (Capítulo 4)

Neste artigo, nós vamos continuar desenvolvendo esta classe, adicionando os métodos que permitem gerir o formulário mediante os cliques em seus controles. Nós habilitaremos o fechamento do programa por um botão do formulário, bem como implementar a funcionalidade de minimização e maximização do mesmo.
Interfaces Gráficas I: Animação na Interface Gráfica (Capítulo 3)
Interfaces Gráficas I: Animação na Interface Gráfica (Capítulo 3)

Interfaces Gráficas I: Animação na Interface Gráfica (Capítulo 3)

No artigo anterior, nós começamos a desenvolver uma classe de formulário para os controles. Neste artigo, nós vamos continuar a desenvolver esta classe e preenchê-la com os métodos para mover um formulário sobre a área do gráfico. Em seguida, integraremos este componente da interface para o núcleo da biblioteca. Além disso, nós vamos garantir que os controles do formulário mudem de cor quando o cursor do mouse estiver pairando sobre eles.
Interfaces Gráficas I: Formulário para os Controles (Capítulo 2)
Interfaces Gráficas I: Formulário para os Controles (Capítulo 2)

Interfaces Gráficas I: Formulário para os Controles (Capítulo 2)

Neste artigo, nós vamos criar o primeiro e o principal elemento da interface gráfica - o formulário para os controles. Vários controles podem ser anexados a este formulário, podendo ser de qualquer lugar e qualquer combinação.
Características do Desenvolvimento de Indicadores Personalizados
Características do Desenvolvimento de Indicadores Personalizados

Características do Desenvolvimento de Indicadores Personalizados

O Desenvolvimento de Indicadores Personalizados no sistema de negociação MetaTrader tem uma série de características.
Indicador Rope por Erik Naymanf
Indicador Rope por Erik Naymanf

Indicador Rope por Erik Naymanf

O artigo revela como o indicador "Rope" foi criado com base na "The Small Encyclopedia of Trader" (Pequena Enciclopédia do Trader), por Erik L. Nayman. Este indicador mostra a direção da tendência, usando cálculos dos valores das tendências de alta e de baixa durante um período de tempo determinado. O artigo também conta com os princípios do desenvolvimento e cálculos do indicador, bem como exemplos do código. Outros temas abordados incluem o desenvolvimento de um Expert Advisor com base no indicador, e também, a otimização dos parâmetros externos.
MQL5 para iniciantes: Proteção antivandalismo de objetos gráficos
MQL5 para iniciantes: Proteção antivandalismo de objetos gráficos

MQL5 para iniciantes: Proteção antivandalismo de objetos gráficos

O que o seu programa deve fazer, se os painéis de controle gráfico foram removidos ou modificados por alguém? Neste artigo, vamos mostrar a você o porquê de não ter objetos no gráfico "sem dono" e como não perder o controle sobre eles, se forem renomeados ou excluídos após o aplicativo ser deletado.
Desenhando Resistência e Níveis de Suporte Com MQL5
Desenhando Resistência e Níveis de Suporte Com MQL5

Desenhando Resistência e Níveis de Suporte Com MQL5

Este artigo descreve um método para encontrar quatro pontos extremos, onde baseado neles, se desenha os níveis de suporte e de resistência. Para encontrar o extremos num gráfico de um par de moedas, foi usado o indicador RSI. Para dar um exemplo, nós fornecemos um código de indicador que exibe os níveis de suporte e resistência.
Indicador para Gráfico de Spindles
Indicador para Gráfico de Spindles

Indicador para Gráfico de Spindles

O artigo apresenta a plotagem do gráfico de spindles e seu uso em estratégias de negociação e experts. Primeiro vamos discutir a aparência do gráfico, plotagem e conexão com o gráfico de velas japonesas. Em seguida, analisaremos a implementação do indicador no código fonte na linguagem MQL5. Vamos testar o expert com base no indicador e formular uma estratégia de negociação.
Múltiplas recontagens de barra nula em alguns indicadores
Múltiplas recontagens de barra nula em alguns indicadores

Múltiplas recontagens de barra nula em alguns indicadores

O artigo trata do problema de se recontar o valor do indicador no terminal do cliente MetaTrader 4 quando a barra nula muda. Nele, é delineada a ideia geral de como adicionar ao código do indicador alguns programas extras que permitem restaurar o código do programa salvo antes de recontagens múltiplas.
Gráficos "sem buracos"
Gráficos "sem buracos"

Gráficos "sem buracos"

O artigo trata da realização de gráficos sem barras puladas.
Uma Visão Sobre o Indicador Accumulation-Distribution e Onde Conseguilo
Uma Visão Sobre o Indicador Accumulation-Distribution e Onde Conseguilo

Uma Visão Sobre o Indicador Accumulation-Distribution e Onde Conseguilo

O Indicador Accumulation/Distribution (A/D) tem uma característica interessante - um rompimento da linha de tendência traçada neste indicador gráfico sugere, com um certo grau de probabilidade, um rompimento a seguir da linha de tendência no gráfico de preços. Este artigo vai ser útil e interessante para aqueles que são novos na programação em MQL4. Com este objetivo, tentei apresentar a informação de uma maneira fácil de entender e utilizar estruturas de código mais simples.
Usando Layouts e Containers para Controles de GUI: A Classe CBox
Usando Layouts e Containers para Controles de GUI: A Classe CBox

Usando Layouts e Containers para Controles de GUI: A Classe CBox

Este artigo apresenta um método alternativo de criação de GUI (Interface Gráfica do Usuário) baseado em layouts e containers, usando um gerenciador de layout - a classe CBox. A classe CBox é um controle auxiliar que atua como um container para controles essenciais em um painel de GUI. Ele pode gerar o design gráfico dos painéis facilmente, e, em alguns casos, reduzir o tempo de codificação.
Desenhando Medidores com Mostrador usando a classe CCanvas
Desenhando Medidores com Mostrador usando a classe CCanvas

Desenhando Medidores com Mostrador usando a classe CCanvas

Podemos encontrar medidores com mostrador em carros e aviões, na produção industrial e na vida cotidiana. Eles são utilizados em todos os domínios que requerem uma resposta rápida a um comportamento de valor controlado. Este artigo descreve a biblioteca de medidores com mostrador para o MetaTrader 5.
Ideias de Negociação Baseada na Direção dos Preços e na Velocidade do Movimento
Ideias de Negociação Baseada na Direção dos Preços e na Velocidade do Movimento

Ideias de Negociação Baseada na Direção dos Preços e na Velocidade do Movimento

O artigo fornece uma revisão de uma idéia com base na análise da direção do movimento dos preços e sua velocidade. Nós efetuamos a sua formalização na linguagem MQL4 apresentando-o como um Expert Advisor para explorar a viabilidade da estratégia que está em consideração. Nós também determinamos os melhores parâmetros por meio da verificação, examinação e da otimização de um exemplo dado no artigo.
Os Erros Mais Comuns nos Programas MQL4 e Como Evitá-los
Os Erros Mais Comuns nos Programas MQL4 e Como Evitá-los

Os Erros Mais Comuns nos Programas MQL4 e Como Evitá-los

Para evitar o término dos programas por erros críticos, a versão anterior do compilador tratava muitos erros no ambiente de tempo de execução. Por exemplo, a divisão por zero ou o array fora do intervalo são erros críticos e geralmente levam a uma pane do programa. O novo compilador pode detectar a origem real ou potencial dos erros e melhorar a qualidade do código. Neste artigo, nós discutimos os possíveis erros que podem ser detectados durante a compilação de programas antigos e ver como corrigi-los.
Traçando linhas de tendência baseadas em fractais usando MQL4 e MQL5
Traçando linhas de tendência baseadas em fractais usando MQL4 e MQL5

Traçando linhas de tendência baseadas em fractais usando MQL4 e MQL5

O artigo descreve a automação da plotagem de linhas de tendência com base no indicador Fractals usando MQL4 e MQL5. A estrutura do artigo fornece uma visão comparativa da solução para as duas linguagens. As linhas de tendência são plotados usando os dois últimos fractais conhecidos.
Gráfico Líquido
Gráfico Líquido

Gráfico Líquido

Você gostaria de ver um gráfico horário com barras que variam sua abertura de segundos até o quinto minuto da hora? Como que se parece um gráfico redesenhado quando o tempo de abertura das barras está mudando a cada minuto? Que vantagens temos em negociar em tais gráficos? Você irá encontrar as respostas para estas perguntas neste artigo.
Indicador para gráfico Renko
Indicador para gráfico Renko

Indicador para gráfico Renko

O artigo descreve um exemplo do gráfico Renko e implementação no MQL5 como um indicador. As modificações deste indicador o distingue de um gráfico clássico. Pode ser construído tanto na janela do indicador como no gráfico principal. Além disso, existe o indicador ZigZag, onde pode-se encontrar alguns exemplos de implementação no gráfico.
Guia prático MQL5: Desenvolvimento de um Indicador de Símbolos Múltiplos para Análise de Divergência de Preço
Guia prático MQL5: Desenvolvimento de um Indicador de Símbolos Múltiplos para Análise de Divergência de Preço

Guia prático MQL5: Desenvolvimento de um Indicador de Símbolos Múltiplos para Análise de Divergência de Preço

Neste artigo, vamos considerar o desenvolvimento de um indicador de símbolos múltiplos para análise de divergência de preço dentro de um período de tempo determinado. Os temas centrais já foram discutidas no artigo anterior sobre programação de indicadores de múltiplas moedas: "Guia prático do MQL5: Desenvolvimento de um Indicador de Símbolos Múltiplos em MQL5". Então, desta vez vamos focar apenas nas novas características e funções que foram alteradas drasticamente. Se você é novo em programação de indicadores de múltiplas moedas, primeiro eu recomendo a leitura do artigo anterior.
Indicador para representação de gráfico Kagi
Indicador para representação de gráfico Kagi

Indicador para representação de gráfico Kagi

O artigo propõe o indicador de gráfico Kagi com várias opções e funções adicionais. Além disso, o princípio de tracejar gráficos e seus recursos de implementação MQL5 são considerados. Os casos mais populares de sua implementação em negociação são exibidos - estratégia de troca de Yin/Yang, afastando para longe a partir da linha de evolução gráfica e aumentando sistematicamente "ombros" e diminuindo "cinturas".
Guia prático do MQL5: Desenvolvimento de um indicador de símbolos múltiplos no MQL5
Guia prático do MQL5: Desenvolvimento de um indicador de símbolos múltiplos no MQL5

Guia prático do MQL5: Desenvolvimento de um indicador de símbolos múltiplos no MQL5

Neste artigo, vamos considerar o desenvolvimento de um indicador de volatilidade de símbolos múltiplos. O desenvolvimento de indicadores de símbolos múltiplos pode apresentar algumas dificuldades para os desenvolvedores novatos do MQL5, as quais este artigo ajuda a esclarecer. As principais questões que surgem no curso do desenvolvimento de um indicador de símbolos múltiplos têm a ver com sincronização de dados de outros símbolos em relação ao símbolo atual, a falta de alguns dados de indicadores e a identificação de início de barras 'reais' de um determinado período de tempo. Todas essas questões serão atentamente consideradas no artigo.
Guia prático do MQL5: Controles da sub-janela indicadora - barra de rolagem
Guia prático do MQL5: Controles da sub-janela indicadora - barra de rolagem

Guia prático do MQL5: Controles da sub-janela indicadora - barra de rolagem

Vamos continuar a explorar vários controles e desta vez a nossa atenção é para a barra de rolagem. Assim como no artigo anterior intitulado"Guia prático do MQL5: Os controles da sub-janela indicadora - botões", todas as operações serão realizadas na sub-janela indicadora. Tome um tempo para ler o artigo acima mencionado, uma vez que ele fornece uma descrição detalhada do trabalho com eventos na função OnChartEvent(), enquanto este ponto somente será casualmente abordado neste artigo. Para fins ilustrativos, desta vez vamos criar uma barra de rolagem vertical para uma grande lista de todas as propriedades de instrumentos financeiros que possam ser obtidas usando recursos do MQL5.
Guia prático do MQL5: Controles de sub-janela indicadora - botões
Guia prático do MQL5: Controles de sub-janela indicadora - botões

Guia prático do MQL5: Controles de sub-janela indicadora - botões

Neste artigo, vamos considerar um exemplo de desenvolvimento de uma interface de usuário com controles de botão. Para transmitir a ideia de interatividade ao usuário, os botões mudarão suas cores quando o cursor passar sobre eles. Com o cursor sobre um botão, a cor do botão será ligeiramente escurecida, ficando significativamente mais escura quando o botão for clicado. Além disso, adicionaremos janelas pop-up em cada botão, criando assim, uma interface intuitiva.
Guia prático do MQL5: Monitoramento de múltiplos períodos de tempo em uma única janela
Guia prático do MQL5: Monitoramento de múltiplos períodos de tempo em uma única janela

Guia prático do MQL5: Monitoramento de múltiplos períodos de tempo em uma única janela

Há 21 períodos de tempo disponíveis no MetaTrader 5 para análise. Você pode tirar proveito de objetos gráficos especiais, os quais você pode colocar no gráfico existente e definir o símbolo, período de tempo e algumas outras propriedades ali mesmo. Este artigo fornecerá informações detalhadas sobre tais objetos gráficos do gráfico: vamos criar um indicador com os controles (botões), que nos permitirão definir vários objetos gráficos em uma sub-janela ao mesmo tempo. Além disso, os objetos gráficos se encaixarão com precisão na sub-janela e serão ajustados automaticamente quando o gráfico principal ou a janela do terminal forem redimensionados.
Estendendo a biblioteca padrão do MQL5 e reutilizando o código
Estendendo a biblioteca padrão do MQL5 e reutilizando o código

Estendendo a biblioteca padrão do MQL5 e reutilizando o código

A biblioteca padrão do MQL5 torna mais fácil a sua vida como desenvolvedor. No entanto, ela não implementa todas as necessidades de todos os desenvolvedores no mundo, então, se você achar que precisa de mais algum material de customização, você pode dar um passo a mais e estender. Este artigo o orienta através da integração do indicador técnico Zig-Zag MetaQuotes' na biblioteca padrão. Ficamos inspirados pela filosofia de design MetaQuotes' para alcançar o nosso objetivo.
Indicador para o gráfico de Ponto e Figura
Indicador para o gráfico de Ponto e Figura

Indicador para o gráfico de Ponto e Figura

Existem vários tipos de gráficos que fornecem informações sobre a situação do mercado atual. Muitos deles, como o Gráfico de Ponto e Figura, são o legado de um passado remoto. O artigo descreve um exemplo do gráfico de Ponto e Figura usando um indicador de tempo real.
Depuração dos programas do MQL5
Depuração dos programas do MQL5

Depuração dos programas do MQL5

Este artigo é destinado principalmente aos programadores que já tenham aprendido a linguagem, mas ainda não tenham dominado completamente o desenvolvimento do programa. Ele revela algumas técnicas de depuração e apresenta uma experiência combinada do autor e muitos outros programadores.
O indicador ZigZag: nova abordagem e novas soluções
O indicador ZigZag: nova abordagem e novas soluções

O indicador ZigZag: nova abordagem e novas soluções

O artigo examina a possibilidade de criar um indicador ZigZag avançado. A ideia de identificar nós é baseada no uso de indicador Envelopes. Presumimos que podemos encontrar uma certa combinação de parâmetros de entrada para uma série de Envelopes, pelos quais a maioria dos nós dos ZigZags se encontram nos confins das faixas dos Envelopes. Consequentemente, podemos tentar prever as coordenadas do novo nó.
Cálculo de características integrais das emissões de indicador
Cálculo de características integrais das emissões de indicador

Cálculo de características integrais das emissões de indicador

Emissões do indicador são uma área pouco estudada da pesquisa de mercado. Isso se deve principalmente à dificuldade de análise que é causada pelo processamento de arrays muito grandes de dados de tempo variável. A análise gráfica existente é um recurso muito intensivo e, portanto, tem provocado o desenvolvimento de um algoritmo parcimonioso que usa série temporal de emissões. Este artigo demonstra como a análise visual (imagem intuitiva) pode ser substituída pelo estudo de características de emissões integral. Isso pode ser de interesse para ambos negociantes e desenvolvedores de sistemas de negociação automatizados.
Fundamentos básicos da programação MQL5: Tempo
Fundamentos básicos da programação MQL5: Tempo

Fundamentos básicos da programação MQL5: Tempo

Este artigo foca nas funções padrões do MQL5 para trabalhar com o tempo, bem como técnicas de programação e funções praticamente úteis para trabalhar com o tempo que são necessárias ao criar Expert Advisors e indicadores. Atenção particular é dedicada à teoria geral da medição de tempo. Este artigo deve ser de interesse principalmente para programadores MQL5 novatos.
MQL5-RPC. Chamadas de procedimento remoto de MQL5: Acesso de serviço da Web e analisador XML-RPC ATC para diversão e lucro
MQL5-RPC. Chamadas de procedimento remoto de MQL5: Acesso de serviço da Web e analisador XML-RPC ATC para diversão e lucro

MQL5-RPC. Chamadas de procedimento remoto de MQL5: Acesso de serviço da Web e analisador XML-RPC ATC para diversão e lucro

Este artigo descreve o framework MQL5-RPC que possibilita Chamadas de procedimento remoto do MQL5. Ele começa com o básico do XML-RPC, implementação do MQL5 e segue dois exemplos de utilização real. O primeiro exemplo é usando um serviço web externo e o segundo é um cliente para simples serviço XML-RPC ATC 2011 Analyzer. Se você está interessado em como implementar e analisar estatísticas diferentes do ATC 2011 em tempo real, este artigo é para você.
A Implementação da Análise Automática das Ondas de Elliott em MQL5
A Implementação da Análise Automática das Ondas de Elliott em MQL5

A Implementação da Análise Automática das Ondas de Elliott em MQL5

Um dos métodos mais populares de análise do mercado é o princípio das ondas de Elliott. No entanto, este processo é muito complicado, o que leva à utilização de ferramentas adicionais. Um desses instrumentos é o marcador automático. Este artigo descreve a criação de um analisador automático de ondas de Elliott na linguagem MQL5.