Artigos com exemplos de como programar na linguagem MQL5

icon

Inúmeros artigos com exemplos sobre como criar indicadores e robôs de negociação para a plataforma MetaTrader na linguagem MQL5 esperam por você. Cada artigo é acompanhado de códigos-fonte, que você pode abrir no MetaEditor e executar por conta própria.

Esses artigos serão úteis tanto para quem está se iniciando na negociação automatizada, bem como traders capacitados com experiência em programação e negociação. Aqui você encontrará não apenas exemplos, mas também novas ideias.

Novo artigo
recentes | melhores
Como criar rapidamente um Consultor Especialista para o Campeonato de Negociações Automáticas 2010
Como criar rapidamente um Consultor Especialista para o Campeonato de Negociações Automáticas 2010

Como criar rapidamente um Consultor Especialista para o Campeonato de Negociações Automáticas 2010

A fim de desenvolver um especialista para participar no Automated Trading Championship 2010 (Campeonato de Negociações Automáticas 2010), vamos usar um modelo de um conselheiro especialista pronto. Até mesmo um programador MQL5 iniciante será capaz desta tarefa, porque para suas estratégias as classes básicas, funções e modelos já estão desenvolvidos. é suficiente escrever uma quantidade mínima de código para implementar sua ideia de negociação.
Escrevendo um Expert Advisor utilizando a abordagem de programação orientada a objeto do MQL5
Escrevendo um Expert Advisor utilizando a abordagem de programação orientada a objeto do MQL5

Escrevendo um Expert Advisor utilizando a abordagem de programação orientada a objeto do MQL5

Este artigo foca na abordagem orientada a objeto para fazer o que fizemos no artigo "Guia passo a passo para escrever um Expert Advisor no MQL5 para iniciantes" - criando um simples Expert Advisor. A maior parte das pessoas acha que isso é difícil, mas quero assegurá-lo que quando você terminar de ler esse artigo, você será capaz de escrever o seu próprio consultor especialista que é baseado em orientação a objeto.
Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados
Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados

Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados

O artigo descreve como implementar a Comunicação Interprocesso entre os terminais do cliente MetaTrader 5 usando pipes nomeados. Para o uso de pipes nomeados, a classe CNamedPipes é desenvolvida. Para o teste de seu uso e medir a conexão por ele, o indicador de tick, o servidor e os scripts do cliente são apresentados. O uso de pipes nomeados é suficiente para cotas em tempo real.
Uma biblioteca para construção de um gráfico pelo Google Chart API
Uma biblioteca para construção de um gráfico pelo Google Chart API

Uma biblioteca para construção de um gráfico pelo Google Chart API

A construção de vários tipos de diagramas é uma parte essencial da análise da situação de mercado e o teste de um sistema de negócio. Frequentemente, a fim de construir um diagrama de boa aparência, é necessário organizar a saída de dados em um arquivo, após o qual é usado em aplicações como MS Excel. Isso não é muito conveniente e nos tira a capacidade de atualizar os dados dinamicamente. O Google Charts API fornece meios para criar gráficos em modos online, enviando uma solicitação especial para o servidor. Neste artigo, tentamos automatizar o processo de criação de tal solicitação e obter um gráfico a partir do servidor Google.
O uso de ORDER_MAGIC para negociação com diferentes consultores especialistas em um único instrumento
O uso de ORDER_MAGIC para negociação com diferentes consultores especialistas em um único instrumento

O uso de ORDER_MAGIC para negociação com diferentes consultores especialistas em um único instrumento

Este artigo considera as questões de codificação de informação, usando a identificação mágica, assim como a divisão, montagem e sincronização de negociação automática de diferentes Expert Advisors. Este artigo será interessante para iniciantes, assim como para negociantes mais experientes, porque trata da questão das posições virtuais, o que pode ser útil na implementação de sistemas completos de sincronização de Expert Advisors e várias estratégias.
Testando o desempenho do cálculo das médias móveis no MQL5
Testando o desempenho do cálculo das médias móveis no MQL5

Testando o desempenho do cálculo das médias móveis no MQL5

Uma série de indicadores apareceu desde o momento da criação do primeiro indicador de média móvel. Muitos deles usam métodos de suavização similares, mas os desempenhos de diferentes algorítimos de médias móveis não foram estudados. Neste artigo, considerarei meios possíveis de uso de Média móveis no MQL5 e comparar seus desempenhos.
Criando um Consultor Especialista, que negocia em um número de instrumentos
Criando um Consultor Especialista, que negocia em um número de instrumentos

Criando um Consultor Especialista, que negocia em um número de instrumentos

O conceito da diversificação de ativos nos mercados financeiros é bastante antigo e sempre atraiu negociantes iniciantes. Neste artigo, o autor propõe uma abordagem maximamente simples para a construção de um Expert Advisor de moeda múltipla, para uma introdução inicial a esta direção das estratégias de negócio.
Guia para escrever uma DLL para MQL5 em Delphi
Guia para escrever uma DLL para MQL5 em Delphi

Guia para escrever uma DLL para MQL5 em Delphi

O artigo examina o mecanismo de criação de um módulo DLL, usando a linguagem de programação popular de ObjectPascal, dentro de um ambiente de programação Delphi. Os materiais, fornecidos neste artigo, são designados a focar principalmente em programadores iniciantes, que estejam trabalhando com problemas que rompem os limites da linguagem de programação embutidos do MQL5, conectando os módulos DLL externos.
Um exemplo de um Sistema de Comércio Baseado no indicador Heiken-Ashi
Um exemplo de um Sistema de Comércio Baseado no indicador Heiken-Ashi

Um exemplo de um Sistema de Comércio Baseado no indicador Heiken-Ashi

Neste artigo veremos a questão de uso de um indicador Heiken-Ashi na negociação. Com base neste indicador, um simples sistema de negócio é considerado e um Expert Advisor MQL5 é escrito. As operações de negócio são implementadas nas bases de classes da biblioteca de classe padrão. São fornecidos neste artigo os resultados de teste da estratégia de negócio revisada que são baseados no histórico e obtidos usando o strategy tester do MetaTrader 5 embutido.
Migrando do MQL4 para o MQL5
Migrando do MQL4 para o MQL5

Migrando do MQL4 para o MQL5

Este artigo é um guia rápido para as funções da linguagem MQL4, ele o ajudará a migrar seus programas do MQL4 para MQL5. Para cada função do MQL4 (exceto funções de negociação), são apresentadas a implementação do MQL5 e descrição, isso permite a redução do tempo de conversão significativamente. Para conveniência, as funções do MQL4 são divididas em grupos, similar à referência MQL4.
Visualizar uma estratégia no Tester do MetaTrader 5
Visualizar uma estratégia no Tester do MetaTrader 5

Visualizar uma estratégia no Tester do MetaTrader 5

Todos conhecemos o ditado "é melhor ver uma vez do que ouvir cem vezes". Você pode ler diversos livros sobre Paris ou Veneza, mas com base nas imagens mentais, você não teria os mesmos sentimentos do que se estivesse caminhando à noite por essas cidades fabulosas. A vantagem da visualização pode ser facilmente projetada em qualquer aspecto de nossas vidas, incluindo trabalho no mercado, por exemplo, a análise de preço em gráficos utilizando indicadores e, é evidente, a visualização de teste de estratégia. Este artigo contém descrições de todos os recursos de visualização do Strategy Tester do MetaTrader 5.
Crie o seu próprio robô de negociação em 6 passos!
Crie o seu próprio robô de negociação em 6 passos!

Crie o seu próprio robô de negociação em 6 passos!

Se você não sabe como as classes de negócio são construídas, e se assusta com as palavras "Programação orientada a objeto", então, este artigo é para você. Na realidade, você não precisa saber os detalhes para escrever seu próprio módulo de sinais de negociação. Apenas siga algumas regras simples. Todo o resto será feito pelo Assistente MQL5, e você terá um robô de negócio pronto para uso!
Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas
Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas

Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas

Este artigo descreve como a programação orientada a objetos pode ser usada para criar painéis de múltiplos períodos de tempo múltiplas moedas para o MetaTrader 5. O principal objetivo é construir um painel universal, que pode ser utilizado para exibição de diversos tipos diferentes de dados, tal como preços, variação de preços, valores de indicador ou condições personalizadas de compra/venda, sem a necessidade de modificar o código do painel em si.
Os Fundamentos da programação orientada a objetos
Os Fundamentos da programação orientada a objetos

Os Fundamentos da programação orientada a objetos

Você não precisa saber o que são polimorfismo, encapsulação, etc. tudo sobre o uso da programação orientada a objeto (OOP)... você pode simplesmente usar estes recursos. Este artigo cobre o básico de OOP com exemplos práticos.
Crie seus próprios painéis gráficos no MQL5
Crie seus próprios painéis gráficos no MQL5

Crie seus próprios painéis gráficos no MQL5

A usabilidade do programa MQL5 é determinada tanto por sua rica funcionalidade como pela interface de usuário gráfica elaborada. A percepção visual, algumas vezes, é mais importante do que uma operação rápida e estável. Aqui está um guia passo-a-passo para você mesmo criar painéis de exibição com base nas classes da Biblioteca padrão.
Controles gráficos personalizados. Parte 3. Formas
Controles gráficos personalizados. Parte 3. Formas

Controles gráficos personalizados. Parte 3. Formas

Este é o último dos três artigos dedicados a controles gráficos. Ele cobre a criação do principal componente da interface gráfica - a forma - e seu uso em combinação com outros controles. Além das classes de forma, as classes CFrame, CButton, CLabel foram adicionadas à biblioteca de controle.
Controles gráficos personalizados. Parte 2. Biblioteca de controles
Controles gráficos personalizados. Parte 2. Biblioteca de controles

Controles gráficos personalizados. Parte 2. Biblioteca de controles

O segundo artigo da série "Controles gráficos personalizados" apresenta uma biblioteca para manusear os principais problemas que surgem da interação entre um programa (Expert Advisor, script, indicador) e um usuário. A biblioteca contém um grande número de classes (CInputBox, CSpinInputBox, CCheckBox, CRadioGroup, CVSсrollBar, CHSсrollBar, CList, CListMS, CComBox, CHMenu, CVMenu, CHProgress, CDialer, CDialerInputBox, CTable) e exemplos de seu uso.
Controles gráficos personalizados. Parte 1: criando um controle simples
Controles gráficos personalizados. Parte 1: criando um controle simples

Controles gráficos personalizados. Parte 1: criando um controle simples

Este artigo cobre os princípios gerais para desenvolvimento de controles gráficos. Vamos preparar ferramentas para um trabalho rápido e conveniente com objetos gráficos, analisar um exemplo de criação de um simples controle para inserir texto ou dados numéricos, bem como os meios para usá-los.
Uma rápida inicialização ou um guia breve para iniciantes
Uma rápida inicialização ou um guia breve para iniciantes

Uma rápida inicialização ou um guia breve para iniciantes

Olá, caro leitor! Neste artigo, tentaremos explicar e mostrar como você pode facilmente e rapidamente compreender os princípios da criação de Expert Advisors, trabalhar com indicadores, etc. Este artigo é destinado a iniciantes e não apresentará nenhuma dificuldade ou exemplos de difícil entendimento.
Operações de negócios no MQL5 - São fáceis
Operações de negócios no MQL5 - São fáceis

Operações de negócios no MQL5 - São fáceis

Quase todos os negociadores chegam ao mercado para fazer dinheiro, mas alguns também apreciam o processo em si. No entanto, não é apenas a negociação manual que pode lhe proporcionar uma experiência emocionante. O desenvolvimento de sistemas automatizados de negociação também pode ser bastante impressionante. Criar uma negociação automática pode ser tão interessante quanto ler um bom romance de mistério.
preview
Uso dos recursos no MQL5

Uso dos recursos no MQL5

Os programas MQL5 não apenas automatizam os cálculos de rotina, mas também podem criar um ambiente gráfico com muitos recursos. As funções para criar controles realmente interativos são agora virtualmente de mesmo valor que aqueles nas linguagens clássicas de programação. Se você quiser escrever um programa independente completo no MQL5, use recursos nele. Programas com recursos são mais fáceis de manter e distribuir.
OOP no MQL5 por exemplo: Processando os avisos e os códigos de erro
OOP no MQL5 por exemplo: Processando os avisos e os códigos de erro

OOP no MQL5 por exemplo: Processando os avisos e os códigos de erro

O artigo descreve um exemplo de criação de classe para trabalho com os códigos de retorno do servidor de negócio e todos os erros que ocorrem durante a execução do programa MQL. Leia o artigo e você aprenderá como trabalhar com classes e objetos no MQL5. Ao mesmo tempo, esta é uma ferramenta conveniente para manipular erros; e você ainda pode mudar esta ferramenta de acordo com suas necessidades específicas.
Transferindo indicadores do MQL4 para o MQL5
Transferindo indicadores do MQL4 para o MQL5

Transferindo indicadores do MQL4 para o MQL5

Este artigo é dedicado às peculiaridades da transferência de construções de preço escritas no MQL4 para MQL5. Para facilitar o processo de transferência de cálculos do indicador do MQL4 para MQL5, é sugerida a biblioteca de funções mql4_2_mql5.mqh. Sua utilização é descrita com base na transferência de indicadores RSI, estocásticos e MACD.
Criação e publicação de relatórios de negócios e notificação SMS
Criação e publicação de relatórios de negócios e notificação SMS

Criação e publicação de relatórios de negócios e notificação SMS

Os negociantes nem sempre têm a habilidade e desejam ficar sentados na frente do terminal de negócio por horas. Especialmente se o sistema de negócio for mais ou menos formalizado e puder automaticamente identificar alguns dos estados do mercado. Este artigo descreve como gerar um relatório de resultados de negócios (utilizando o Consultor Especialista, o indicador ou o script) como um arquivo HTML e carregá-lo por FTP para o servidor WWW. Também levaremos em consideração o envio de notificações de eventos de negócios por SMS para o celular.
Um exemplo de uma estratégia de negociação baseada na diferença de fuso horário em diferentes continentes
Um exemplo de uma estratégia de negociação baseada na diferença de fuso horário em diferentes continentes

Um exemplo de uma estratégia de negociação baseada na diferença de fuso horário em diferentes continentes

Navegando na internet é fácil encontrar muitas estratégias que darão a você uma série de recomendações. Vamos pegar uma abordagem interna e ver o processo de criação de estratégia, com base nas diferenças de fusos horários em diferentes continentes.
Algoritmos genéticos - é fácil!
Algoritmos genéticos - é fácil!

Algoritmos genéticos - é fácil!

Neste artigo o autor fala sobre cálculos evolutivos com o uso de um algoritmo genético desenvolvido pessoalmente. Ele demonstra o funcionamento do algoritmo, usando exemplos e fornece recomendações práticas para seu uso.
Criando um indicador com buffers de indicador múltiplos para iniciantes
Criando um indicador com buffers de indicador múltiplos para iniciantes

Criando um indicador com buffers de indicador múltiplos para iniciantes

Os códigos complexos consistem em um conjunto de códigos simples. Se você está familiarizado com eles, não parece tão complicado. Neste artigo, considerarei como criar um indicador com múltiplos buffers de indicador. Como exemplo, o indicador Aroon é analisado detalhadamente, e duas versões diferentes do código são apresentadas.
Interação entre o MetaTrader 5 e MATLAB
Interação entre o MetaTrader 5 e MATLAB

Interação entre o MetaTrader 5 e MATLAB

Este artigo cobre os detalhes da interação entre o MetaTrader 5 e o pacote matemático MatLab. Ele mostra o mecanismo da conversão de dados, o processo de desenvolvimento de uma biblioteca universal para interagir com o desktop MatLab. Ele também cobre o uso do DLL gerado pelo ambiente MatLab. Este artigo é destinado a leitores experientes que conhecem C++ e MQL5.
Criando um indicador com opções de controle gráfico
Criando um indicador com opções de controle gráfico

Criando um indicador com opções de controle gráfico

Aqueles que são familiares com os sentimentos do mercado, conhecem o indicador MACD (seu nome completo é convergência/divergência de média móvel) - a poderosa ferramenta para analisar o movimento de preço, usada por negociantes desde os primeiros momentos do aparecimento dos métodos de análise computacionais. Neste artigo, consideraremos possíveis modificações do MACD e o implementaremos no indicador com a possibilidade de mudar graficamente entre as modificações.
MQL5: análise e processamento dos relatórios Commodity Futures Trading Commission (CFTC) no MetaTrader 5
MQL5: análise e processamento dos relatórios Commodity Futures Trading Commission (CFTC) no MetaTrader 5

MQL5: análise e processamento dos relatórios Commodity Futures Trading Commission (CFTC) no MetaTrader 5

Neste artigo, desenvolverei uma ferramenta para análise de relatório CFTC. Resolveremos o seguinte problema: desenvolver um indicador que permita usar os dados do relatório CFTC diretamente dos arquivos de dados fornecidos pela Comissão sem conversão e processamento intermediários. Além disso, ele pode ser utilizado para diferentes propósitos: organizar dados como um indicador, prosseguir com os dados em outros indicadores, em scripts para análise automatizada, em Expert Advisors para uso em estratégias de trading.
Implementação prática dos filtros digitais no MQL5 para principiantes
Implementação prática dos filtros digitais no MQL5 para principiantes

Implementação prática dos filtros digitais no MQL5 para principiantes

A ideia da filtragem de sinal digital foi amplamente discutida em tópicos de fóruns sobre a construção dos sistemas de negócio. E seria imprudente não criar um código padrão de filtros digitais no MQL5. Neste artigo, o autor descreve a transformação de um simples código do indicador SMA em seu artigo "Indicadores personalizados no MQL5 para iniciantes" em um código do mais complicado e universal filtro digital. Este artigo é uma sequência lógica do artigo anterior. Ele também fala como substituir o texto no código e como corrigir erros de programação.
Como exportar cotações do MetaTrader5 para aplicações .NET usando serviços WCF
Como exportar cotações do MetaTrader5 para aplicações .NET usando serviços WCF

Como exportar cotações do MetaTrader5 para aplicações .NET usando serviços WCF

Quer organizar a exportação de cotas do MetaTrader 5 para sua própria aplicação? A junção MQL5-DLL permite criar essas soluções! Este artigo mostrará a você um dos meios de exportação de cotas do MetaTrader 5 para aplicações escritas no .NET. Para mim, é mais interessante, racional e fácil implementar a exportação de cotas usando esta mesma plataforma. Infelizmente, a versão 5 ainda não suporta .NET, então, como antigamente, usaremos o win32 dll com suporte .NET como intercamada.
Desenhando emissões de indicador no MQL5
Desenhando emissões de indicador no MQL5

Desenhando emissões de indicador no MQL5

Neste artigo, consideraremos a emissão dos indicadores - uma nova abordagem para pesquisa de mercado. O cálculo da emissão é baseado na intersecção de diferentes indicadores: mais e mais pontos com diferentes cores e formas aparecem após cada tick. Eles formam vários clusters na forma de uma nebulosa, nuvens, pistas, linhas, arcos, etc. Estas formas podem ajudar a detectar as molas e forças invisíveis que afetam o movimento dos preços do mercado.
Troca de dados entre indicadores: é fácil!
Troca de dados entre indicadores: é fácil!

Troca de dados entre indicadores: é fácil!

Queremos criar um ambiente que fornecesse acesso aos dados de indicadores anexos ao gráfico e que teria as seguintes propriedades: ausência de cópia de dados; modificação mínima do código dos métodos disponíveis, se precisarmos usá-los; preferencialmente código MQL (claro, temos que usar o DLL, mas usaremos apenas algumas strings do código C++). O artigo descreve um método fácil para desenvolver um ambiente de programa para o terminal MetaTrader, que poderia fornecer meios para acessar os buffers dos indicadores de outros programas MQL.
Como trocar dados: um DLL para o MQL5 em 10 minutos
Como trocar dados: um DLL para o MQL5 em 10 minutos

Como trocar dados: um DLL para o MQL5 em 10 minutos

Agora, não muitos desenvolvedores lembram como escrever um simples DLL e quais são os recursos especiais da diferente ligação do sistema. Usando vários exemplos, vou tentar mostrar todo o processo da criação de um simples DLL em 10 minutos, bem como discutir alguns detalhes técnicos da nossa implementação de ligação. Mostrarei o processo passo-a-passo da criação de DLL no Visual Studio com exemplos de troca de diferentes tipos de variáveis (números, arrys, strings, etc.). Além disso, explicarei como proteger seu terminal do cliente de travamentos nos DLLs personalizados.
O Histograma de preço (Perfil de mercado) e sua implementação no MQL5
O Histograma de preço (Perfil de mercado) e sua implementação no MQL5

O Histograma de preço (Perfil de mercado) e sua implementação no MQL5

O Perfil de mercado foi desenvolvido pelo pensador realmente brilhante Peter Steidlmayer. Ele sugeriu o uso da representação alternativa de informação sobre movimentos de mercados "horizontais" e "verticais" que levam a um conjunto de modelos completamente diferentes. Ele presumiu que existe um pulso subjacente do mercado ou de um padrão fundamental chamado de ciclo de equilíbrio e desequilíbrio. Neste artigo, considerarei o Histograma de preço - um modelo simplificado de Perfil de mercado e descreverei sua implementação no MQL5.
O protótipo do robô de negócio
O protótipo do robô de negócio

O protótipo do robô de negócio

Este artigo resume e sintetiza os princípios da criação de algoritmos e elementos dos sistemas de negócio. O artigo considera o planejamento do algoritmo de especialista. Como um exemplo, a classe CExpertAdvisor é considerada, o que pode ser usado para facilmente e rapidamente desenvolver sistemas de negócio.
20 sinais de negociação no MQL5
20 sinais de negociação no MQL5

20 sinais de negociação no MQL5

Este artigo o ensinará a como receber os sinais de negócio que são necessários para um sistema de negócio funcionar. O exemplo de formação de 20 sinais de negócio é forncedio aqui como funções de personalização separadas que podem ser usadas ao desenvolver Expert Advisors. Para sua conveniência, todas as funções utilizadas no artigo são combinadas em um único arquivo mqh que pode ser facilmente conectado a um futuro Expert Advisor.
Como escrever um indicador na base de um outro indicador
Como escrever um indicador na base de um outro indicador

Como escrever um indicador na base de um outro indicador

No MQL5 você pode escrever um indicador tanto do zero como baseado em outro indicador já existente, embutido no terminal do cliente ou um personalizado. E aqui você também tem dois modos - melhorar um indicador adicionando novos cálculos e estilos gráficos a ele, ou utilizar um indicador no terminal do cliente embutido ou um personalizado através das funções iCustom() ou IndicatorCreate().
Criar um quadro de informação utilizando classes de biblioteca padrão e o Google Chart API
Criar um quadro de informação utilizando classes de biblioteca padrão e o Google Chart API

Criar um quadro de informação utilizando classes de biblioteca padrão e o Google Chart API

A linguagem de programação MQL5 foca principalmente na criação dos sistemas de negociação automatizada e instrumentos complexos da análise técnica. Mas, fora isso, ela permite criar sistemas de informação interessantes para rastrear situações de mercado e fornece uma conexão de retorno com o negociante. O artigo descreve os componentes da Biblioteca Padrão MQL5, e mostra exemplos de seu uso na prática para alcançar estes objetivos. Ela também demonstra um exemplo para utilizar o Google Chart API para criação de gráficos.