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
Estudo de técnicas de análise de velas (parte III): Biblioteca para trabalhar com os padrões
Estudo de técnicas de análise de velas (parte III): Biblioteca para trabalhar com os padrões

Estudo de técnicas de análise de velas (parte III): Biblioteca para trabalhar com os padrões

O objetivo deste artigo é criar uma ferramenta personalizada que permita aos usuários receber e usar todo o array de informações sobre os padrões discutidos anteriormente. Nós vamos criar uma biblioteca de funções relacionadas aos padrões que você poderá usar em seus próprios indicadores, painéis de negociação, Expert Advisors, etc.
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().
Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?
Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?

Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?

A maioria dos assinantes escolhe sinais de negociação pela aparência da curva de saldo e pelo número de assinantes. Daí que muitos provedores hoje se preocupam mais com estatísticas bonitas do que com a qualidade real do sinal, muitas vezes testando diversos volumes de transação e melhorando artificialmente a aparência da curva de saldo. Este artigo aborda critérios de confiabilidade e maneiras pelas quais um provedor pode melhorar a qualidade de seu sinal. São exemplificadas a análise do histórico de um determinado sinal e as maneiras que podem ajudar o provedor a torná-lo mais lucrativo e menos arriscado.
Aplicação do método de Monte Carlo para otimizar estratégias de negociação
Aplicação do método de Monte Carlo para otimizar estratégias de negociação

Aplicação do método de Monte Carlo para otimizar estratégias de negociação

Antes de lançar um robô em uma conta de negociação, geralmente nós realizamos testes e otimizações no histórico das cotações. No entanto, surge uma pergunta razoável: como os resultados passados ​​podem nos ajudar no futuro? O artigo descreve a aplicação do método de Monte Carlo para construir critérios personalizados para a otimização da estratégia de negociação. Além disso, são considerados os critérios de estabilidade do EA.
Assistente MQL5: Como ensinar um EA a abrir ordens pendentes a qualquer preço
Assistente MQL5: Como ensinar um EA a abrir ordens pendentes a qualquer preço

Assistente MQL5: Como ensinar um EA a abrir ordens pendentes a qualquer preço

O artigo descreve um método de modificação do código de um módulo do sinal de negociação para implementação da funcionalidade que permite que você configure ordens pendentes a qualquer distância do preço atual: podendo ser preço de abertura ou fechamento da barra anterior ou do valor da média móvel. Há uma enorme quantidade de opções. O importante é que você possa definir qualquer preço de abertura para uma ordem pendente. Esse artigo será útil para negociadores que negociam com ordens pendentes.
Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient
Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient

Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient

Continuamos a estudar o trabalho com a CAppDialog. Agora, aprenderemos a como definir a cor de fundo, de borda e de barra de título para o painel gráfico. Consideraremos passo a passo como adicionar transparência à janela do aplicativo ao movê-la no gráfico. Em seguida, analisaremos a criação de descendentes da CAppDialog ou da CWndClient e veremos novas sutilezas ao trabalhar com controles. Finalmente, olharemos de uma nova perspectiva os novos Projetos.
Guia Prático MQL5: Processamento do Evento BookEvent
Guia Prático MQL5: Processamento do Evento BookEvent

Guia Prático MQL5: Processamento do Evento BookEvent

Este artigo estuda o BookEvent - o evento da Profundidade do Mercado, bem como o princípio de seu processamento. Um programa em MQL e o tratamento dos estados da Profundidade do Mercado servem de exemplo. Ele é escrito usando a abordagem orientada a objetos. Os resultados do tratamento são exibidos na tela como um painel com os níveis da Profundidade do Mercado.
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.
Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte I). Conceito, gerenciamento de dados e primeiros resultados
Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte I). Conceito, gerenciamento de dados e primeiros resultados

Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte I). Conceito, gerenciamento de dados e primeiros resultados

Ao analisar um grande número de estratégias de negociação, pedidos de desenvolvimento de aplicativos para os terminais MetaTrader 5 e MetaTrader 4 e vários sites sobre MetaTrader, eu cheguei à conclusão de que toda essa diversidade é baseada principalmente nas mesmas funções elementares, ações e valores que aparecem regularmente em diferentes programas. Isso resultou na biblioteca multi-plataforma DoEasy para o desenvolvimento fácil e rápido de aplicativos para a МetaТrader 5 e МetaТrader 4.
preview
Como ganhar US$ 1 000 000 por meio do trading algorítmico? Nos serviços MQL5.com!

Como ganhar US$ 1 000 000 por meio do trading algorítmico? Nos serviços MQL5.com!

Cada trader chega ao mercado com o objetivo de ganhar seu primeiro milhão de dólares. Como ele pode fazer isso sem muito risco e sem capital inicial? Os serviços MQL5 facilitam isso para desenvolvedores e traders em qualquer país do mundo.
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.
Raios Elder (Bulls Power e Bears Power)
Raios Elder (Bulls Power e Bears Power)

Raios Elder (Bulls Power e Bears Power)

Sistema de negociação Raios Elder (em inglês, 'Elder-ray') baseado nos indicadores Bulls Power, Bears Power e Moving Average (EMA — MME, média móvel exponencial). Este sistema foi descrito por Alexander Elder em seu livro "Como se transformar em um operador e investidor de sucesso" (na versão original em inglês, 'Trading for a Living').
Criar critérios personalizados de otimização de Expert Advisors
Criar critérios personalizados de otimização de Expert Advisors

Criar critérios personalizados de otimização de Expert Advisors

O terminal do cliente MetaTrader 5 oferece uma ampla gama de possibilidades de otimização dos parâmetros de Expert Advisor. Além dos critérios de otimização inclusos no provador de estratégia, os desenvolvedores têm a possibilidade de criar os seus próprios critérios. Isto leva a um número quase ilimitado de possibilidades de teste e otimização dos Expert Advisors. Este artigo descreve formas práticas, tanto simples como complexas, de criação desses critérios.
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.
Usando Indicadores MetaTrader 5 com Estrutura de Aprendizado de Máquina ENCOG para Previsão das Séries Temporais
Usando Indicadores MetaTrader 5 com Estrutura de Aprendizado de Máquina ENCOG para Previsão das Séries Temporais

Usando Indicadores MetaTrader 5 com Estrutura de Aprendizado de Máquina ENCOG para Previsão das Séries Temporais

Este artigo apresenta a conexão do MetaTrader 5 para ENCOG - Rede neural avançada e estrutura de aprendizado de máquina. Ele contém a descrição e implementação de um simples indicador de rede neural com base em indicadores técnicos padrão e um Expert Advisor baseado em um indicador neural. Todos os códigos fonte, binários compilados, DLLs e uma rede treinada exemplar estão ligados ao artigo.
R quadrado como uma estimativa da qualidade da curva de saldo da estratégia
R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

Este artigo descreve a construção do R² - critério de otimização personalizado. Esse critério pode ser usado para estimar a qualidade da curva de saldo de uma estratégia e para selecionar as estratégias mais consistentes e lucrativas. O trabalho discute os princípios de sua construção e os métodos estatísticos utilizados na estimativa de propriedades e qualidade desta métrica.
Uso do filtro de Kalman na previsão da tendência
Uso do filtro de Kalman na previsão da tendência

Uso do filtro de Kalman na previsão da tendência

Para o sucesso na negociação, quase sempre são necessários indicadores, cujo objetivo é a separação entre o movimento principal do preço e as flutuações ruidosas. Neste artigo, é examinado um dos filtros digitais mais promissores, o filtro de Kalman. Além disso, são descritos tanto sua construção como uso na prática.
Criando interfaces gráficas para EAs e indicadores baseados no .Net Framework e C#
Criando interfaces gráficas para EAs e indicadores baseados no .Net Framework e C#

Criando interfaces gráficas para EAs e indicadores baseados no .Net Framework e C#

Uma maneira simples e rápida de criar janelas gráficas usando o editor do Visual Studio, e integração no código MQL do EA. O artigo é destinado para um vasto público de leitores e não requer conhecimentos de C# e .Net.
Depuração dos programas do MQL5
Depuração dos programas do MQL5

Depuração dos programas do MQL5

Este artigo é destinado principalmente aos programadores que já tenham aprendido a linguagem, mas ainda não tenham dominado completamente o desenvolvimento do programa. Ele revela algumas técnicas de depuração e apresenta uma experiência combinada do autor e muitos outros programadores.
Limitações e verificações em Expert Advisors
Limitações e verificações em Expert Advisors

Limitações e verificações em Expert Advisors

É permitido negociar este símbolo na segunda? Há dinheiro suficiente para abrir posição? Qual o tamanho da perda se o Stop Loss acionar? Como limitar o número de ordens pendentes? A operação de negócio foi executada na barra atual ou na anterior? Se um robô de negócio não puder realizar este tipo de verificações, então qualquer estratégia de negócio pode se tornar uma de perda. Este artigo mostra os exemplos de verificações que são úteis em qualquer Expert Advisor.
Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores
Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores

Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores

O artigo apresenta os indicadores descritos no livro de William Blau "Momentum, Direction, and Divergence". A abordagem de William Blau nos permite prontamente e precisamente aproximar as flutuações da curva de preço, para determinar a tendência de movimentos de preço e os pontos de virada e eliminar o ruído de preço. Entretanto, também somos capazes de detectar estados de excesso de compra ou venda do mercado e sinais indicando o fim da tendência e reverso do movimento de preço.
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.
Busca automática de divergências e convergência
Busca automática de divergências e convergência

Busca automática de divergências e convergência

O artigo examina todos os tipos de divergência: oculta, estendida, tripla, convergência, de classes A, B e C, etc. É criado um indicador universal para elas serem buscadas e exibidas num gráfico.
Quão seguro é comprar os produtos no Mercado MQL5?
Quão seguro é comprar os produtos no Mercado MQL5?

Quão seguro é comprar os produtos no Mercado MQL5?

Lançamos o serviço de venda de aplicativos de negociação para o MetaTrader 5 prestando muita atenção às questões de segurança. Minimizamos todos os riscos relacionados para permitir que você se concentre em questões mais importantes - procurar o robô de negociação mais apropriado!
Os projetos permitem que criar robôs de negociação lucrativos!  Mas não é exatamente isso
Os projetos permitem que criar robôs de negociação lucrativos!  Mas não é exatamente isso

Os projetos permitem que criar robôs de negociação lucrativos! Mas não é exatamente isso

Um programa grande começa com um arquivo pequeno que, por sua vez, gradualmente se torna maior, sendo preenchido com conjuntos de funções e objetos. A maioria dos desenvolvedores de robôs lida com esse problema por meio de arquivos de inclusão. Mas, o melhor é começar imediatamente a escrever os programas de negociação em projetos, pois isso é benéfico em todos os aspectos.
Martingale como base para estratégia de negociação a longo prazo
Martingale como base para estratégia de negociação a longo prazo

Martingale como base para estratégia de negociação a longo prazo

Neste artigo vamos considerar em detalhes o sistema martingale, vamos analisar se este sistema pode ser aplicado na negociação e como usá-lo para minimizar os riscos. A principal desvantagem deste sistema é a probabilidade de perder todo o seu depósito, este fato deve ser levado em conta, caso decida negociar usando a técnica martingale.
Gap - estratégia rentável ou 50/50?
Gap - estratégia rentável ou 50/50?

Gap - estratégia rentável ou 50/50?

Esse artigo considera o fenômeno gap - situação em que a diferença entre o preço de fechamento do timeframe anterior e o preço de abertura do próximo é significativa. Adicionalmente, toca a questão da direção tomada pela barra diária. Aqui é implementada a DLL de sistema da função GetOpenFileName.
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.
Florestas Aleatórias na Previsão das Tendências
Florestas Aleatórias na Previsão das Tendências

Florestas Aleatórias na Previsão das Tendências

Este artigo considera o uso do pacote Rattle na busca automática de padrões para prever as posições compradas ou vendidas dos pares de moedas no Forex. Este artigo pode ser útil tanto para novatos quanto para profissionais experientes.
Testador de estratégia personalizada com base em cálculos matemáticos rápido
Testador de estratégia personalizada com base em cálculos matemáticos rápido

Testador de estratégia personalizada com base em cálculos matemáticos rápido

O artigo descreve como criar um testador de estratégias personalizado e um analisador de corridas de otimização próprio. Depois de lê-lo, você vai entender como funciona o modo de cálculos matemáticos e o mecanismo de quadros, como preparar e fazer upload de seus próprios dados para cálculos e usar algoritmos eficientes para comprimi-los. Além disso, este artigo será de interesse para quem deseje saber maneiras de armazenar informações personalizadas num EA.
Caminhe em novos trilhos: Personalize indicadores no MQL5
Caminhe em novos trilhos: Personalize indicadores no MQL5

Caminhe em novos trilhos: Personalize indicadores no MQL5

Vou agora listar todas as possibilidades novas e recursos do novo terminal e linguagem. Elas são várias, e algumas novidades valem a discussão em um artigo separado. Além disso, não há códigos aqui escritos com programação orientada ao objeto, é um tópico muito importante para ser simplesmente mencionado em um contexto como vantagens adicionais para os desenvolvedores. Neste artigo vamos considerar os indicadores, sua estrutura, desenho, tipos e seus detalhes de programação em comparação com o MQL4. Espero que este artigo seja útil tanto para desenvolvedores iniciantes quanto para experientes, talvez alguns deles encontrem algo novo.
MQL para "Principiantes": como projetar e construir classes de objeto
MQL para "Principiantes": como projetar e construir classes de objeto

MQL para "Principiantes": como projetar e construir classes de objeto

Criando um programa de amostra de design visual, demonstramos como projetar e construir classes no MQL5. O artigo é escrito para programadores iniciantes, que estejam trabalhando em aplicações MT5. Propomos uma tecnologia simples e de fácil compreensão para criação de classes, sem a necessidade de se aprofundar na teoria de programação orientada a objeto.
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.
EA com interface gráfica: Fornecendo funcionalidade (Parte II)
EA com interface gráfica: Fornecendo funcionalidade (Parte II)

EA com interface gráfica: Fornecendo funcionalidade (Parte II)

Esta é a segunda parte do artigo sobre criação de um EA multissímbolo de sinal para negociação manual. Nós já criamos uma interface gráfica. Neste artigo, vamos falar sobre como vinculá-la à funcionalidade do programa.
Assistente MQL5: como criar um módulo de sinais de comércio
Assistente MQL5: como criar um módulo de sinais de comércio

Assistente MQL5: como criar um módulo de sinais de comércio

O artigo discute como escrever sua própria classe de sinais de comércio com a implementação de sinais no cruzamento do preço e da média móvel, e como incluí-lo ao gerador de estratégias de comércio do Assistente MQL5, bem como descreve a estrutura e o formato da descrição da classe gerada para o Assistente MQL5.
Guia para testes e otimização de Expert Advisors no MQL5
Guia para testes e otimização de Expert Advisors no MQL5

Guia para testes e otimização de Expert Advisors no MQL5

Este artigo explica o processo passo-a-passo de identificação e solução de erros de código, assim como os passos para testar e otimizar os parâmetros de entrada do Expert Advisor. Você aprenderá como utilizar o Strategy Tester do terminal do cliente MetaTrader 5 para descobrir o melhor símbolo e definição dos parâmetros de entrada para seu Expert Advisor.
Indicador para representação de gráfico Kagi
Indicador para representação de gráfico Kagi

Indicador para representação de gráfico Kagi

O artigo propõe o indicador de gráfico Kagi com várias opções e funções adicionais. Além disso, o princípio de tracejar gráficos e seus recursos de implementação MQL5 são considerados. Os casos mais populares de sua implementação em negociação são exibidos - estratégia de troca de Yin/Yang, afastando para longe a partir da linha de evolução gráfica e aumentando sistematicamente "ombros" e diminuindo "cinturas".
Provedores de Sinal Johnpaul77: "Nossa estratégia continua a ser rentável por mais de três anos. Então, por que devemos mudar isso?"
Provedores de Sinal Johnpaul77: "Nossa estratégia continua a ser rentável por mais de três anos. Então, por que devemos mudar isso?"

Provedores de Sinal Johnpaul77: "Nossa estratégia continua a ser rentável por mais de três anos. Então, por que devemos mudar isso?"

Vamos revelar um pequeno segredo: Os visitantes do site MQL5.com passam a maior parte do seu tempo na página do sinal Johnpaul77. Ele é líder em nosso ranking de sinais, com cerca de 900 assinantes e com fundos de contas reais no valor total de $5.7 milhões. Entrevistamos o provedor deste sinal. Acontece que há quatro deles! Como são distribuídos os deveres entre os membros da equipe? Quais são as ferramentas técnicas que eles usam? Por que eles se auto-denominam de John Paul? E, finalmente, como que simples jogadores da Indonésia se tornaram os principais provedores de sinais no MQL5.com? Descubra tudo neste artigo.
Combinando uma estratégia de tendência com outra de fase de correção
Combinando uma estratégia de tendência com outra de fase de correção

Combinando uma estratégia de tendência com outra de fase de correção

Existem diversas estratégias de negociação - algumas procuram movimentos direcionais e operam com a tendência, já outras identificam faixas de preço e negociam dentro desses corredores. Neste ponto, surge a pergunta: é possível combinar as duas abordagens para aumentar a rentabilidade da negociação?
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.