Artigos sobre programação na linguagem 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
Ondas de Wolfe
Ondas de Wolfe

Ondas de Wolfe

Este método gráfico, proposto por Bill Wolfe, torna possível não só identificar a forma e, assim, determinar o tempo e a direção de entrada, mas também prever o alvo, que deve atingir o preço, e o tempo para alcançá-lo. Este artigo descreve como criar, com a base no indicador ZigZag, um indicador para procurar ondas de Wolfe e um Expert Advisor simples que opere de acordo com seus sinais.
Como adicionar rapidamente paneis de controle a indicadores e conselheiros (EA)
Como adicionar rapidamente paneis de controle a indicadores e conselheiros (EA)

Como adicionar rapidamente paneis de controle a indicadores e conselheiros (EA)

Você deseja adicionar ao seu indicador ou conselheiro um painel gráfico para um controle fácil e rápido, mas não sabe como fazê-lo? Neste artigo, vou mostrar passo a passo como "atar" o painel de diálogo com os parâmetros de entrada do seu programa MQL4/MQL5.
Decompondo as entradas em indicadores
Decompondo as entradas em indicadores

Decompondo as entradas em indicadores

Diferentes situações acontecem na vida do trader. Muitas vezes, tentamos restaurar uma estratégia por meio do histórico de trades bem-sucedidos, no entanto, ao observar o histórico de perdas procuramos aperfeiçoar e melhorá-la. E, de fato, em ambos os casos, comparamos as transações com indicadores conhecidos. Este artigo sugere métodos de comparação de lotes de trades com uma série de indicadores.
Contratos futuros contínuos em MetaTrader 5
Contratos futuros contínuos em MetaTrader 5

Contratos futuros contínuos em MetaTrader 5

O curto período dos contratos futuros complica sua análise técnica, é tecnicamente difícil de analisar este tipo de ativo. Por exemplo, o número de barras no gráfico diário do contrato futuro do índice de Ações Ucraniana UX-9.13 é maior do que 100, portanto o trader cria longos contratos futuros sintéticos. Este artigo explica como emendar contratos futuros com datas diferentes no terminal 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

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.
Previsão de movimentos do mercado utilizando a classificação Bayesiana e indicadores com base na análise de espectro singular
Previsão de movimentos do mercado utilizando a classificação Bayesiana e indicadores com base na análise de espectro singular

Previsão de movimentos do mercado utilizando a classificação Bayesiana e indicadores com base na análise de espectro singular

Nesta pesquisa, são consideradas uma ideologia e metodologia a fim de construir um sistema de recomendação para negociar rápido com base na combinação de possibilidades de previsão com ajuda da Análise de Espetro Singular (SSA) e o método de aprendizado de máquina baseado no teorema de Bayes.
Receitas MQL5 - Criamos um buffer circular para calcular rapidamente indicadores numa janela deslizante
Receitas MQL5 - Criamos um buffer circular para calcular rapidamente indicadores numa janela deslizante

Receitas MQL5 - Criamos um buffer circular para calcular rapidamente indicadores numa janela deslizante

O buffer circular é a maneira mais simples e eficaz de organizar os dados para os cálculos numa janela deslizante. Este artigo descreve como está construído este algoritmo e mostra como usá-lo para fazer o cálculo numa janela deslizante usando um processo simples e eficiente.
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.
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.
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.
Avaliação e seleção de variáveis para os modelos de aprendizado da máquina
Avaliação e seleção de variáveis para os modelos de aprendizado da máquina

Avaliação e seleção de variáveis para os modelos de aprendizado da máquina

Este artigo foca sobre as especificidades de escolha, o pré-condicionamento e avaliação das variáveis de entrada (preditoras) para uso em modelos de aprendizagem da máquina. Novas abordagens e oportunidades de análises preditoras profundas e suas influências no possível sobre-ajuste (overfitting) dos modelos serão consideradas. O resultado global do uso de modelos, em grande parte, depende do resultado desta etapa. Vamos analisar dois pacotes, oferecendo abordagens novas e originais para a seleção dos preditores.
Crie Seu Próprio Expert Advisor no MQL5 Wizard
Crie Seu Próprio Expert Advisor no MQL5 Wizard

Crie Seu Próprio Expert Advisor no MQL5 Wizard

O conhecimento das linguagens de programação não é mais um pré-requisito para a criação de robôs de negociação. Anteriormente, a falta de habilidades de programação era um obstáculo intransponível para a implementação de estratégias de negociação próprias, mas com o surgimento do MQL5 Wizard, a situação mudou radicalmente. Os comerciantes inexperientes podem parar de se preocupar por causa da falta de experiência em programação - com o novo Wizard, que permite gerar código do Expert Advisor, isso não é necessário.
Usando os recursos computacionais do MATLAB 2018 no MetaTrader 5
Usando os recursos computacionais do MATLAB 2018 no MetaTrader 5

Usando os recursos computacionais do MATLAB 2018 no MetaTrader 5

Depois da atualizar o pacote MATLAB em 2015, é necessário considerar a maneira moderna de criar bibliotecas DLL. Como o exemplo de um indicador preditivo, o artigo ilustra os recursos de vinculação do MetaTrader 5 e do MATLAB usando versões modernas de plataformas de 64 bits. Ao analisar toda a sequência de conexão do MATLAB, o desenvolvedor MQL5 criará rapidamente aplicativos com recursos computacionais avançados, evitando riscos.
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.
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.
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.
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.
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.
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.
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.
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.
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ê.
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.
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.
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.
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.
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.
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.