Artigos sobre programação nas linguagens MQL4 e MQL5

icon

Leia os artigos publicados aqui para aprender MQL5, a linguagem das estratégias de negociação. A maioria desses artigos foi escrita por vocês, membros da MQL5.community. Todos eles estão divididos em categorias para encontrar respostas rápidas relacionadas a aspectos específicos da programação: "Integração", "Testador", "Estratégias de negociação" e muito mais.

Acompanhe as novas publicações e participe de suas discussões no Fórum!

Novo artigo
recentes | melhores
preview
Desenvolvimento de ferramentas para análise do movimento de preços (Parte 2): Script de comentários analíticos

Desenvolvimento de ferramentas para análise do movimento de preços (Parte 2): Script de comentários analíticos

Dando continuidade ao nosso trabalho para simplificar a interação com o comportamento do preço, temos o prazer de apresentar mais uma ferramenta que pode melhorar significativamente sua análise de mercado e ajudar na tomada de decisões bem fundamentadas. Esta ferramenta exibe indicadores técnicos importantes, como os preços do dia anterior, níveis significativos de suporte e resistência, além do volume de negociação, gerando automaticamente dicas visuais no gráfico.
preview
Ciência de dados e aprendizado de máquina (Parte 32): Como manter a relevância de modelos de IA com treinamento on-line

Ciência de dados e aprendizado de máquina (Parte 32): Como manter a relevância de modelos de IA com treinamento on-line

No mundo em constante transformação do trading, adaptar-se às mudanças do mercado é simplesmente uma necessidade. Todos os dias surgem novos padrões e tendências, o que torna difícil até mesmo para os modelos mais avançados de aprendizado de máquina manterem sua eficácia diante de condições em mutação. Neste artigo, vamos falar sobre como manter os modelos relevantes e capazes de reagir a novos dados de mercado por meio de reeducação automática.
preview
Automatização de estratégias de trading com MQL5 (Parte 1): Sistema Profitunity (Trading Chaos de Bill Williams)

Automatização de estratégias de trading com MQL5 (Parte 1): Sistema Profitunity (Trading Chaos de Bill Williams)

Neste artigo exploraremos o sistema Profitunity de autoria de Bill Williams, destrinchando seus principais componentes e sua abordagem única para operar em condições caóticas de mercado. Demonstramos para o leitor a implementação da estratégia na linguagem de programação MQL5, com ênfase na automatização dos principais indicadores e sinais de entrada/saída. Finalmente, testaremos e otimizaremos a estratégia, analisando em detalhes sua eficácia em diferentes cenários de mercado.
preview
Simulação de mercado: Position View (X)

Simulação de mercado: Position View (X)

Precisamos de fato, de algum meio para conseguir lidar com os objetos gráficos que serão criados. A proposta mostrada no artigo anterior, se encaixa perfeitamente bem, em alguns cenários. No entanto, aqui, precisamos de algo um pouco mais elaborado. Isto devido a natureza do problema com que estamos lidando. Assim sendo, não tentaremos de maneira alguma substituir os mecanismos que estão presentes no MetaTrader 5. Isto para conseguir lidar com o ZOrder, além é claro, verificar qual objeto está em primeiro plano ou encoberto por outro objeto. Vamos fazer algo completamente diferente. Aqui vou mostrar quais as modificações que precisam ser feitas no código a fim de conseguir, tirar de alguma forma, proveito do que o MetaTrader 5, já faz para nos.
preview
Do básico ao intermediário: Filas, Listas e Árvores (II)

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

Este é um artigo do qual você meu caro leitor, deverá estudar com muita calma. Isto devido ao tipo de coisa que será explicado nele. Apesar de termos procurando manter as coisas o mais simples e didáticas quanto foi possível ser feito. O conteúdo apresentado aqui, é sem sobra de dúvida algo muito complicado para quem está iniciando na programação. Mas isto não é motivo para que você venha a desanimar ou ignorar o que está sendo explicado aqui. Já que este artigo fará um elo, entre dois assuntos completamente diferentes, porém intimamente ligados.
preview
Observador Connexus (Parte 8): Adicionando Request Observer (Observador de requisições)

Observador Connexus (Parte 8): Adicionando Request Observer (Observador de requisições)

Nesta parte final da nossa série sobre a biblioteca Connexus, analisamos a implementação do padrão Observador, além dos principais refatoramentos nos caminhos dos arquivos e nomes dos métodos. Esta série apresenta todo o desenvolvimento do Connexus, criado para simplificar a interação HTTP em aplicativos complexos.
preview
Migrando para o MQL5 Algo Forge (Parte 2): Trabalhando com múltiplos repositórios

Migrando para o MQL5 Algo Forge (Parte 2): Trabalhando com múltiplos repositórios

Vamos analisar uma das possíveis abordagens para organizar o armazenamento do código-fonte de um projeto em um repositório público. Utilizando a distribuição em diferentes branches, criaremos regras claras e práticas para o desenvolvimento do projeto.
preview
Técnicas do Assistente MQL5 que você deve conhecer (Parte 46): Ichimoku

Técnicas do Assistente MQL5 que você deve conhecer (Parte 46): Ichimoku

O Ichimuko Kinko Hyo é um renomado indicador japonês que serve como um sistema de identificação de tendência. Examinamos isso, padrão por padrão, como foi o caso em artigos semelhantes anteriores, e também avaliamos suas estratégias e relatórios de teste com a ajuda das classes e montagem da biblioteca wizard do MQL5.
preview
Recursos do Assistente MQL5 que você precisa conhecer (Parte 47): Aprendizado por reforço (algoritmo de diferenças temporais)

Recursos do Assistente MQL5 que você precisa conhecer (Parte 47): Aprendizado por reforço (algoritmo de diferenças temporais)

Temporal Difference (TD, diferenças temporais) é mais um algoritmo de aprendizado por reforço, que atualiza os valores Q com base na diferença entre as recompensas previstas e as recompensas reais durante o treinamento do agente. A ênfase está na atualização dos valores Q sem considerar necessariamente seus pares "estado-ação" (state-action). Como de costume, veremos como esse algoritmo pode ser aplicado em um EA, criado com a ajuda do Assistente.
preview
Migrando para o MQL5 Algo Forge (Parte 1): Criando o repositório principal

Migrando para o MQL5 Algo Forge (Parte 1): Criando o repositório principal

Ao trabalharem em projetos no MetaEditor, os desenvolvedores se deparam com a necessidade de gerenciar versões do código. Apesar dos planos de migração para o Git e do lançamento do MQL5 Algo Forge, a integração ainda não foi concluída. Este artigo discute maneiras de tornar o trabalho com as ferramentas atuais mais prático.
preview
Seleção de características passo a passo em MQL5

Seleção de características passo a passo em MQL5

Neste artigo, apresentamos uma versão modificada da seleção de características passo a passo, implementada em MQL5. Essa abordagem é baseada nas técnicas descritas em Modern Data Mining Algorithms in C++ and CUDA C de Timothy Masters.
preview
Reimaginando Estratégias Clássicas (Parte XI): Cruzamento de Médias Móveis (II)

Reimaginando Estratégias Clássicas (Parte XI): Cruzamento de Médias Móveis (II)

As médias móveis e o oscilador estocástico podem ser usados para gerar sinais de negociação de tendência. No entanto, esses sinais só serão observados após a ação do preço ter ocorrido. Podemos superar efetivamente essa defasagem inerente dos indicadores técnicos usando IA. Este artigo ensinará como criar um Expert Advisor totalmente autônomo com IA, de forma a melhorar qualquer uma de suas estratégias de negociação existentes. Até mesmo a estratégia de negociação mais antiga possível pode ser aprimorada.
preview
Engenharia de Recursos com Python e MQL5 (Parte II): Ângulo de Preço

Engenharia de Recursos com Python e MQL5 (Parte II): Ângulo de Preço

Existem muitas postagens no Fórum MQL5 pedindo ajuda para calcular a inclinação das mudanças de preço. Este artigo demonstrará uma forma possível de calcular o ângulo formado pelas variações de preço em qualquer mercado que você deseje negociar. Além disso, responderemos se desenvolver esse novo recurso vale o esforço e o tempo adicionais investidos. Vamos explorar se a inclinação do preço pode melhorar a precisão de algum dos nossos modelos de IA ao prever o par USDZAR no M1.
preview
Negociação de notícias facilitada (parte 5): realizando negociações (II)

Negociação de notícias facilitada (parte 5): realizando negociações (II)

Este artigo expandirá a classe de gerenciamento de trades para incluir ordens buy-stop e sell-stop para operar em eventos de notícias e implementará uma restrição de expiração nessas ordens para evitar qualquer negociação durante a noite. Uma função de slippage será incorporada ao expert para tentar prevenir ou minimizar possíveis deslizes que podem ocorrer ao usar ordens stop no trading, especialmente durante eventos de notícias.
preview
Simulação de mercado: Position View (IX)

Simulação de mercado: Position View (IX)

Neste artigo, que será um artigo divisor de águas. Vamos começar a explorar de maneira um pouco mais profunda a interação entre as aplicações que estão sendo desenvolvidas para dar suporte total ao sistema de replay/simulação. Aqui vamos analisar um problema. Este tem de um lado, algo bastante chato, mas de outro algo muito interessante de explicar como resolver. E o problema é: Como fazer para adicionar as linhas de take profit e stop loss, depois que elas foram removidas? Isto sem usar o terminal, mas sim fazendo a operação direto no gráfico. Bem isto de fato é algo, a primeira vista simples. Porém existem alguns percalços a serem superados.
preview
Do básico ao intermediário: Filas, Listas e Árvores (I)

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

Neste artigo começaremos a explorar uma pequena série de conceitos, que é de suma importância para quem realmente deseja aprender a programar da maneira correta. Com se trata de algo que a principio pode ser muito complicado. Apesar de usar coisas simples. Iremos ver isto aos poucos. Então aqui iremos começar a ver o que seria filas de dados.
preview
Análise de Múltiplos Símbolos com Python e MQL5 (Parte II): Análise de Componentes Principais para Otimização de Portfólio

Análise de Múltiplos Símbolos com Python e MQL5 (Parte II): Análise de Componentes Principais para Otimização de Portfólio

Gerenciar o risco da conta de negociação é um desafio para todos os traders. Como podemos desenvolver aplicações de trading que aprendam dinamicamente modos de risco alto, médio e baixo para vários símbolos no MetaTrader 5? Usando PCA, ganhamos mais controle sobre a variância do portfólio. Vou demonstrar como criar aplicações que aprendem esses três modos de risco a partir de dados de mercado obtidos do MetaTrader 5.
preview
Expert Advisor Auto-Otimizável com MQL5 e Python (Parte VI): Aproveitando o Deep Double Descent

Expert Advisor Auto-Otimizável com MQL5 e Python (Parte VI): Aproveitando o Deep Double Descent

O aprendizado de máquina tradicional ensina os praticantes a serem vigilantes para não superajustar (overfitting) seus modelos. No entanto, essa ideologia está sendo desafiada por novas descobertas publicadas por pesquisadores diligentes de Harvard, que identificaram que o que parece ser overfitting pode, em certas circunstâncias, ser resultado de encerrar prematuramente os procedimentos de treinamento. Demonstramos como podemos usar as ideias publicadas no artigo de pesquisa para melhorar nosso uso de IA na previsão de retornos de mercado.
preview
Engenharia de Features com Python e MQL5 (Parte I): Previsão de Médias Móveis para Modelos de IA de Longo Alcance

Engenharia de Features com Python e MQL5 (Parte I): Previsão de Médias Móveis para Modelos de IA de Longo Alcance

As médias móveis são, de longe, os melhores indicadores para nossos modelos de IA preverem. No entanto, podemos melhorar ainda mais nossa precisão transformando cuidadosamente nossos dados. Este artigo demonstrará como você pode construir Modelos de IA capazes de prever mais longe no futuro do que você talvez pratique atualmente, sem quedas significativas nos níveis de precisão. É realmente notável como as médias móveis são úteis.
preview
Criação de uma estratégia de retorno à média com base em aprendizado de máquina

Criação de uma estratégia de retorno à média com base em aprendizado de máquina

Neste artigo, é proposto um novo método para criar sistemas de trading baseados em aprendizado de máquina, utilizando clusterização e anotação de trades para estratégias de retorno à média.
preview
Algoritmo de Otimização de Bilhar — Billiards Optimization Algorithm (BOA)

Algoritmo de Otimização de Bilhar — Billiards Optimization Algorithm (BOA)

Inspirado no jogo clássico de bilhar, o método BOA modela o processo de busca por soluções ótimas como uma partida em que as bolas tentam cair nas caçapas, que simbolizam os melhores resultados. Neste artigo, analisaremos os fundamentos do funcionamento do BOA, seu modelo matemático e sua eficácia na resolução de diferentes problemas de otimização.
preview
Redes neurais em trading: Integração da teoria do caos na previsão de séries temporais (Attraos)

Redes neurais em trading: Integração da teoria do caos na previsão de séries temporais (Attraos)

O Attraos é um framework que integra a teoria do caos à previsão de séries temporais de longo prazo, tratando-as como projeções de sistemas dinâmicos caóticos multidimensionais. Por meio da invariância do atrator, o modelo aplica a reconstrução do espaço de fases e a memória dinâmica com múltiplas resoluções para preservar estruturas históricas.
preview
Solicitação no Connexus (Parte 6): Criando uma Requisição e Resposta HTTP

Solicitação no Connexus (Parte 6): Criando uma Requisição e Resposta HTTP

Neste sexto artigo da série da biblioteca Connexus, focamos em uma requisição HTTP completa, cobrindo cada componente que compõe uma requisição. Criamos uma classe que representa a requisição como um todo, o que nos ajudou a reunir as classes criadas anteriormente.
preview
Desenvolvendo um EA multimoeda (Parte 24): Conectando uma nova estratégia (I)

Desenvolvendo um EA multimoeda (Parte 24): Conectando uma nova estratégia (I)

Neste artigo, vamos analisar como conectar uma nova estratégia ao sistema de otimização automática criado. Vamos ver quais EAs precisaremos criar e se será possível evitar alterações nos arquivos da biblioteca Advisor, ou pelo menos reduzi-las ao mínimo.
preview
Otimização com Jogo do Caos — Chaos Game Optimization (CGO)

Otimização com Jogo do Caos — Chaos Game Optimization (CGO)

Apresentamos o novo algoritmo meta-heurístico Chaos Game Optimization (CGO), que demonstra capacidade única de manter alta eficiência em tarefas de grande dimensionalidade. Ao contrário da maioria dos algoritmos de otimização, o CGO não apenas não perde desempenho, como também às vezes melhora sua performance quando a complexidade do problema aumenta, o que constitui sua principal característica.
preview
Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 1): Projetor de Gráficos

Desenvolvimento do Kit de Ferramentas de Análise de Price Action (Parte 1): Projetor de Gráficos

Este projeto tem como objetivo aproveitar o algoritmo MQL5 para desenvolver um conjunto abrangente de ferramentas de análise para o MetaTrader 5. Essas ferramentas — que vão desde scripts e indicadores até modelos de IA e expert advisors — irão automatizar o processo de análise de mercado. Em alguns momentos, esse desenvolvimento gerará ferramentas capazes de realizar análises avançadas sem intervenção humana e prever resultados em plataformas apropriadas. Nenhuma oportunidade será perdida. Junte-se a mim enquanto exploramos o processo de construção de um conjunto robusto de ferramentas personalizadas de análise de mercado. Começaremos desenvolvendo um programa simples em MQL5 que chamei de Projetor de Gráficos.
preview
Simulação de mercado: Position View (VIII)

Simulação de mercado: Position View (VIII)

No artigo anterior vimos como poderíamos implementar o indicador de posição, para que pudéssemos fechar uma posição aberta diretamente via gráfico. Isto interagindo com um objeto que estaria a nossa disposição no gráfico. Depois que o primeiro mecanismo estava concluído e funcionando. Começamos a fazer algumas modificações para que também fosse possível remover as linhas de take profit e stop loss. Isto de uma posição que estivesse aberta. Porém como as mudanças a serem feitas precisariam de uma explicação adequada. Naquele mesmo artigo, apenas mostrei as mudanças que deveriam ocorrer no âmbito do Expert Advisor. Sendo necessário mostrar ainda as mudanças que deveriam ocorrer no Indicador de posição.
preview
Do básico ao intermediário: Como bolhas de sabão

Do básico ao intermediário: Como bolhas de sabão

Neste artigo, será explicado um mecanismo muito simples e fácil de entender, cujo proposito seria o de gerar a ordenação de uma array, qualquer. Nele veremos que nem sempre o resultado apresentado é aquele que realmente esperamos obter. Sendo assim necessário adaptar a própria implementação a fim de conseguir obter os resultados adequado.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 45): Aprendizado por Reforço com Monte-Carlo

Técnicas do MQL5 Wizard que você deve conhecer (Parte 45): Aprendizado por Reforço com Monte-Carlo

Monte-Carlo é o quarto algoritmo diferente em aprendizado por reforço que estamos considerando com o objetivo de explorar sua implementação em Expert Advisors montados pelo wizard. Embora ancorado em amostragem aleatória, ele apresenta vastas formas de simulação que podemos explorar.
preview
Desenvolvendo Sistemas de Trading ICT Avançados: Implementando Order Blocks em um Indicador

Desenvolvendo Sistemas de Trading ICT Avançados: Implementando Order Blocks em um Indicador

Neste artigo, vamos aprender a criar um indicador que detecta, desenha e emite alertas sobre a mitigação de order blocks. Também veremos em detalhes como identificar esses blocos no gráfico, configurar alertas precisos e visualizar sua posição utilizando retângulos, para compreender melhor a ação do preço. Este indicador servirá como uma ferramenta-chave para traders que seguem os Smart Money Concepts e a metodologia do Inner Circle Trader.
preview
Redes neurais em trading:  Modelos híbridos de sequências de grafos (Conclusão)

Redes neurais em trading: Modelos híbridos de sequências de grafos (Conclusão)

Seguimos o estudo de modelos híbridos de sequências de grafos (GSM++), que integram as vantagens de diferentes arquiteturas e garantem alta precisão na análise, além de uso eficiente dos recursos computacionais. Esses modelos identificam, de maneira eficaz, padrões ocultos, reduzindo o impacto do ruído de mercado e elevando a qualidade das previsões.
preview
Indicador de avaliação da força e da fraqueza dos pares de moedas em MQL5 puro

Indicador de avaliação da força e da fraqueza dos pares de moedas em MQL5 puro

Estamos criando um indicador profissional para análise da força das moedas em MQL5. Neste guia passo a passo, você aprenderá a desenvolver uma poderosa ferramenta de trading com painel visual para o MetaTrader 5, a calcular a força das moedas em múltiplos timeframes (H1, H4 e D1), a implementar a atualização dinâmica de dados e a criar uma interface amigável para o usuário.
preview
Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 9): Consultor Especializado em Múltiplas Estratégias (II)

Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 9): Consultor Especializado em Múltiplas Estratégias (II)

O número de estratégias que podem ser integradas em um Expert Advisor é praticamente ilimitado. No entanto, cada estratégia adicional aumenta a complexidade do algoritmo. Ao incorporar múltiplas estratégias, um Expert Advisor pode se adaptar melhor às condições variáveis do mercado, potencialmente aumentando sua lucratividade. Hoje, exploraremos como implementar em MQL5 uma das estratégias mais conhecidas desenvolvidas por Richard Donchian, enquanto continuamos a aprimorar a funcionalidade do nosso Trend Constraint Expert.
preview
Gestão de capital no trading e programa de contabilidade pessoal do trader com banco de dados

Gestão de capital no trading e programa de contabilidade pessoal do trader com banco de dados

Como um trader deve gerir seu capital? Como um trader e investidor deve controlar despesas, receitas, ativos e passivos? Eu vou apresentar não apenas um programa de controle, mas sim uma ferramenta que pode se tornar seu guia financeiro confiável no turbulento mar do trading.
preview
Desenvolvendo um EA multimoeda (Parte 23): Colocando em ordem o pipeline de etapas da otimização automática de projetos (II)

Desenvolvendo um EA multimoeda (Parte 23): Colocando em ordem o pipeline de etapas da otimização automática de projetos (II)

Estamos buscando criar um sistema de otimização periódica e automática das estratégias de trading utilizadas em um único EA final. À medida que o sistema evolui, ele se torna mais complexo, sendo necessário, periodicamente, analisá-lo como um todo para identificar gargalos e soluções pouco eficientes.
preview
Redes neurais em trading: Modelos híbridos de sequências de grafos (GSM++)

Redes neurais em trading: Modelos híbridos de sequências de grafos (GSM++)

Os modelos híbridos de sequências de grafos (GSM++) unem os pontos fortes de diferentes arquiteturas, garantindo alta precisão na análise de dados e otimização do custo computacional. Esses modelos se adaptam de forma eficiente a dados de mercado dinâmicos, melhorando a representação e o processamento das informações financeiras.
preview
Otimização por herança sanguínea — Blood Inheritance Optimization (BIO)

Otimização por herança sanguínea — Blood Inheritance Optimization (BIO)

Apresento a vocês meu novo algoritmo populacional de otimização BIO (Blood Inheritance Optimization), inspirado no sistema de herança dos tipos sanguíneos humanos. Neste algoritmo, cada solução possui seu próprio "tipo sanguíneo", que define a forma de sua evolução. Assim como na natureza, o tipo sanguíneo de uma criança é herdado segundo regras específicas, no BIO as novas soluções recebem suas características através de um sistema de herança e mutações.
preview
Como começar a trabalhar com MQL5 Algo Forge

Como começar a trabalhar com MQL5 Algo Forge

Apresentamos o MQL5 Algo Forge, um portal exclusivo para desenvolvedores de algoritmos de negociação. Ele combina as funcionalidades do Git com uma interface prática para gerenciar e organizar projetos dentro do ecossistema MQL5. Aqui você pode seguir autores interessantes, criar equipes e desenvolver projetos colaborativos de algotrading.
preview
Explorando a Criptografia no MQL5: Uma Abordagem Passo a Passo

Explorando a Criptografia no MQL5: Uma Abordagem Passo a Passo

Este artigo explora a integração da criptografia dentro do MQL5, aprimorando a segurança e a funcionalidade dos algoritmos de negociação. Cobriremos os principais métodos criptográficos e sua implementação prática no trading automatizado.
preview
Análise de todas as variantes do movimento do preço em um computador quântico da IBM

Análise de todas as variantes do movimento do preço em um computador quântico da IBM

Usamos o computador quântico da IBM para abrir todos os cenários possíveis de movimento do preço. Parece ficção científica? Bem-vindo ao mundo dos cálculos quânticos aplicados ao trading!