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
Do básico ao intermediário: Sobrecarga de operadores (V)

Do básico ao intermediário: Sobrecarga de operadores (V)

Neste artigo iremos ver como podemos manipular um código a fim de implementar algo completamente diferente daquilo que muitos acreditam ser possível ser feito no MQL5. Uma observação importante: Para entender de maneira adequada o que será visto aqui, é necessário que os conceitos vistos nos artigos anteriores tenham sido devidamente compreendidos.
preview
Previsão no trading e modelos Grey

Previsão no trading e modelos Grey

Este artigo aborda a aplicação de modelos Grey à previsão de séries temporais financeiras. Vamos analisar os princípios de funcionamento dos modelos Grey e as particularidades de sua aplicação a séries financeiras. Também discutiremos as vantagens e limitações do uso desses modelos em trading.
preview
Dominando Registros de Log (Parte 4): Salvando logs em arquivos

Dominando Registros de Log (Parte 4): Salvando logs em arquivos

Neste artigo, ensinarei operações básicas com arquivos e como configurar um handler flexível para personalização. Atualizaremos a classe CLogifyHandlerFile para gravar logs diretamente no arquivo. Realizaremos um teste de desempenho simulando uma estratégia no EURUSD por uma semana, gerando logs a cada tick, com um tempo total de 5 minutos e 11 segundos. O resultado será comparado em um artigo futuro, onde implementaremos um sistema de cache para melhorar o desempenho.
preview
Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (III): Módulo de Comunicação

Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (III): Módulo de Comunicação

Junte-se a nós para uma discussão aprofundada sobre os mais recentes avanços no design de interfaces em MQL5 enquanto apresentamos o Painel de Comunicações redesenhado e continuamos nossa série sobre a construção do Novo Painel de Administração utilizando princípios de modularização. Desenvolveremos a classe CommunicationsDialog passo a passo, explicando detalhadamente como herdá-la da classe Dialog. Além disso, utilizaremos arrays e a classe ListView em nosso desenvolvimento. Obtenha insights práticos para elevar suas habilidades em desenvolvimento MQL5 — leia o artigo e participe da discussão na seção de comentários!
preview
Dominando registros de log (Parte 2): Formatação dos logs

Dominando registros de log (Parte 2): Formatação dos logs

Neste artigo, estudaremos a criação e aplicação de programas de formatação para bibliotecas de logs. Examinaremos todas as etapas, desde a estrutura básica de um programa de formatação até exemplos práticos de implementação. Ao final do artigo, você terá todo o conhecimento necessário para realizar a formatação de logs dentro de uma biblioteca e entenderá como tudo funciona nos bastidores.
preview
Do iniciante ao especialista: Sistema de análise autogeométrica

Do iniciante ao especialista: Sistema de análise autogeométrica

Os padrões geométricos oferecem aos traders uma forma concisa de interpretar o movimento dos preços. Muitos analistas desenham linhas de tendência, retângulos e outras figuras manualmente e, em seguida, baseiam suas decisões de negociação nas formações que enxergam. Neste artigo, examinaremos uma alternativa automatizada: o uso de MQL5 para detectar e analisar os padrões geométricos mais populares. Vamos detalhar a metodologia, discutir os detalhes da implementação e mostrar como o reconhecimento automático de padrões pode aprimorar a compreensão do mercado pelo trader.
preview
Redes Adversariais Generativas (GANs) para Dados Sintéticos em Modelagem Financeira (Parte 2): Criação de Símbolo Sintético para Testes

Redes Adversariais Generativas (GANs) para Dados Sintéticos em Modelagem Financeira (Parte 2): Criação de Símbolo Sintético para Testes

Neste artigo, estamos criando um símbolo sintético usando uma Rede Adversarial Generativa (GAN), o que envolve a geração de dados financeiros realistas que imitam o comportamento de instrumentos reais do mercado, como o EURUSD. O modelo GAN aprende padrões e volatilidade a partir de dados históricos do mercado e cria dados de preços sintéticos com características semelhantes.
preview
Uma Nova Abordagem para Critérios Personalizados em Otimizações (Parte 1): Exemplos de Funções de Ativação

Uma Nova Abordagem para Critérios Personalizados em Otimizações (Parte 1): Exemplos de Funções de Ativação

O primeiro de uma série de artigos que analisam a matemática dos Critérios Personalizados com foco específico em funções não lineares usadas em Redes Neurais, código MQL5 para implementação e o uso de offsets direcionados e corretivos.
preview
Processos gaussianos em machine learning (Parte 1): modelo de classificação em MQL5

Processos gaussianos em machine learning (Parte 1): modelo de classificação em MQL5

Neste artigo, analisaremos o modelo de classificação com processos gaussianos. Iniciaremos com o estudo de seus princípios teóricos e, posteriormente, desenvolveremos uma biblioteca de PG em MQL5.
preview
Do básico ao intermediário: Filas, Listas e Árvores (VII)

Do básico ao intermediário: Filas, Listas e Árvores (VII)

Neste artigo, iremos demonstrar e explicar de uma maneira bastante lucida, como ocorre a remoção de um node de uma árvore. Algo que na maior parte das vezes, mais gera dúvidas e confusão na mente de iniciantes do que necessariamente os ajuda a entender como todo o processo acontece. E por que ele precisa ser feito desta ou daquela maneira.
preview
A Arte de Registrar Logs (Parte 3): Explorando os handlers para armazenamento de logs

A Arte de Registrar Logs (Parte 3): Explorando os handlers para armazenamento de logs

Neste artigo, vamos analisar a concepção dos handlers na biblioteca de registro, compreender seu funcionamento e criar três implementações iniciais: console, banco de dados e arquivo. Analisaremos tudo, desde a estrutura básica dos handlers até testes práticos, lançando assim a base para uma implementação completa no futuro.
preview
Previsão no trading e modelos Grey

Previsão no trading e modelos Grey

Este artigo aborda a aplicação de modelos Grey à previsão de séries temporais financeiras. Vamos analisar os princípios de funcionamento dos modelos Grey e as particularidades de sua aplicação a séries financeiras. Também discutiremos as vantagens e limitações do uso desses modelos em trading.
preview
Redes neurais em trading: Segmentação periódica adaptativa (Criação de tokens)

Redes neurais em trading: Segmentação periódica adaptativa (Criação de tokens)

Propomos que você embarque em uma jornada fascinante pelo mundo da análise adaptativa de séries temporais financeiras e descubra como transformar uma complexa análise espectral e uma convolução flexível em sinais reais de trading. Você verá como o LightGTS escuta o ritmo do mercado, ajustando-se às suas mudanças por meio de um passo de janela variável, e como a aceleração com OpenCL permite transformar cálculos no caminho mais curto para decisões lucrativas.
preview
Do básico ao intermediário: Sobrecarga de operadores (II)

Do básico ao intermediário: Sobrecarga de operadores (II)

Este será um artigo que a principio irá parecer bem confuso devido ao que será mostrado nele. Porém tentei deixar as coisas o mais simples e didáticas quanto foi possível ser feito. Espero que você consiga compreender o que estará sendo demonstrando neste artigo. E que isto venha a lhe ser útil em algum momento.
preview
Rede neural na prática: Perceptron

Rede neural na prática: Perceptron

Este artigo apresenta o perceptron como base de uma rede neural e detalha sua implementação em MQL5. Explicamos funções de ativação e suas derivadas, a distinção entre forward e backpropagation e o uso de custo por mínimo quadrado e por gradiente. Você aprenderá a treinar pesos e viés, validar com scripts de teste e ajustar a taxa de aprendizagem para obter convergência estável.
preview
Dominando Registros de Log (Parte 5): Otimizando o Handler com Cache e Rotação

Dominando Registros de Log (Parte 5): Otimizando o Handler com Cache e Rotação

Este artigo aprimora a biblioteca de logging adicionando formatadores nos handlers, a classe CIntervalWatcher para gerenciar ciclos de execução, otimização com cache e rotação de arquivos, testes de desempenho e exemplos práticos. Com essas melhorias, garantimos um sistema de logging eficiente, escalável e adaptável a diferentes cenários de desenvolvimento.
preview
Automatizando Estratégias de Trading em MQL5 (Parte 12): Implementação da Estratégia Mitigation Order Blocks (MOB)

Automatizando Estratégias de Trading em MQL5 (Parte 12): Implementação da Estratégia Mitigation Order Blocks (MOB)

Neste artigo, construímos um sistema de trading em MQL5 que automatiza a detecção de order blocks para trading Smart Money. Descrevemos as regras da estratégia, implementamos a lógica em MQL5 e integramos o gerenciamento de risco para uma execução eficaz das operações. Por fim, realizamos o backtest do sistema para avaliar seu desempenho e refiná-lo para obter resultados ideais.
preview
Envio de mensagens de MQL5 para o Discord, criação de um bot Discord-MetaTrader 5

Envio de mensagens de MQL5 para o Discord, criação de um bot Discord-MetaTrader 5

Assim como o Telegram, o Discord é capaz de receber informações e mensagens em formato JSON usando suas APIs de comunicação. Neste artigo, veremos como usar a API do Discord para enviar sinais de trading e atualizações do MetaTrader 5 para sua comunidade de trading no Discord.
preview
MQL5 Wizard: Técnicas que Você Deve Conhecer (Parte 57): Aprendizado Supervisionado com Média Móvel e Oscilador Estocástico

MQL5 Wizard: Técnicas que Você Deve Conhecer (Parte 57): Aprendizado Supervisionado com Média Móvel e Oscilador Estocástico

A Média Móvel e o Oscilador Estocástico são indicadores muito comuns que alguns traders podem não usar com frequência devido devido à sua natureza defasada. Em uma “minissérie” de 3 partes que considera as 3 principais formas de aprendizado de máquina, buscamos verificar se esse viés contra esses indicadores é justificado ou se eles podem estar mantendo alguma vantagem. Realizamos nossa análise em Expert Advisors montados pelo wizard.
preview
Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (VI): Estratégia de trading pós-notícia

Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (VI): Estratégia de trading pós-notícia

Durante o primeiro minuto após a divulgação de notícias econômicas importantes, o risco de erro de avaliação é extremamente alto. Nesse curto intervalo, o movimento do preço pode ser errático e volátil, frequentemente levando ao acionamento de ordens pendentes dos dois lados do mercado. Pouco depois da publicação, geralmente dentro de um minuto, o mercado tende a se estabilizar, retomando ou corrigindo a tendência predominante em patamares mais normais de volatilidade. Nesta seção, examinaremos uma abordagem alternativa para o trading baseado em notícias, a fim de avaliar sua eficácia como um complemento valioso ao conjunto de ferramentas do trader. Continue lendo para acompanhar mais detalhes desta discussão.
preview
Do básico ao intermediário: Objetos e sub janelas (II)

Do básico ao intermediário: Objetos e sub janelas (II)

Este artigo explica como capturar e tratar a remoção de objetos do gráfico em MQL5 usando eventos do MetaTrader 5. Ao detectar a exclusão de um objeto criado pelo indicador, o código remove a instância correspondente para evitar inconsistências e sub janelas remanescentes. A abordagem adota nomes únicos e um arquivo de cabeçalho, priorizando simplicidade e previsibilidade do comportamento.
preview
Componentes View e Controller para tabelas no paradigma MVC em MQL5: dimensões ajustáveis dos elementos

Componentes View e Controller para tabelas no paradigma MVC em MQL5: dimensões ajustáveis dos elementos

No artigo, adicionaremos a funcionalidade de redimensionamento dos elementos de controle por meio do arrasto das bordas e dos cantos do elemento com o mouse.
preview
Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (VI): estratégia de ordens pendentes para trading baseado em notícias

Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (VI): estratégia de ordens pendentes para trading baseado em notícias

Neste artigo, vamos nos concentrar na integração da lógica de execução de ordens baseada em notícias, permitindo que o EA atue, e não apenas informe. Acompanhe-nos enquanto examinamos como implementar a execução automática de operações em MQL5 e transformar o EA "Manchetes de notícias" em um sistema de trading totalmente adaptativo. Os EAs oferecem vantagens significativas aos desenvolvedores de sistemas algorítmicos graças ao amplo conjunto de funções às quais dão suporte. Até agora, nos concentramos na criação de uma ferramenta para apresentar notícias e eventos do calendário, equipada com faixas analíticas integradas usando IA e indicadores técnicos.
preview
Redes neurais em trading: Desvendando os componentes estruturais (Encoder)

Redes neurais em trading: Desvendando os componentes estruturais (Encoder)

Propomos dar continuação à implementação do framework SCNN, que combina flexibilidade e interpretabilidade, permitindo isolar com precisão os componentes estruturais da série temporal. O artigo detalha os mecanismos de normalização adaptativa e de atenção, o que confere ao modelo maior robustez diante de condições de mercado em constante mudança.
preview
Explorando Técnicas Avançadas de Aprendizado de Máquina na Estratégia de Rompimento da Caixa de Darvas

Explorando Técnicas Avançadas de Aprendizado de Máquina na Estratégia de Rompimento da Caixa de Darvas

A estratégia de rompimento da Caixa de Darvas, criada por Nicolas Darvas, é uma abordagem de negociação técnica que identifica potenciais sinais de compra quando o preço de uma ação sobe acima de um intervalo definido de "caixa", sugerindo forte momentum de alta. Neste artigo, aplicaremos esse conceito de estratégia como exemplo para explorar três técnicas avançadas de aprendizado de máquina. Estas incluem usar um modelo de aprendizado de máquina para gerar sinais em vez de filtrar negociações, empregar sinais contínuos em vez de discretos, e utilizar modelos treinados em diferentes períodos gráficos para confirmar negociações.
preview
Introdução ao MQL5 (Parte 14): Guia para Iniciantes na Criação de Indicadores Personalizados (III)

Introdução ao MQL5 (Parte 14): Guia para Iniciantes na Criação de Indicadores Personalizados (III)

Aprenda a construir um indicador de Padrões Harmônicos em MQL5 usando objetos de gráfico. Descubra como detectar pontos de swing, aplicar retrações de Fibonacci e automatizar o reconhecimento de padrões.
preview
Transferência de dados de ticks do MetaTrader para Python via sockets usando serviços MQL5

Transferência de dados de ticks do MetaTrader para Python via sockets usando serviços MQL5

Às vezes, nem tudo pode ser implementado em MQL5. Mesmo que seja possível converter bibliotecas modernas já disponíveis para MQL5, isso levará muito tempo. Neste artigo, tentaremos contornar a dependência do Windows com o uso de serviços MQL5, transmitindo dados de ticks (bid, ask e time) para uma aplicação Python por meio de sockets.
preview
Do iniciante ao especialista: Criando um EA animado de notícias em MQL5 (III): Análise de indicadores

Do iniciante ao especialista: Criando um EA animado de notícias em MQL5 (III): Análise de indicadores

Neste artigo, daremos continuidade à apresentação do EA "manchetes", apresentando uma faixa especial de "Análise de indicadores" (indicator insights): uma exibição compacta, no gráfico, dos principais sinais técnicos gerados por indicadores populares, como RSI, MACD, Stochastic e CCI. Essa abordagem elimina a necessidade de várias subjanelas de indicadores no terminal MetaTrader 5, mantendo sua área de trabalho limpa e eficiente. Usando a API MQL5 para acessar dados dos indicadores em segundo plano, podemos processar e visualizar informações de mercado em tempo real com lógica personalizada.
preview
Técnicas de reamostragem para avaliação de previsão e classificação em MQL5

Técnicas de reamostragem para avaliação de previsão e classificação em MQL5

Neste artigo, exploraremos e implementaremos métodos para avaliar a qualidade de modelos que utilizam um único conjunto de dados tanto para treinamento quanto para validação.
preview
Redes neurais em trading: Desvendando os componentes estruturais da série (SCNN)

Redes neurais em trading: Desvendando os componentes estruturais da série (SCNN)

Vamos conhecer o framework inovador SCNN, que leva a análise de séries temporais a um novo nível ao separar claramente os dados em componentes de longo prazo, sazonais, de curto prazo e residuais. Essa abordagem aumenta significativamente a precisão da previsão, permitindo que o modelo se adapte a uma dinâmica de mercado complexa e em constante mudança.
preview
Construindo Expert Advisors Autootimizáveis em MQL5 (Parte 6): Regras de Trading Autoajustáveis (II)

Construindo Expert Advisors Autootimizáveis em MQL5 (Parte 6): Regras de Trading Autoajustáveis (II)

Este artigo explora a otimização dos níveis e períodos do RSI para obter melhores sinais de trading. Introduzimos métodos para estimar valores ótimos do RSI e automatizar a seleção de períodos usando busca em grade e modelos estatísticos. Por fim, implementamos a solução em MQL5 enquanto utilizamos Python para análise. Nossa abordagem busca ser pragmática e direta para ajudá-lo a resolver problemas potencialmente complicados, com simplicidade.
preview
Implementação do circuito quântico de Quantum Reservoir Computing (QRC)

Implementação do circuito quântico de Quantum Reservoir Computing (QRC)

Trata-se de uma abordagem revolucionária do aprendizado de máquina aplicado ao trading por meio da computação quântica. O artigo descreve a aplicação prática de um sistema QRC adaptativo com ajuste contínuo incremental para prever movimentos do mercado em tempo real.
preview
MetaTrader 5 Global Optimizer: Uma Estrutura Profissional para Otimizar EAs por Grupos, Subgrupos e Critérios de Robustez

MetaTrader 5 Global Optimizer: Uma Estrutura Profissional para Otimizar EAs por Grupos, Subgrupos e Critérios de Robustez

Apresentamos uma metodologia para transformar a otimização de EAs no MetaTrader 5 em um fluxo organizado e auditável. A automação em Python cria .set e .ini, orquestra otimizações por grupos e subgrupos, compara cada etapa ao baseline e aplica rewind quando necessário. O leitor poderá escolher os melhores parâmetros considerando lucro, estabilidade, drawdown, trades, concentração de resultado e consistência em vários ativos.
preview
Redes neurais em trading: decomposição em vez de escalonamento: construção dos módulos

Redes neurais em trading: decomposição em vez de escalonamento: construção dos módulos

Neste artigo, continuamos nossa apresentação prática da SSCNN, uma solução arquitetural de nova geração capaz de trabalhar com séries temporais fragmentadas. Em vez de escalonamento cego, adotamos modularidade inteligente, atenção aos detalhes e normalização seletiva. Passo a passo, criamos blocos computacionais no ambiente MQL5 e estabelecemos a base para uma análise preditiva confiável.
preview
Superando as limitações do aprendizado de máquina (Parte 1): carência de métricas compatíveis

Superando as limitações do aprendizado de máquina (Parte 1): carência de métricas compatíveis

Neste artigo, mostramos que parte dos problemas que enfrentamos está enraizada em seguir cegamente as "melhores práticas". Ao apresentar ao leitor evidências simples, baseadas no mercado real, explicaremos por que devemos evitar esse comportamento e, em vez disso, adotar boas práticas baseadas em domínios específicos, caso nossa comunidade queira ter alguma chance de recuperar o potencial oculto da IA.
preview
Ciência de Dados e ML (Parte 35): NumPy em MQL5 – A Arte de Desenvolver Algoritmos Complexos com Menos Código

Ciência de Dados e ML (Parte 35): NumPy em MQL5 – A Arte de Desenvolver Algoritmos Complexos com Menos Código

A biblioteca NumPy está impulsionando praticamente todos os algoritmos de aprendizado de máquina (machine learning) em sua essência na linguagem de programação Python, neste artigo vamos implementar um módulo semelhante que possui uma coleção de todo o código complexo para nos auxiliar na construção de modelos e algoritmos sofisticados de qualquer tipo.
preview
Do básico ao intermediário: Arquivo template (II)

Do básico ao intermediário: Arquivo template (II)

O artigo mostra como aplicar indicadores a gráficos criados por OBJ_CHART usando templates, quando ChartIndicatorAdd não funciona nesse contexto. Explicamos como salvar um template com o indicador, recuperar o ID do gráfico e aplicar ChartApplyTemplate ao destino correto. Você aprenderá a integrar indicadores como recurso, automatizar a configuração do gráfico embutido e entender limitações práticas, como a não listagem de indicadores na janela padrão.
preview
Redes neurais em trading: decomposição em vez de escalonamento (Conclusão)

Redes neurais em trading: decomposição em vez de escalonamento (Conclusão)

Apresentamos um algoritmo que decompõe séries temporais em camadas semânticas e constrói, a partir delas, um modelo enxuto. Mostramos, passo a passo, a arquitetura, a implementação prática em MQL5/OpenCL e os resultados de testes reais com dados históricos de mercado.
preview
Do iniciante ao especialista: Criação de um EA de notícias animado em MQL5 (II)

Do iniciante ao especialista: Criação de um EA de notícias animado em MQL5 (II)

Hoje damos mais um passo à frente, integrando uma API externa de notícias como fonte de manchetes para o nosso EA "Manchetes de notícias". Nesta etapa, vamos explorar diferentes fontes de notícias, tanto já existentes quanto novas, e aprender como usar suas APIs de forma eficiente. Também veremos métodos para fazer o parsing dos dados recebidos em um formato otimizado para exibição no nosso EA. Acompanhe a discussão enquanto analisamos as vantagens de usar manchetes de notícias e o calendário econômico diretamente no gráfico. Tudo isso em uma interface compacta e discreta.