Artigos sobre programação nas linguagens MQL4 e MQL5

icon

Leia os artigos publicados aqui para aprender MQL5, a linguagem das estratégias de negociação. A maioria desses artigos foi escrita por vocês, membros da MQL5.community. Todos eles estão divididos em categorias para encontrar respostas rápidas relacionadas a aspectos específicos da programação: "Integração", "Testador", "Estratégias de negociação" e muito mais.

Acompanhe as novas publicações e participe de suas discussões no Fórum!

Novo artigo
recentes | melhores
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXXII): ordens de negociação pendentes, posicionamento de ordens por condições
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXXII): ordens de negociação pendentes, posicionamento de ordens por condições

Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXXII): ordens de negociação pendentes, posicionamento de ordens por condições

Continuamos a criar funcionalidades que nos permitem negociar usando solicitações pendentes. Neste artigo criaremos um recurso para definir ordens pendentes por condições.
Utilizando WinInet.dll para a troca de dados entre plataformas via internet
Utilizando WinInet.dll para a troca de dados entre plataformas via internet

Utilizando WinInet.dll para a troca de dados entre plataformas via internet

Este artigo descreve os princípios do trabalho com a Internet por meio do uso de requisições HTTP e troca de dados entre terminais, usando um servidor intermediário. Uma classe de biblioteca MqlNet é apresentada para trabalho com recursos de internet no ambiente MQL5. Preços de monitoramento de diferentes corretores, mensagens de câmbio com outros negociadores sem sair do terminal, busca por informação na Internet - estes são apenas alguns exemplos, analisados neste artigo.
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.
Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5
Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5

Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5

Este artigo descreve o indicador NRTR e módulos de negociação criados com sua ajuda. Para estes fins, é criado um módulo de sinais de negociação que permite criar estratégias baseadas nas combinações do NRTR e indicadores adicionais que confirmam a tendência.
Um Administrador de ordem virtual para rastrear ordens dentro do ambiente MetaTrader 5 de posição centrada
Um Administrador de ordem virtual para rastrear ordens dentro do ambiente MetaTrader 5 de posição centrada

Um Administrador de ordem virtual para rastrear ordens dentro do ambiente MetaTrader 5 de posição centrada

Esta biblioteca de classe pode ser adicionada a um Expert Advisor do MetaTrader 5 para possibilitar que seja escrito com uma abordagem de ordem cêntrica amplamente similar ao MetaTrader 4, em comparação com a abordagem baseada em posição do MetaTrader 5. Ela faz isso mantendo um registro das ordens virtuais no cliente do terminal do MetaTrader 5, enquanto mantém uma parada de quebra protetora para cada posição para proteção contra desastres.
Módulo de sinais de negociação utilizando o sistema Bill Williams
Módulo de sinais de negociação utilizando o sistema Bill Williams

Módulo de sinais de negociação utilizando o sistema Bill Williams

O artigo descreve as regras do sistema de negociação Bill Williams, o procedimento da aplicação de um módulo MQL5 desenvolvido com o objetivo de procurar e marcar padrões deste sistema no gráfico, as negociações automatizadas de acordo com os padrões encontrados e por fim, apresenta os resultados dos testes em vários instrumentos de negociação.
Criando um EA gradador multiplataforma
Criando um EA gradador multiplataforma

Criando um EA gradador multiplataforma

Neste artigo, aprenderemos como escrever EAs que funcionam tanto no MetaTrader 4 quanto no MetaTrader 5. Para fazer isso, tentaremos escrever um que trabalhe com o princípio de criação de grades de ordens. Um gradador é um Expert Advisor cujo trabalho fundamental consiste em colocar simultaneamente e na mesma quantidade ordens limitadas tanto acima como abaixo do preço atual.
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.
Exemplo de desenvolvimento de uma estratégia de spread nos futuros da MICEX-RTS
Exemplo de desenvolvimento de uma estratégia de spread nos futuros da MICEX-RTS

Exemplo de desenvolvimento de uma estratégia de spread nos futuros da MICEX-RTS

A MetaTrader 5 permite desenvolver e testar robôs que negociam simultaneamente em vários instrumentos. O testador de estratégia embutido na plataforma baixa automaticamente - a partir do servidor de negociação da corretora - o histórico de ticks e leva em conta as especificações do contrato, assim, o desenvolvedor não precisa fazer nada com suas mãos. Isto torna possível reproduzir com facilidade e confiança todas as condições do ambiente de negociação, até intervalos de milissegundos entre o surgimento de ticks em símbolos diferentes. Neste artigo, vamos mostrar como desenvolver e testar estratégias de spread em dois futuros da Bolsa de Valores de Moscou (MICEX-RTS).
Negociação pelos níveis de DiNapoli
Negociação pelos níveis de DiNapoli

Negociação pelos níveis de DiNapoli

O artigo considera uma das variantes da implementação prática do Expert Advisor para negociar com os níveis de DiNapoli usando as ferramentas padrão da MQL5. São realizados o teste de desempenho e suas conclusões.
AutoElliottWaveMaker - Ferramenta do MetaTrader 5 para análise semi-automática de Ondas de Elliott
AutoElliottWaveMaker - Ferramenta do MetaTrader 5 para análise semi-automática de Ondas de Elliott

AutoElliottWaveMaker - Ferramenta do MetaTrader 5 para análise semi-automática de Ondas de Elliott

O artigo fornece uma análise de AutoElliottWaveMaker - o primeiro desenvolvimento para a análise Elliot Wave no MetaTrader 5 que representa uma combinação de rotulagem de onda manual e automática. A ferramenta de análise de onda é escrita exclusivamente no MQL5 e não inclui bibliotecas dll externas. Esta é mais uma prova de que programas sofisticados e interessantes podem (e devem) ser desenvolvidos no MQL5.
Otimização. Algumas idéias simples
Otimização. Algumas idéias simples

Otimização. Algumas idéias simples

O processo de otimização pode exigir recursos significativos de seu computador ou mesmo dos agentes de teste da MQL5 Cloud Network. Este artigo compreende algumas idéias simples que eu uso para a facilitação do trabalho e a melhoria do Strategy Tester do MetaTrader 5. Eu tive essas idéias a partir da documentação, fórum e artigos.
Explorando os Padrões Sazonais de Séries Temporais Financeiras com o Boxplot
Explorando os Padrões Sazonais de Séries Temporais Financeiras com o Boxplot

Explorando os Padrões Sazonais de Séries Temporais Financeiras com o Boxplot

Neste artigo, nós visualizaremos características sazonais de séries temporais financeiras usando diagramas Boxplot. Cada boxplot separado (ou diagrama de caixa) fornece uma boa visualização de como os valores são distribuídos ao longo do conjunto de dados. Os boxplots não devem ser confundidos com os gráficos de velas, embora possam ser visualmente semelhantes.
Guia Prático MQL5 - Sinais de negociação de canais móveis
Guia Prático MQL5 - Sinais de negociação de canais móveis

Guia Prático MQL5 - Sinais de negociação de canais móveis

O artigo descreve o processo de desenvolvimento e implementação de uma classe para envio de sinais com base nos canais móveis. Cada versão do sinal é seguido por uma estratégia de negociação com os resultados dos testes. As classes da Biblioteca Padrão são utilizadas para criar classes derivadas.
TradeObjects: Automação de negociação com base em objetos gráficos na MetaTrader
TradeObjects: Automação de negociação com base em objetos gráficos na MetaTrader

TradeObjects: Automação de negociação com base em objetos gráficos na MetaTrader

Este artigo lida com uma abordagem simples para a criação de um sistema de negociação automatizado com base no desenho de uma linha ao gráfico e oferece um Expert Advisor pronto, usando as propriedades padrão dos objetos da MetaTrader 4 e 5, suportando as principais operações de negociação.
Ação de preço. Como automatizar a estratégia de negociação de padrão de engolfo
Ação de preço. Como automatizar a estratégia de negociação de padrão de engolfo

Ação de preço. Como automatizar a estratégia de negociação de padrão de engolfo

Esse artigo descreve um processo de criação de um Expert Advisor para MetaTrader 4 baseado no padrão de engolfo, assim como no princípio de reconhecimento de padrão, nas regras de definição de ordens pendentes e ordens de parada. Os resultados de teste e otimização são fornecidos para sua informação.
Expert Advisor baseado em "New Trading Dimensions" por Bill Williams
Expert Advisor baseado em "New Trading Dimensions" por Bill Williams

Expert Advisor baseado em "New Trading Dimensions" por Bill Williams

Neste artigo, discutirei o desenvolvimento do Expert Advisor, baseado no livro "New Trading Dimensions: How to Profit from Chaos in Stocks, Bonds, and Commodities" por Bill Williams. A estratégia em si é bem conhecida e seu uso ainda é controverso entre os negociadores. O artigo considera os sinais de negociação do sistema, os aspectos específicos de sua implementação e os resultados de teste em dados do histórico.
Previsão de preços utilizando redes neurais
Previsão de preços utilizando redes neurais

Previsão de preços utilizando redes neurais

Muitos operadores falam sobre redes neurais, mas o que elas são e o que elas realmente podem fazer é conhecido por poucas pessoas. Este artigo lança alguma luz sobre o mundo da inteligência artificial. Ele descreve como devemos preparar corretamente os dados para a rede. Você também encontrará um exemplo de previsão por meio do programa Matlab.
Reversão: criemos um ponto de entrada e programemos um algoritmo de negociação manual
Reversão: criemos um ponto de entrada e programemos um algoritmo de negociação manual

Reversão: criemos um ponto de entrada e programemos um algoritmo de negociação manual

Este é o último artigo da série sobre estratégia de reversão. Nele, tentaremos resolver um problema que levou a resultados inconsistentes relativamente a testes em artigos anteriores. Adicionalmente, escreveremos e testaremos nosso próprio algoritmo para negociar manualmente usando a estratégia de reversão em qualquer mercado.
Trabalhando com as funções de rede ou MySQL sem DLL: Parte I - Conector
Trabalhando com as funções de rede ou MySQL sem DLL: Parte I - Conector

Trabalhando com as funções de rede ou MySQL sem DLL: Parte I - Conector

A MetaTrader 5 recebeu algumas funções de rede recentemente. Isso abriu grandes oportunidades para os programadores que desenvolvem produtos para o Mercado. Agora eles podem implementar coisas que antes exigiam bibliotecas dinâmicas. Neste artigo, nós vamos considerá-los usando a implementação do MySQL como exemplo.
Usar MetaTrader 5 como um provedor de sinal para o MetaTrader 4
Usar MetaTrader 5 como um provedor de sinal para o MetaTrader 4

Usar MetaTrader 5 como um provedor de sinal para o MetaTrader 4

Análise e exemplos de técnicas de como a análise de negociação pode ser realizada na plataforma MetaTrader 5, mas executada pelo MetaTrader 4. O artigo irá mostrar-lhe como criar provedor de sinais simples em seu MetaTrader 5, e conectá-lo a vários clientes, mesmo executando MetaTrader 4. Além disso, você vai descobrir como você pode acompanhar os participantes do Campeonato de negociação automatizada na sua conta real do MetaTrader 4.
Explorar as classes de estratégia de negociação da biblioteca padrão - Personalização de estratégias
Explorar as classes de estratégia de negociação da biblioteca padrão - Personalização de estratégias

Explorar as classes de estratégia de negociação da biblioteca padrão - Personalização de estratégias

Neste artigo, mostraremos como explorar a biblioteca padrão de classes de estratégia de negociação e como adicionar estratégias personalizadas e filtros/sinais utilizando a lógica de padrões e modelos do Assistente MQL5. No final, você será capaz de adicionar facilmente as suas próprias estratégias utilizando os indicadores padrão do MetaTrader 5 e o Assistente do MQL5 criará um código limpo e poderoso bem como um Expert Advisor totalmente funcional.
Negociação Bidirecional e de Cobertura de Posições no MetaTrader 5 Através da API HedgeTerminal, Parte 2
Negociação Bidirecional e de Cobertura de Posições no MetaTrader 5 Através da API HedgeTerminal, Parte 2

Negociação Bidirecional e de Cobertura de Posições no MetaTrader 5 Através da API HedgeTerminal, Parte 2

Este artigo descreve uma nova abordagem para cobertura de posições e desenhar uma linha na discussão entre os usuários do MetaTrader 4 e MetaTrader 5 sobre esta questão. Ele é uma continuação da primeira parte: "Negociação Bidirecional e de Cobertura de Posições no MetaTrader 5 Através do Painel de HedgeTerminal, Parte 1". Na segunda parte, nós discutimos a integração do Expert Advisors personalizado com o HedgeTerminalAPI, que é uma biblioteca de visualização especial projetada para a negociação bidirecional em um ambiente de software confortável, fornecendo ferramentas para o gerenciamento de posições de forma conveniente.
preview
Aprendendo a construindo um EA que opera de forma automática (Parte 01): Conceitos e estruturas

Aprendendo a construindo um EA que opera de forma automática (Parte 01): Conceitos e estruturas

Aprenda como criar um EA que opera de forma automática, isto de forma simples e o mais seguro possível.
Dicas para Escolher um Sinal de Negociação para Assinar. Guia Passo-a-Passo
Dicas para Escolher um Sinal de Negociação para Assinar. Guia Passo-a-Passo

Dicas para Escolher um Sinal de Negociação para Assinar. Guia Passo-a-Passo

Este guia passo-a-passo é dedicado ao serviço de Sinais, examinação dos sinais de negociação, uma abordagem de sistema para a busca de um sinal desejado, que satisfaça os critérios de rentabilidade, risco, ambições de negociação, trabalhando em vários tipos de contas e instrumentos financeiros.
Expert Advisor Multiplataforma: Filtros de Tempo
Expert Advisor Multiplataforma: Filtros de Tempo

Expert Advisor Multiplataforma: Filtros de Tempo

Este artigo discute a implementação de vários métodos de filtragem de tempo de um Expert Advisor multiplataforma. As classes de filtro de tempo são responsáveis ​​por verificar se um determinado momento corresponde a uma determinada configuração de tempo definida.
Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)
Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)

Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)

Este artigo descreve como adicionar a um EA um recurso para trabalhar com o servidor de banco de dados Microsoft SQL Server. São importadas funções de uma DLL. Para criar a DLL, é implementada a plataforma Microsoft .NET e a linguagem C#. Com pequenas alterações, os métodos usados no artigo também são adequados para EAs escritos em MQL4.
Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging
Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging

Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging

O artigo discute os métodos de construção e treinamento de ensembles de redes neurais com estrutura de bagging. Ele também determina as peculiaridades da otimização de hiperparâmetros para classificadores de redes neurais individuais que compõem o ensemble. A qualidade da rede neural otimizada obtida no artigo anterior da série é comparada com a qualidade do ensemble de redes neurais criado. São consideradas as possibilidades de melhorar ainda mais a qualidade da classificação do ensemble.
Transferência de um Código Indicador para um Código Expert Advisor. Estrutura do Indicator
Transferência de um Código Indicador para um Código Expert Advisor. Estrutura do Indicator

Transferência de um Código Indicador para um Código Expert Advisor. Estrutura do Indicator

Este artigo trata sobre formas de transferência de um código indicador para um código Expert Advisor e sobre a escrita de Expert Advisors sem convocar indicadores personalizados, e com todo o código do programa para o cálculo dos valores dos indicadores necessários dentro do Expert Advisor. Este artigo fornece um esquema geral de uma estrutura de indicador, emulação de buffers indicadores no Expert Advisor e a substituição da função IndicatorCounted (). O artigo destina-se para leitores com experiência de programação na linguagem MQL4.
Guia Prático MQL5: Processamento de Eventos Típicos do Gráfico
Guia Prático MQL5: Processamento de Eventos Típicos do Gráfico

Guia Prático MQL5: Processamento de Eventos Típicos do Gráfico

Este artigo considera os eventos típicos do gráfico e inclui exemplos de seu processamento. Iremos nos concentrar em eventos realizados pelo mouse, teclas, criação/alteração/remoção de um objeto gráfico, clique do mouse no gráfico e em um objeto gráfico, arrastamento de um objeto gráfico com o mouse, término da edição do texto em um campo de texto, bem como os eventos de modificação do gráfico. Será fornecido um exemplo de programa em MQL5 para cada tipo de evento aqui considerado.
Estudo de técnicas de análise de velas (parte IV): Atualizações e adições ao Pattern Analyzer
Estudo de técnicas de análise de velas (parte IV): Atualizações e adições ao Pattern Analyzer

Estudo de técnicas de análise de velas (parte IV): Atualizações e adições ao Pattern Analyzer

O artigo apresenta uma nova versão do aplicativo Pattern Analyzer. Esta versão fornece correções de bugs e novos recursos, bem como a interface de usuário revisada. Os comentários e sugestões do artigo anterior foram levados em conta no desenvolvimento da nova versão. A aplicação resultante é descrita neste artigo.
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXVII): trabalho com ordens de negociação - posicionamento de ordens pendentes
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXVII): trabalho com ordens de negociação - posicionamento de ordens pendentes

Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXVII): trabalho com ordens de negociação - posicionamento de ordens pendentes

Neste artigo continuaremos a tratar do trabalho com ordens de negociação, implementaremos o posicionamento de ordens pendentes, corrigiremos erros encontrados no funcionamento da classe de negociação.
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.
Distribuições de probabilidade estatística em MQL5
Distribuições de probabilidade estatística em MQL5

Distribuições de probabilidade estatística em MQL5

O artigo aborda as distribuições de probabilidade (normal log-normal, binominal, logística, exponencial, distribuição de Cauchy, distribuição T de Student, distribuição Laplace, distribuição Poisson, distribuição Secante Hiperbólica, distribuição Beta e Gama) de variáveis aleatórias usadas nas Estatísticas Aplicadas. Também apresenta classes para lidar com estas distribuições.
Arranquemos o lucro até o último pip
Arranquemos o lucro até o último pip

Arranquemos o lucro até o último pip

Este artigo tenta combinar teoria com prática no campo da negociação algorítmica. A maior parte da conversa sobre a criação de sistemas de negociação está associada ao uso de barras históricas de preços e vários indicadores. Este é um campo bem desgastado que não tocaremos. As barras são uma entidade completamente artificial, por isso, vamos dar algo mais próximo a protoinformações - ticks.
Biblioteca para o desenvolvimento fácil e rápido de programas para a MetaTrader (parte IV): eventos de negociação
Biblioteca para o desenvolvimento fácil e rápido de programas para a MetaTrader (parte IV): eventos de negociação

Biblioteca para o desenvolvimento fácil e rápido de programas para a MetaTrader (parte IV): eventos de negociação

Nos artigos anteriores, nós começamos a criar uma grande biblioteca multi-plataforma, simplificando o desenvolvimento de programas para as plataformas MetaTrader 5 e MetaTrader 4. Nós já temos as coleções do histórico de ordens e negócios, ordens e posições de mercado, bem como a classe para a seleção conveniente e ordenação das ordens. Nesta parte, nós continuaremos com o desenvolvimento do objeto base e ensinaremos a Biblioteca Engine a monitorar os eventos de negociação na conta.
preview
Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 01): Primeiros experimentos (I)

Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 01): Primeiros experimentos (I)

Que tal criar um sistema para estudar o mercado quando ele está fechado, ou mesmo simular situações de mercado. Aqui vamos iniciar uma nova sequencia de artigos, a fim de tratar deste tema.
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.
Segredos do terminal do cliente MetaTrader 4: Sistema de alerta
Segredos do terminal do cliente MetaTrader 4: Sistema de alerta

Segredos do terminal do cliente MetaTrader 4: Sistema de alerta

Como estar ciente do que acontece no terminal e na sua conta sem estar permanente olhando para o monitor. Eventos do sistema; eventos personalizados; onda e arquivos executáveis​​; mensagens eletrônicas; configuração do acesso ao servidor SMTP; publicações; configuração do acesso ao servidor FTP.
Como escrever uma biblioteca DLL em MQL5 (Parte II) em 10 minutos: escrevendo no ambiente do Visual Studio 2017
Como escrever uma biblioteca DLL em MQL5 (Parte II) em 10 minutos: escrevendo no ambiente do Visual Studio 2017

Como escrever uma biblioteca DLL em MQL5 (Parte II) em 10 minutos: escrevendo no ambiente do Visual Studio 2017

O artigo básico inicial não perdeu sua importância e todos os interessados neste tópico simplesmente devem lê-lo. Mas já se passou muito tempo desde então, e agora o Visual Studio 2017 com uma nova interface está à frente, também a própria plataforma MetaTrader 5 vem se desenvolvendo e segue em frente. O artigo descreve as etapas de criação de um projeto dll, abrangendo configurações e colaboração com as ferramentas do terminal MetaTrader 5.