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
Gerador de sinal de negócios baseado em um indicador personalizado
Gerador de sinal de negócios baseado em um indicador personalizado

Gerador de sinal de negócios baseado em um indicador personalizado

Como criar um gerador de sinal de negociação com base em um indicador personalizado? Como criar um indicador personalizado? Como acessar os dados do indicador personalizado? Por que precisamos da estrutura IS_PATTERN_USAGE(0) e modelo 0?
Diagramas horizontais nos gráficos do MetaTrader 5
Diagramas horizontais nos gráficos do MetaTrader 5

Diagramas horizontais nos gráficos do MetaTrader 5

Embora a tarefa de plotar diagramas horizontais no gráfico do terminal não seja frequente, é o desenvolvedor que deve lidar com ela. Essa tarefa envolve indicadores de distribuição de volumes para um período específico. Também implica distribuição de preços, diversos livros de ofertas, etc. O artigo considera a criação e o gerenciamento de diagramas horizontais em gráficos, arrays de primitivas gráficas.
Aplicando o método de Monte Carlo no aprendizado por reforço
Aplicando o método de Monte Carlo no aprendizado por reforço

Aplicando o método de Monte Carlo no aprendizado por reforço

O uso de aprendizado por reforço para desenvolver EAs de autoaprendizagem. No artigo anterior, vimos o algoritmo Random Decision Forest e escrevemos um EA simples de autoaprendizagem baseado no aprendizado por reforço. Observamos que a principal vantagem desta abordagem era a fácil escrita do algoritmo de negociação e a alta velocidade de aprendizagem. O aprendizado por reforço (doravante simplesmente AR) é facilmente incorporado a qualquer EA e acelera sua otimização.
Como desenvolver um Expert Advisor usando ferramentas de UML
Como desenvolver um Expert Advisor usando ferramentas de UML

Como desenvolver um Expert Advisor usando ferramentas de UML

Este artigo discute a criação de Expert Advisors usando a linguagem gráfica UML, que é usada para modelagem visual de sistemas de software orientados a objeto. A principal vantagem dessa abordagem é a visualização do processo de modelagem. O artigo contém um exemplo que mostra a modelagem da estrutura e propriedades de um Expert Advisor usando o Software Ideas Modeler.
Rede neural profunda com Máquina de Boltzmann Restrita Empilhada. Auto-aprendizagem, auto-controle
Rede neural profunda com Máquina de Boltzmann Restrita Empilhada. Auto-aprendizagem, auto-controle

Rede neural profunda com Máquina de Boltzmann Restrita Empilhada. Auto-aprendizagem, auto-controle

Este artigo é uma continuação dos artigos anteriores sobre redes neurais profundas e seleção de preditores. Aqui, consideraremos as características de uma rede neural iniciada com a Stacked RBM (Máquina de Boltzmann Restrita Empilhada), bem como sua implementação no pacote "darch".
Construindo uma Startup em Tecnologia Social, Parte II: Programando um cliente REST em MQL5
Construindo uma Startup em Tecnologia Social, Parte II: Programando um cliente REST em MQL5

Construindo uma Startup em Tecnologia Social, Parte II: Programando um cliente REST em MQL5

Vamos agora dar forma a idéia do Twitter baseado em PHP que foi introduzido na primeira parte deste artigo. Nós estamos reunindo as diferentes partes do SDSS. Quanto a arquitetura do sistema pelo lado do cliente, nós estaremos contando com a nova função WebRequest() em MQL5 para o envio de sinais de negociação via HTTP.
Diminuindo o Consumo de Memória pelos Indicadores Auxiliares
Diminuindo o Consumo de Memória pelos Indicadores Auxiliares

Diminuindo o Consumo de Memória pelos Indicadores Auxiliares

Se um indicador usa valores de muitos outros indicadores para seus cálculos, ele consome muita memória. O artigo descreve diversos métodos para diminuir o consumo de memória quando estiver usando indicadores auxiliares. A memória salva permite o aumento de pares de moedas, indicadores e estratégias usados simultaneamente no terminal cliente. Ele aumenta a confiabilidade do portfólio comercial. Esse cuidado simples sobre os recursos técnicos do seu computador pode se transformar em recursos monetários em seu depósito.
Meu primeiro "graal"
Meu primeiro "graal"

Meu primeiro "graal"

Aqui são examinados os erros mais comuns que levam programadores de primeira viagem a criar sistemas de transações "super lucrativos" (durante testes). São apresentados experts exemplificadores que apresentam resultados fantásticos no verificador, mas resultam em perdas em transações reais.
Otimização automática de EAs no MetaTrader 5
Otimização automática de EAs no MetaTrader 5

Otimização automática de EAs no MetaTrader 5

Este artigo descreve um mecanismo de auto-otimização de um EA para o MetaTrader 5.
Interfaces Gráficas I: Preparação da Estrutura da Biblioteca (Capítulo 1)
Interfaces Gráficas I: Preparação da Estrutura da Biblioteca (Capítulo 1)

Interfaces Gráficas I: Preparação da Estrutura da Biblioteca (Capítulo 1)

Este artigo é o começo de uma outra série sobre o desenvolvimento de interfaces gráficas. Atualmente, não há uma única biblioteca de código que permite a criação rápida e fácil de interfaces gráficas de alta qualidade dentro das aplicações em MQL. Me refiro as interfaces gráficas que estamos acostumados nos sistemas operacionais comuns.
Monitoramento de sinais de negociação multimoeda (Parte 1): Desenvolvimento da estrutura do aplicativo
Monitoramento de sinais de negociação multimoeda (Parte 1): Desenvolvimento da estrutura do aplicativo

Monitoramento de sinais de negociação multimoeda (Parte 1): Desenvolvimento da estrutura do aplicativo

Neste artigo, nós discutiremos a ideia de criar um monitor de sinais de negociação de várias moedas e desenvolveremos a estrutura do futuro aplicativo juntamente com o seu protótipo, além de criar sua estrutura para as operações adicionais. O artigo apresenta uma criação passo a passo de um aplicativo flexível de várias moedas que permitirá a geração dos sinais de negociação e que ajudará os traders a encontrar os sinais desejados.
Strings: Tabela de Símbolos ASCII e seus usos
Strings: Tabela de Símbolos ASCII e seus usos

Strings: Tabela de Símbolos ASCII e seus usos

Neste artigo iremos analisar a tabelo de símbolos ASCII e o modo de utilização. Também vamos lidar com algumas novas funções com o princípio de funcionamento baseado nas peculiaridades da tabela ASCII, e, em seguida, vamos criar uma nova biblioteca que incluirá essas funções. Elas são muito populares em outras linguagens de programação mas não são incluídos na lista de funções embutidas. Além disso, vamos examinar em detalhes os conceitos básicos do trabalho com strings. Acho que você certamente aprenderá algo novo sobre este tipo útil de dados.
Gráfico de saldo multissímbolo no MetaTrader 5
Gráfico de saldo multissímbolo no MetaTrader 5

Gráfico de saldo multissímbolo no MetaTrader 5

O artigo mostra um aplicativo MQL de exemplo com uma interface gráfica em que gráficos multissímbolos de saldo e rebaixamento do depósito são exibidos com base nos resultados do último teste.
3 Métodos de Aceleração de Indicadores através do Exemplo da Regressão Linear
3 Métodos de Aceleração de Indicadores através do Exemplo da Regressão Linear

3 Métodos de Aceleração de Indicadores através do Exemplo da Regressão Linear

O artigo lida com os métodos de otimização de algorítimos computacionais de indicadores. Todos encontrarão um método que seja melhor para suas necessidades. Três métodos são descritos aqui. Um deles é bastante simples, o outro requer conhecimento sólido em matemática e o último requer um pouco de perspicácia. Indicadores ou o design do terminal do MetaTrader 5 são usados para realizar a maioria dos métodos descritos. Os métodos são bastante universais e podem ser usados não apenas para aceleração do cáluclo de regressão linar, mas também para muitos outros indicadores.
O que é Martingale? É sensato utilizá-lo?
O que é Martingale? É sensato utilizá-lo?

O que é Martingale? É sensato utilizá-lo?

Este artigo contém uma descrição detalhada do sistema Martingale, bem como cálculos matemáticos precisos necessários para responder a pergunta: "É sensato utilizar o sistema Martingale?"
WebRequest multi-threaded assíncrono em MQL5
WebRequest multi-threaded assíncrono em MQL5

WebRequest multi-threaded assíncrono em MQL5

Este artigo descreve uma biblioteca que permite aumentar a eficiência ao trabalhar com solicitações HTTP em linguagem MQL5. O WebRequest é iniciado no modo sem bloqueio em threads adicionais usando gráficos e EAs assistentes, compartilhando eventos personalizados e lendo recursos compartilhados. Códigos fonte estão anexados ao artigo.
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.
Assistente MQL5: como criar um módulo de gerenciamento de risco e dinheiro
Assistente MQL5: como criar um módulo de gerenciamento de risco e dinheiro

Assistente MQL5: como criar um módulo de gerenciamento de risco e dinheiro

O gerador de estratégias de negociação do Assistente MQL5 simplifica extremamente o teste de ideias de negociação. O artigo descreve como desenvolver um módulo personalizado de risco e gerenciamento de dinheiro e habilitá-lo no Assistente MQL5. Como exemplo consideramos um algoritmo de gestão de dinheiro, em que o tamanho do volume de negócio é determinado pelos resultados do negócio anterior. A estrutura e o formato da descrição da classe criada para o Assistente MQL5 também são discutidas nesse artigo.
Como copiar a negociação do MetaTrader 5 para o MetaTrader 4
Como copiar a negociação do MetaTrader 5 para o MetaTrader 4

Como copiar a negociação do MetaTrader 5 para o MetaTrader 4

É possível negociar em uma conta real do MetaTrader 5 hoje? Como organizar tal negociação? O artigo contém a teoria destas questões e os códigos de trabalho utilizados para copiar negociações do terminal MetaTrader 5 para o MetaTrader 4. O artigo será útil tanto para desenvolvedores de Expert Advisors quanto para negociantes praticantes.
Guia prático do MQL5: Salvando resultados de otimização de um Expert Advisor baseado em critérios especificados
Guia prático do MQL5: Salvando resultados de otimização de um Expert Advisor baseado em critérios especificados

Guia prático do MQL5: Salvando resultados de otimização de um Expert Advisor baseado em critérios especificados

Continuamos as séries de artigos sobre a programação do MQL5. Desta vez, veremos como obter resultados de cada etapa de otimização durante a otimização do parâmetro do Expert Advisor. A implementação será feita de modo a garantir que, se forem atingidas as condições especificadas nos parâmetros externos, os valores das etapas correspondentes serão gravados em um arquivo. Além dos valores de teste, também salvaremos os parâmetros que levaram a tais resultados.
Escrevendo um livro de ofertas de scalping com base na biblioteca gráfica CGraphic
Escrevendo um livro de ofertas de scalping com base na biblioteca gráfica CGraphic

Escrevendo um livro de ofertas de scalping com base na biblioteca gráfica CGraphic

O artigo apresenta a criação de um livro de ofertas de scalping com funcionalidade básica. Desenvolve-e um gráfico de ticks com base na biblioteca gráfica CGraphic e se integra na tabela de pedidos. Pode-se criar um poderoso auxiliar para negociação no curto prazo utilizando o livro de ofertas descrito.
OpenCL: A ponte para mundos paralelos
OpenCL: A ponte para mundos paralelos

OpenCL: A ponte para mundos paralelos

No final de janeiro de 2012, a empresa de desenvolvimento de software que fica por trás do desenvolvimento do MetaTrader 5 anunciou o suporte nativo para OpenCL no MQL5. Usando um exemplo ilustrativo, o artigo estabelece o básico da programação no OpenCL no ambiente MQL5 e fornece alguns exemplos de otimização nativa do programa para o aumento da velocidade operacional.
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ê.
Como criar uma Especificação de Requisitos para solicitar um indicador
Como criar uma Especificação de Requisitos para solicitar um indicador

Como criar uma Especificação de Requisitos para solicitar um indicador

Na maioria das vezes, a primeira etapa no desenvolvimento de um sistema de negociação é a criação de um indicador técnico, que pode identificar padrões favoráveis ​​de comportamento do mercado. Um indicador desenvolvido de forma profissional pode ser encomendado no serviço Freelance. Neste artigo você aprenderá a criar uma Especificação de Requisitos apropriada, que o ajudará a obter o indicador desejado mais rapidamente.
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.
Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta
Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta

Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta

A plataforma MetaTrader 5 não é apenas multimercado, pois ela também permite que utilizar diferentes sistemas de registro de posição. Esses recursos expandem significativamente as ferramentas para a implementação e formalização de ideias de negociação. O artigo trata de como processar e levar em conta as propriedades das posições quando elas são registradas independentemente (cobertura - 'hedge'). Além disso, é proposta uma classe derivada, é exemplificado como processar e obter as propriedades de uma posição de cobertura.
Projeto Meta COT - Novos Horizontes para Analise do Relatório da CFTC em MetaTrader 4
Projeto Meta COT - Novos Horizontes para Analise do Relatório da CFTC em MetaTrader 4

Projeto Meta COT - Novos Horizontes para Analise do Relatório da CFTC em MetaTrader 4

O artigo é sobre o uso das informações do relatório da CFTC (Commodity Futures Trading Commission) em MetaTrader. O artigo descreve em datalhes a proposta do projeto META COT, mostra como carregar e processar as informações necessárias. O Expert Advisor incluído no projeto nos ajudará a analisar a eficácia do conceito apresentado no artigo. Por fim, vamos tirar algumas conclusões e oferecer sugestões úteis.
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.
Guia prático do MQL5: Utilizando indicadores para ajustar condições de negócios no Consultor Especialista
Guia prático do MQL5: Utilizando indicadores para ajustar condições de negócios no Consultor Especialista

Guia prático do MQL5: Utilizando indicadores para ajustar condições de negócios no Consultor Especialista

Neste artigo, continuaremos a a modificar o Consultor Especialista que estamos trabalhando durante os artigos precedentes da série Guia prático do MQL5. Desta vez, o Consultor Especialista será melhorado com indicadores dos quais os valores serão usados para verificar as condições de abertura de posição. Para aprimorá-lo, criaremos uma lista de menu suspenso nos parâmetros externos para ser possível selecionar um de três indicadores de transações.
Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes
Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes

Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes

Você precisa mais do que os gráficos estranhos de médias móveis? Você quer desenhar algo mais bonito do que um retângulo preenchido simples em seu terminal? Gráficos atraentes podem ser desenhados no terminal. Isso pode ser implementado através da classe CСanvas, que é usada para criar gráficos personalizados. Com esta classe você pode implementar a transparência, misturar cores e produzir uma ilusão de transparência por meio da sobreposição e mistura de cores.
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.
Redes Neurais Simples e Econômica - Conecte o NeuroPro com o MetaTrader 5
Redes Neurais Simples e Econômica - Conecte o NeuroPro com o MetaTrader 5

Redes Neurais Simples e Econômica - Conecte o NeuroPro com o MetaTrader 5

Se os programas de redes neurais específicos para negociação parecem ser caros e complexos ou, pelo contrário, muito simples, tente o NeuroPro. Ele é gratuito e contém o melhor conjunto de funcionalidades para amadores. Este artigo irá dizer-lhe como usá-lo em conjunto com o MetaTrader 5.
Gerenciando otimizações (Parte I): Criando uma interface gráfica do usuário
Gerenciando otimizações (Parte I): Criando uma interface gráfica do usuário

Gerenciando otimizações (Parte I): Criando uma interface gráfica do usuário

Este artigo descreve um processo para criar uma extensão projetada para o terminal MetaTrader. Essa solução ajuda a automatizar o processo de otimização através de sua execução em outros terminais. Outros artigos serão escritos com base neste artigo para desenvolver este tópico. A extensão será escrita usando linguagem C# e modelos de programação, o que, além do objetivo principal deste artigo, mostrará não apenas a capacidade do terminal de expandir os recursos originalmente criados através da escrita de templates próprios, mas também como criar facilmente gráficos personalizados numa linguagem com os recursos mais convenientes para isso.
Distribuições estatísticas em forma de histogramas sem buffers de indicador e matrizes
Distribuições estatísticas em forma de histogramas sem buffers de indicador e matrizes

Distribuições estatísticas em forma de histogramas sem buffers de indicador e matrizes

O artigo considera a possibilidade de criar histogramas, distribuições estatísticas das características do mercado usando memória gráfica, ou seja, sem o uso de buffers de indicador e matrizes. Aqui você tem à sua disposição não só exemplos detalhados de como construir esses histogramas, mas também pode conhecer a funcionalidade "oculta" dos objetos gráficos da linguagem MQL5.
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.
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.
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.
Sincronização de Expert Advisors, scripts e indicadores
Sincronização de Expert Advisors, scripts e indicadores

Sincronização de Expert Advisors, scripts e indicadores

O artigo considera a necessidade e os princípios gerais do desenvolvimento de um pacote de programas que incluiria um Expert Advisor, um script e um indicador.
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.