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
preview
Desenvolvendo um EA de negociação do zero (Parte 08): Um salto conceitual (I)

Desenvolvendo um EA de negociação do zero (Parte 08): Um salto conceitual (I)

Como implementar de forma o mais simples possível uma nova funcionalidade ? Aqui iremos dar um passo para trás para logo em seguida dar dois para frente.
Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)
Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)

Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)

Comparar várias séries temporais durante uma análise técnica é uma tarefa bastante comum que requer ferramentas apropriadas. Neste artigo, eu sugiro o desenvolvimento de uma ferramenta para análise gráfica e a detecção de correlações entre duas ou mais séries temporais.
preview
Trabalhando com o tempo (Parte 1): princípios básicos

Trabalhando com o tempo (Parte 1): princípios básicos

As funções e o código discutidos no artigo o ajudarão a entender melhor os princípios de processamento de tempo, de mudança de horário da corretora e de horário de verão ou de inverno. O uso adequado do tempo é um aspecto muito importante do trading. Este nos permite saber, por exemplo, se a Bolsa de Londres ou Nova Iorque já abriu ou ainda não ou a que horas começa/termina o pregão no mercado de moedas.
Os Traders Necessitam de Serviços de Desenvolvedores?
Os Traders Necessitam de Serviços de Desenvolvedores?

Os Traders Necessitam de Serviços de Desenvolvedores?

Os sistemas de negociação algorítmica se tornam mais populares e necessários, o que naturalmente levou a uma demanda por algoritmos exóticos e tarefas incomuns. Até certo ponto, esses aplicativos complexos estão disponíveis na Base de Código ou no Mercado. Embora os traders tenham acesso simples para os aplicativos em poucos cliques, esses aplicativos podem não satisfazer integralmente todas as necessidades. Neste caso, os traders procuram por desenvolvedores que podem escrever o aplicativo desejado na seção MQL5 Freelance e colocam uma encomenda.
Algoritmo auto-adaptável (Parte IV): funcionalidade e testes adicionais
Algoritmo auto-adaptável (Parte IV): funcionalidade e testes adicionais

Algoritmo auto-adaptável (Parte IV): funcionalidade e testes adicionais

Continuo a complementar o algoritmo com a funcionalidade mínima necessária, vou fazer testes do que obtivemos como resultado. A lucratividade acabou sendo baixa, mas os artigos mostram um modelo que permite negociar com lucro de modo totalmente automático com base em instrumentos de negociação completamente diferentes, e não apenas diferentes, mas também operados em mercados fundamentalmente diferentes.
Gráficos na biblioteca DoEasy (Parte 75): métodos para trabalhar com primitivos e texto num elemento gráfico básico
Gráficos na biblioteca DoEasy (Parte 75): métodos para trabalhar com primitivos e texto num elemento gráfico básico

Gráficos na biblioteca DoEasy (Parte 75): métodos para trabalhar com primitivos e texto num elemento gráfico básico

No artigo, continuaremos a desenvolver a classe base do elemento gráfico que compreende todos os objetos gráficos criados com base na classe da Biblioteca Padrão CCanvas. Criaremos métodos para desenhar primitivas gráficas e métodos para enviar texto para um objeto-elemento gráfico.
Novas oportunidades com o MetaTrader 5
Novas oportunidades com o MetaTrader 5

Novas oportunidades com o MetaTrader 5

O MetaTrader 4 ganhou sua popularidade com negociantes de todo o mundo e parecia que nada mais poderia ser desejado. Com sua alta velocidade de processamento, estabilidade, grande variedade de possibilidades para escrever indicadores, Expert Advisors e sistemas de negócio informativos, e a habilidade de escolher entre centenas de diferentes brokers, - o terminal se diferenciava-se muito do restante. Mas, o tempo não para e nos deparamos tendo que escolher entre o MetaTrade 4 ou MetaTrade 5. Neste artigo, descreveremos as principais diferenças do terminal da 5ª geração a nosso favor.
Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast(Build 3)
Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast(Build 3)

Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast(Build 3)

Apresentamos neste artigo a próxima versão da biblioteca Easy And Fast (build 3). Foi corrigido certas falhas e adicionado novos recursos. Para maiores informações leia a continuação do artigo.
Trabalhando com séries temporais na biblioteca DoEasy (Parte 42): classe de um objeto de buffer abstrato de indicador
Trabalhando com séries temporais na biblioteca DoEasy (Parte 42): classe de um objeto de buffer abstrato de indicador

Trabalhando com séries temporais na biblioteca DoEasy (Parte 42): classe de um objeto de buffer abstrato de indicador

Com este artigo começaremos a criar classes de buffers de indicador para a biblioteca DoEasy. Hoje, criaremos uma classe base de buffer abstrato que será o alicerce para a criação de diversos tipos de classes de buffer de indicador.
preview
Gradient Boosting (CatBoost) no desenvolvimento de sistemas de negociação. Uma abordagem ingênua

Gradient Boosting (CatBoost) no desenvolvimento de sistemas de negociação. Uma abordagem ingênua

Treinamento do classificador CatBoost em Python e exportação do modelo para a mql5, bem como a análise dos parâmetros do modelo e um testador de estratégia customizado. A linguagem Python e a biblioteca MetaTrader 5 são usadas para preparar os dados e treinar o modelo.
Aplicação do método de coordenadas de Eigen para a análise estrutural de distribuições estatísticas não extensivas
Aplicação do método de coordenadas de Eigen para a análise estrutural de distribuições estatísticas não extensivas

Aplicação do método de coordenadas de Eigen para a análise estrutural de distribuições estatísticas não extensivas

O maior problema de estatísticas aplicadas é o problema de aceitar a hipótese estatística. Isso foi por muito tempo considerado impossível de resolver. A situação mudou com o aparecimento do método de coordenadas Eigen. é uma ferramenta excelente para um estudo estrutural de um sinal, permitindo ver mais do que é possível usando métodos de estatística aplicada moderna. O artigo foca no uso prático deste método e estabelece programas no MQL5. Ele também lida com o problema de identificação de função usando como exemplo a distribuição apresentada por Hilhorst e Schehr.
preview
Otimização Walk Forward Contínua (Parte 4): Gerenciamento de Otimização (Otimizador Automático)

Otimização Walk Forward Contínua (Parte 4): Gerenciamento de Otimização (Otimizador Automático)

O principal objetivo do artigo é descrever o mecanismo de trabalho com nosso aplicativo e seus recursos. Assim, o artigo pode ser tratado como instruções sobre como utilizar o aplicativo. Ele cobre todas as possíveis dificuldades e detalhes do uso do aplicativo.
A última cruzada
A última cruzada

A última cruzada

Veja seu terminal de negociação. Quais meios de apresentação de preço você pode ver? Barras, candlesticks, linhas. Estamos buscando tempo e preços onde temos apenas lucro com os preços. Devemos dar atenção aos preços ao analisarmos o mercado? Este artigo propõe um algorítimo e um script para um gráfico de ponto e figura ("jogo da velha") é dada consideração a vários padrões de preço em que o uso prático é destacado nas recomendações fornecidas.
Freelance MQL5.com: Fonte de Renda dos Desenvolvedores (Infográfico)
Freelance MQL5.com: Fonte de Renda dos Desenvolvedores (Infográfico)

Freelance MQL5.com: Fonte de Renda dos Desenvolvedores (Infográfico)

Por ocasião do quarto aniversário do Serviço Freelance MQL5, nós preparamos uma infográfico demonstrando os resultados do serviço durante todo o tempo de sua existência. Os números falam por si mesmo: mais de 10.000 pedidos no valor total de 600 mil dólares foram executados até a presente data, enquanto que 3.000 clientes e 300 desenvolvedores já utilizaram o serviço.
preview
Redes Neurais de Maneira Fácil (Parte 8): Mecanismos de Atenção

Redes Neurais de Maneira Fácil (Parte 8): Mecanismos de Atenção

Nos artigos anteriores, nós já testamos várias opções para organizar as redes neurais. Nós também estudamos as redes convolucionais emprestadas dos algoritmos de processamento de imagem. Neste artigo, eu sugiro estudarmos os Mecanismos de Atenção, cujo surgimento deu impulso ao desenvolvimento dos modelos de linguagem.
Gráficos na biblioteca DoEasy (Parte 77): classe do objeto Sombra
Gráficos na biblioteca DoEasy (Parte 77): classe do objeto Sombra

Gráficos na biblioteca DoEasy (Parte 77): classe do objeto Sombra

Neste artigo, criaremos uma classe separada para o objeto de sombra (um herdeiro do objeto de elemento gráfico) e também adicionaremos a capacidade de ocupar o fundo do objeto com um preenchimento gradiente.
Os membros mais ativos do website MQL5.community ganharam iPhones!
Os membros mais ativos do website MQL5.community ganharam iPhones!

Os membros mais ativos do website MQL5.community ganharam iPhones!

Após termos decidido premiar os participantes mais proeminentes do website MQL5.com, selecionamos os critérios-chave para determinar a contribuição de cada participante para o desenvolvimento da comunidade. Como resultado, temos os seguintes vencedores que publicaram a maior quantidade de artigos no website - investeo (11 artigos) e victorg (10 artigos), e os que enviaram os seus programas à Base de códigos – GODZILLA (340 programas), Integer (61 programas) e abolk (21 programas).
Construindo um Analisador de Espectro
Construindo um Analisador de Espectro

Construindo um Analisador de Espectro

Este artigo é destinado a familiarizar seus leitores com uma possível variável de uso de objetos gráficos da linguagem MQL5. Ele analisa um indicador que implementa um painel de gerenciamento de um simples analisador de espectro usando objetos gráficos. O artigo é destinado para leitores familiarizados com o básico do MQL5.
Como Adicionar Novas Linguagens de IU na Plataforma MetaTrader 5
Como Adicionar Novas Linguagens de IU na Plataforma MetaTrader 5

Como Adicionar Novas Linguagens de IU na Plataforma MetaTrader 5

A interface do usuário da plataforma MetaTrader 5 é traduzido em vários idiomas. Não se preocupe se a sua língua materna não está entre as suportados. Você pode facilmente completar a tradução usando o utilitário especial MetaTrader MultiLanguage Pack, oferecido pela MetaQuotes Corp. gratuitamente para todos os clientes. Neste artigo mostraremos alguns exemplos de como adicionar linguagens de interface de usuário para a plataforma do MetaTrader 5.
Utilitário para seleção e navegação em MQL5 e MQL4: aumentamos a informatividade de gráficos
Utilitário para seleção e navegação em MQL5 e MQL4: aumentamos a informatividade de gráficos

Utilitário para seleção e navegação em MQL5 e MQL4: aumentamos a informatividade de gráficos

Neste artigo, continuaremos a expandir a funcionalidade do nosso utilitário. Desta vez, adicionaremos a possibilidade de exibir informações em gráficos projetados para facilitar nossa negociação. Em particular, adicionaremos ao gráfico os preços máximo e mínimo do dia anterior, os níveis arredondados, os preços máximo e mínimo do ano, a hora de início da sessão, etc.
Linguagem MQL como um meio de marcação da interface gráfica de programas MQL. Parte II
Linguagem MQL como um meio de marcação da interface gráfica de programas MQL. Parte II

Linguagem MQL como um meio de marcação da interface gráfica de programas MQL. Parte II

Neste artigo continuaremos testando um novo conceito, em particular a descrição da interface de programas MQL usando as construções da linguagem MQL. A criação automática de GUIs com base no layout MQL fornece funcionalidade adicional para armazenamento em cache e geração dinâmica de elementos, gerenciamento de estilos e novos esquemas de manipulação de eventos. Incluímos uma versão aprimorada da biblioteca de controles padrão.
Interfaces Gráficas VI: Os Controles Caixa de Seleção, Campo de Edição e seus Tipos Combinados (Capítulo 1)
Interfaces Gráficas VI: Os Controles Caixa de Seleção, Campo de Edição e seus Tipos Combinados (Capítulo 1)

Interfaces Gráficas VI: Os Controles Caixa de Seleção, Campo de Edição e seus Tipos Combinados (Capítulo 1)

Este artigo é o começo da sexta parte da série dedicada ao desenvolvimento da biblioteca para a criação de interfaces gráficas nos terminais MetaTrader. No primeiro capítulo, nós vamos discutir o controle caixa de seleção, o controle campo de edição e seus tipos combinados.
Criando um jogo de "Snake" no MQL5
Criando um jogo de "Snake" no MQL5

Criando um jogo de "Snake" no MQL5

Este artigo descreve um exemplo da programação do jogo "Snake". No MQL5, a programação do jogo tornou-se possível principalmente por causa dos recursos de manuseio de evento. A programação orientada a objeto simplifica em muito este processo. Neste artigo, você aprenderá os recursos de processamento de eventos, os exemplos de uso de classes da Biblioteca MQL5 Padrão e detalhes das chamadas de função periódica.
Widgets de sinais de negociação para MetaTrader 4 e MetaTrader 5
Widgets de sinais de negociação para MetaTrader 4 e MetaTrader 5

Widgets de sinais de negociação para MetaTrader 4 e MetaTrader 5

Recentemente, o usuário do MetaTrader 4 e MetaTrader 5 recebeu uma oportunidade de tornar-se um provedor de sinais e receber lucros adicionais. Agora, você pode exibir os seus sucessos de negociação em seu website, blog ou página de rede social utilizando os novos widgets. Os benefícios do uso de widgets são óbvios: eles aumentam a popularidade do provedor de sinais, estabelecem a reputação deles como negociadores de sucesso bem como atraem novos assinantes. Todos os negociadores que colocam os widgets em outros websites podem desfrutar desses benefícios.
preview
Redes Neurais de Maneira Fácil (Parte 12): Dropout

Redes Neurais de Maneira Fácil (Parte 12): Dropout

Como a próxima etapa no estudo das redes neurais, eu sugiro considerar os métodos de aumentar a convergência durante o treinamento da rede neural. Existem vários desses métodos. Neste artigo, nós consideraremos um deles intitulado Dropout.
Expert Advisor multiplataforma: reutilização de componentes a partir da Biblioteca padrão MQL5
Expert Advisor multiplataforma: reutilização de componentes a partir da Biblioteca padrão MQL5

Expert Advisor multiplataforma: reutilização de componentes a partir da Biblioteca padrão MQL5

Na biblioteca padrão MQL5, existem alguns componentes que podem ser úteis em versões de EAs MQL4 multiplataforma. Este artigo descreve um método para a criação de alguns componentes da biblioteca padrão MQL5 compatíveis com o compilador MQL4.
Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II
Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II

Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II

Continuamos a testar padrões e métodos descritos nos artigos sobre negociação de cestas de pares de moedas. Consideraremos, na prática, se é possível usar os padrões de cruzamento entre o gráfico do WPR combinado e o da média móvel.
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXV): processamento de erros retornados pelo servidor de negociação
Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXV): processamento de erros retornados pelo servidor de negociação

Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXV): processamento de erros retornados pelo servidor de negociação

Depois de enviarmos uma ordem de negociação para o servidor, não devemos assumir que o trabalho está concluído, uma vez que é necessário verificar quer os códigos de erro quer a ausência de erros. No artigo, veremos o processamento de erros retornados pelo servidor de negociação e prepararemos a base para a criação de ordens de negociação pendentes.
Algoritmo auto-adaptável (Parte III): evitando a otimização
Algoritmo auto-adaptável (Parte III): evitando a otimização

Algoritmo auto-adaptável (Parte III): evitando a otimização

É impossível obter um algoritmo verdadeiramente estável se para a seleção de parâmetros com base em dados históricos for usada uma otimização. Um algoritmo estável em si deve saber que parâmetros são necessários para trabalhar com qualquer instrumento de negociação a qualquer momento. Ele não deve adivinhar, ele deve saber com certeza.
Conectando NeuroSolutions Neuronets
Conectando NeuroSolutions Neuronets

Conectando NeuroSolutions Neuronets

Além da criação de neuronets, o suite de software NeuroSolutions permite exportá-los como DLLs. Este artigo descreve o processo de criação de um neuronet, gerando um DLL e conectando-o a um Expert Advisor para negociação no MetaTrader 5.
Guia prático do MQL5: Reduzindo o efeito de sobreajuste e lidando com a falta de cotações
Guia prático do MQL5: Reduzindo o efeito de sobreajuste e lidando com a falta de cotações

Guia prático do MQL5: Reduzindo o efeito de sobreajuste e lidando com a falta de cotações

Seja qual for a estratégia de negociação que você usa, sempre haverá uma questão de quais parâmetros escolher para garantir lucros futuros. Este artigo fornece um exemplo de um Expert Advisor com a possibilidade de otimizar vários parâmetros símbolos ao mesmo tempo. Esse método destina-se a reduzir o efeito dos parâmetros de sobreajuste e a lidar com situações em que os dados a partir de um único símbolo não são suficientes para o estudo.
Trabalhando com séries temporais na biblioteca DoEasy (Parte 46): buffers de indicador multiperíodos multissímbolos
Trabalhando com séries temporais na biblioteca DoEasy (Parte 46): buffers de indicador multiperíodos multissímbolos

Trabalhando com séries temporais na biblioteca DoEasy (Parte 46): buffers de indicador multiperíodos multissímbolos

No artigo acaberemos de modificar as classes-objetos de buffers de indicador para trabalhar no modo multissímbolo. Dessa maneira, teremos tudo pronto para criar indicadores multissímbolos multiperíodos em nossos programas. Adicionaremos a funcionalidade que falta aos objetos dos buffers calculados, o que nos permitirá criar indicadores multissímbolos e multiperíodos padrão.
Filtragem de Sinais com Base em Dados Estatísticos de Correlação de Preço
Filtragem de Sinais com Base em Dados Estatísticos de Correlação de Preço

Filtragem de Sinais com Base em Dados Estatísticos de Correlação de Preço

Existe alguma correlação entre o comportamento do preço passado e suas futuras tendências? Por que o preço repete hoje a característica de seu movimento do dia anterior? A estatística pode ser usada para prever a dinâmica de preço? Existe uma resposta, e é positiva. Se tiver alguma dúvida, então, este artigo é para você. Vou lhe dizer como criar um filtro de trabalho para um sistema de negócio no MQL5, revelando um padrão interessante nas mudanças de preço.
preview
Quase-construtor para criar um Expert Advisor

Quase-construtor para criar um Expert Advisor

Disponibilizo meu próprio conjunto de funções de negociação na forma de um Expert Advisor pronto para uso. O método agora proposto permite gerar diversas estratégias de negociação simplesmente adicionando indicadores e mudando os parâmetros de entrada.
Uma abordagem científica para o desenvolvimento de algoritmos de negociação
Uma abordagem científica para o desenvolvimento de algoritmos de negociação

Uma abordagem científica para o desenvolvimento de algoritmos de negociação

O artigo considera a metodologia para o desenvolvimento de algoritmos de negociação, na qual uma abordagem científica consistente é usada para analisar os possíveis padrões de preços e para construir algoritmos de negociação com base nesses padrões. Os ideais de desenvolvimento são demonstrados por meio de exemplos.
Interfaces Gráficas X: O Controle Gráfico Padrão (build 4)
Interfaces Gráficas X: O Controle Gráfico Padrão (build 4)

Interfaces Gráficas X: O Controle Gráfico Padrão (build 4)

Desta vez, nós vamos discutir o controle gráfico padrão. Ele permitirá criar arrays de objetos gráficos com a possibilidade de sincronizar o deslocamento horizontal. Além disso, nós continuaremos a otimizar o código da biblioteca para reduzir o consumo de recursos do CPU.
Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast (Build 2)
Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast (Build 2)

Interfaces gráficas X: Atualizações para a Biblioteca Easy And Fast (Build 2)

Desde a publicação do artigo anterior da série, a biblioteca Easy And Fast tem recebido algumas funcionalidades novas. A estrutura e o código da biblioteca foram parcialmente otimizados, reduzindo ligeiramente a carga da CPU. Alguns métodos recorrentes em muitas classes de controle foram transferidos para a classe base CElement.
Como se tornar um bom programador (Parte 4): agilizando a velocidade de programação
Como se tornar um bom programador (Parte 4): agilizando a velocidade de programação

Como se tornar um bom programador (Parte 4): agilizando a velocidade de programação

Suponho que todo desenvolvedor quer escrever código mais rapidamente. Porém, a habilidade de escrever código de forma rápida e produtiva não é uma característica inata que apenas uns poucos trazem consigo. Trata-se de uma habilidade que qualquer programador pode desenvolver, independentemente da experiência prévia ou da quantidade de texto digitado com o teclado.
preview
Indicadores múltiplos em um gráfico (Parte 05): Transformando o MetaTrader 5 em um sistema RAD (I)

Indicadores múltiplos em um gráfico (Parte 05): Transformando o MetaTrader 5 em um sistema RAD (I)

Muita gente não sabe de fato como programar, mas são bem criativas, tendo excelentes ideias, mas a falta de conhecimento ou entendimento sobre programação as proíbe de fazer algumas coisas. Aprenda com criar um Chart Trade, mas usando a própria plataforma MT5, como se fosse uma IDE.
preview
Força bruta para encontrar padrões (Parte II): Imersão

Força bruta para encontrar padrões (Parte II): Imersão

Neste artigo, continuarei o tópico sobre força bruta. Tentarei apresentar melhor os padrões com ajuda de uma nova versão melhorada do meu programa e me esforçarei para encontrar a diferença a nível de estabilidade usando diferentes períodos gráficos.