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
Explorando modelos de regressão para inferência causal e trading

Explorando modelos de regressão para inferência causal e trading

Neste artigo, foi realizado um estudo sobre a possibilidade de aplicar modelos de regressão no trading algorítmico. Os modelos de regressão, diferentemente da classificação binária, permitem criar estratégias de trading mais flexíveis por meio da avaliação quantitativa das variações de preço previstas.
preview
Redes neurais em trading: Modelo de dupla atenção para previsão de tendências

Redes neurais em trading: Modelo de dupla atenção para previsão de tendências

Damos continuidade à discussão sobre o uso da representação linear por partes de séries temporais, iniciada no artigo anterior. Hoje, falaremos sobre a combinação desse método com outras abordagens de análise de séries temporais para melhorar a qualidade da previsão das tendências dos movimentos de preços.
preview
Reimaginando Estratégias Clássicas (Parte IV): SP500 e Notas do Tesouro dos EUA

Reimaginando Estratégias Clássicas (Parte IV): SP500 e Notas do Tesouro dos EUA

Nesta série de artigos, analisamos estratégias clássicas de negociação usando algoritmos modernos para determinar se podemos melhorar a estratégia utilizando IA. No artigo de hoje, revisamos uma abordagem clássica para negociar o SP500 usando a relação que ele tem com as Notas do Tesouro dos EUA.
preview
Redes neurais em trading: Explorando a estrutura local dos dados

Redes neurais em trading: Explorando a estrutura local dos dados

A identificação eficaz e a preservação da estrutura local dos dados de mercado em meio ao ruído são tarefas cruciais no trading. Embora o uso do mecanismo Self-Attention tenha mostrado bons resultados no processamento desses dados, o método clássico não leva em conta as características locais da estrutura original. Neste artigo, proponho conhecer um algoritmo capaz de considerar essas dependências estruturais.
preview
Introdução ao MQL5 (Parte 10): Um Guia para Iniciantes sobre como Trabalhar com Indicadores Embutidos no MQL5

Introdução ao MQL5 (Parte 10): Um Guia para Iniciantes sobre como Trabalhar com Indicadores Embutidos no MQL5

Este artigo introduz o trabalho com indicadores embutidos no MQL5, com foco na criação de um Expert Advisor (EA) baseado em RSI usando uma abordagem orientada a projeto. Você aprenderá a recuperar e utilizar valores de RSI, lidar com varreduras de liquidez e aprimorar a visualização de trades usando objetos no gráfico. Além disso, o artigo enfatiza a gestão eficaz de risco, incluindo a definição de risco baseado em porcentagem, implementação de relações risco-retorno e aplicação de modificações de risco para garantir lucros.
preview
Visualização de estratégias em MQL5: distribuindo os resultados da otimização em gráficos de critérios

Visualização de estratégias em MQL5: distribuindo os resultados da otimização em gráficos de critérios

Neste artigo, escreveremos um exemplo de visualização do processo de otimização e exibiremos os três melhores passes para quatro critérios de otimização. Além disso, implementaremos a possibilidade de selecionar um dos três melhores passes para exibir seus dados em tabelas e no gráfico.
preview
Estratégia evolutiva de adaptação da matriz de covariância, Covariance Matrix Adaptation Evolution Strategy (CMA-ES)

Estratégia evolutiva de adaptação da matriz de covariância, Covariance Matrix Adaptation Evolution Strategy (CMA-ES)

Vamos explorar um dos algoritmos mais interessantes de otimização sem gradiente, que aprende a compreender a geometria da função objetivo. Consideraremos a implementação clássica do CMA-ES com uma pequena modificação, substituindo a distribuição normal por uma distribuição de potência. Uma análise detalhada da matemática do algoritmo, a implementação prática e uma avaliação honesta, onde o CMA-ES é imbatível e onde é melhor não aplicá-lo.
preview
Redes neurais de maneira fácil (Parte 77): Cross-Covariance Transformer (XCiT)

Redes neurais de maneira fácil (Parte 77): Cross-Covariance Transformer (XCiT)

Em nossos modelos, frequentemente usamos vários algoritmos de atenção. E, provavelmente, usamos Transformadores com mais frequência. A principal desvantagem deles é a exigência de recursos. Neste artigo, quero apresentar um algoritmo que ajuda a reduzir os custos computacionais sem perda de qualidade.
preview
Do básico ao intermediário: Template e Typename (III)

Do básico ao intermediário: Template e Typename (III)

Neste artigo iremos ver a primeira parte de algo que para iniciantes é muito confuso de entender. Mas para que fique devidamente explicado e assim o tema não se torne confuso, além do necessário. Irei dividir a coisa em etapas. A primeira etapa é a que estará sendo mostrada neste artigo. No entanto, apesar de no final parecer que ficamos em um beco sem saída. Não será bem isto que estará ocorrendo. Já que o próximo passo nos levará a uma outra situação em que será melhor entendida no próximo artigo.
preview
Do básico ao intermediário: Eventos (II)

Do básico ao intermediário: Eventos (II)

Neste artigo iremos ver que nem sempre precisamos implementar as coisas de uma ou de outra maneira. Existem maneiras alternativas de se fazer as coisas. Entender conceitos que foram explicados em artigos anteriores é primordial para conseguir compreender adequadamente o que será visto neste artigo. O conteúdo exposto aqui, visa e tem como objetivo, pura e simplesmente a didática. De modo algum deve ser encarado como uma aplicação final, onde o objetivo não seja o estudo dos conceitos aqui mostrados.
preview
Do básico ao intermediário: Estruturas (V)

Do básico ao intermediário: Estruturas (V)

Neste artigo veremos como é feita a sobrecarga de um código estrutural. Sei que isto, é um tanto quanto difícil de entender no começo. Principalmente se você está vendo isto pela primeira vez. Porém, é muito importante que você procure assimilar estes conceitos e entender muito bem o que se passa aqui, antes de procurar se aventurar em coisas ainda mais complicadas e elaboradas.
preview
Criação de um painel de administração de trading em MQL5 (Parte V): Autenticação de dois fatores (2FA)

Criação de um painel de administração de trading em MQL5 (Parte V): Autenticação de dois fatores (2FA)

Este artigo aborda o aumento da segurança do painel de administração de trading, atualmente em desenvolvimento. Vamos explorar como integrar o MQL5 a uma nova estratégia de segurança, utilizando a API do Telegram para autenticação de dois fatores (2FA). O artigo traz informações valiosas sobre a aplicação de MQL5 para reforçar medidas de segurança. Além disso, veremos a função MathRand, focando em sua funcionalidade e na forma como pode ser usada de forma eficiente em nosso sistema de segurança.
preview
Como construir e otimizar um sistema de trading baseado em volume (Chaikin Money Flow - CMF)

Como construir e otimizar um sistema de trading baseado em volume (Chaikin Money Flow - CMF)

Neste artigo, forneceremos um indicador baseado em volume, o Chaikin Money Flow (CMF), após identificar como ele pode ser construído, calculado e utilizado. Vamos compreender como construir um indicador personalizado. Compartilharemos algumas estratégias simples que podem ser usadas e, em seguida, as testaremos para entender qual delas é melhor.
preview
Desenvolvendo um sistema de Replay (Parte 72): Uma comunicação inusitada (I)

Desenvolvendo um sistema de Replay (Parte 72): Uma comunicação inusitada (I)

O que iremos construir será complexo de entender. Por isso, apresentarei apenas o início da construção neste artigo. Leia com calma, pois entender o conteúdo aqui é essencial para o próximo passo. O objetivo deste conteúdo é apenas didático, sem aplicação prática além do aprendizado e estudo dos conceitos apresentados.
preview
Simulação de mercado: Position View (XV)

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

Neste artigo, tentarei explicar da forma o mais simples possível como você pode fazer uso de troca de mensagens entre aplicações. Isto para que consiga de fato, desenvolver algo realmente funcional e de maneira o mais simples e eficaz quando for possível ser feito. Não sei se de fato conseguirei passar a ideia por detrás do conceito. Já que ele não é tão simples de ser entendido e compreendido por parte de quem o está vendo pela primeira vez. Aproveitando mostrarei como você pode fazer, para conseguir modificar o sistema de replay/simulador, a fim de poder depurar um Expert Advisor ou um outro código qualquer que você esteja criando. Isto de maneira igualmente simples e direta.
preview
Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 10): Golden Cross e Death Cross Estratégicos (EA)

Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 10): Golden Cross e Death Cross Estratégicos (EA)

Você sabia que as estratégias Golden Cross e Death Cross, baseadas no cruzamento de médias móveis, são alguns dos indicadores mais confiáveis para identificar tendências de mercado de longo prazo? Um Golden Cross sinaliza uma tendência de alta quando uma média móvel mais curta cruza acima de uma média mais longa, enquanto o Death Cross indica uma tendência de baixa quando a média mais curta cruza abaixo. Apesar de sua simplicidade e eficácia, aplicar essas estratégias manualmente frequentemente leva a oportunidades perdidas ou negociações atrasadas.
preview
Desenvolvimento de um Kit de Ferramentas para análise de ação de preço (Parte 17): Ferramenta TrendLoom EA

Desenvolvimento de um Kit de Ferramentas para análise de ação de preço (Parte 17): Ferramenta TrendLoom EA

Como observador e trader de análise de preços, notei que quando uma tendência é confirmada por múltiplos períodos de tempo, ela geralmente continua nessa direção. O que pode variar é quanto tempo a tendência dura, e isso depende do tipo de trader que você é, se mantém posições no longo prazo ou realiza operações de scalping. Os prazos que você escolher para a confirmação desempenham um papel crucial. Confira este artigo para conhecer um sistema rápido e automatizado que ajuda você a analisar a tendência geral em diferentes períodos com apenas um clique ou atualizações regulares.
preview
Modelo matricial de previsão baseado em cadeia de Markov

Modelo matricial de previsão baseado em cadeia de Markov

Criamos um modelo matricial de previsão baseado em uma cadeia de Markov. O que são cadeias de Markov e como uma cadeia de Markov pode ser usada para trading no Forex.
preview
Do básico ao intermediário: Template e Typename (IV)

Do básico ao intermediário: Template e Typename (IV)

Aqui neste artigo, iremos ver de forma bem didática, como resolver um problema que foi demonstrado no final do artigo anterior. Onde estaríamos tentando fazer com que um template de tipo fosse criado, a fim de que fosse possível criar um template de uma união de dados.
preview
Algoritmo de otimização Royal Flush — Royal Flush Optimization (RFO)

Algoritmo de otimização Royal Flush — Royal Flush Optimization (RFO)

O algoritmo Royal Flush Optimization, criado pelo autor, propõe uma nova forma de abordar problemas de otimização, substituindo a codificação binária clássica dos algoritmos genéticos por uma abordagem setorial, inspirada nos princípios do pôquer. O RFO demonstra como a simplificação de princípios fundamentais pode levar à criação de um método de otimização eficaz e prático. O artigo apresenta uma análise detalhada do algoritmo e os resultados dos testes realizados.
preview
Desenvolvendo um sistema de Replay (Parte 64): Dando play no serviço (V)

Desenvolvendo um sistema de Replay (Parte 64): Dando play no serviço (V)

Neste artigo irei mostrar como corrigir duas falhas que se encontram presentes no código. No entanto tais correções foram explicadas para que você, aspirante a programador, consiga entender que nem sempre as coisas irão acontecer como você havia previsto. Mas isto não é motivo para desespero e sim uma oportunidade de aprendizado. O conteúdo exposto aqui, visa e tem como objetivo, pura e simplesmente a didática. De modo algum deve ser encarado como sendo, uma aplicação cuja finalidade não venha a ser o aprendizado e estudo dos conceitos mostrados.
preview
Otimização por neuroboides — Neuroboids Optimization Algorithm (NOA)

Otimização por neuroboides — Neuroboids Optimization Algorithm (NOA)

Trata-se de uma nova metaheurística de otimização bioinspirada e autoral, denominada NOA (Neuroboids Optimization Algorithm), que combina princípios de inteligência coletiva e redes neurais. Ao contrário dos métodos clássicos, o algoritmo utiliza uma população de "neuroboides" autoaprendizes, cada um com sua própria rede neural, que adapta a estratégia de busca em tempo real. O artigo em questão apresenta a arquitetura do algoritmo, os mecanismos de autoaprendizado dos agentes e as perspectivas de aplicação dessa abordagem híbrida em tarefas complexas de otimização.
preview
Rede neural quântica em MQL5 (Parte II): Treinamos a rede neural com retropropagação do erro usando matrizes de Markov da ALGLIB

Rede neural quântica em MQL5 (Parte II): Treinamos a rede neural com retropropagação do erro usando matrizes de Markov da ALGLIB

O artigo apresenta uma arquitetura inovadora de rede neural quântica para trading algorítmico, combinando princípios da mecânica quântica com métodos modernos de machine learning. O sistema inclui efeitos quânticos (ressonância, interferência, decoerência), memória multinível em diferentes escalas temporais, cadeias de Markov com a biblioteca ALGLIB e controle adaptativo de parâmetros. A implementação completa foi feita em MQL5 usando os tipos nativos matrix/vector, o que elimina barreiras de adoção no MetaTrader 5.
preview
Redes neurais em trading: Transformer para nuvens de pontos (Pointformer)

Redes neurais em trading: Transformer para nuvens de pontos (Pointformer)

Neste artigo, falaremos sobre os algoritmos que utilizam métodos de atenção para resolver tarefas de detecção de objetos em nuvens de pontos. A detecção de objetos em nuvens de pontos é de grande importância para diversas aplicações práticas.
preview
Construção de previsões econômicas: potencialidades do Python

Construção de previsões econômicas: potencialidades do Python

Como utilizar os dados econômicos do Banco Mundial para fazer previsões? O que acontece se combinarmos modelos de IA com economia?
preview
Redes neurais em trading: Representação adaptativa de grafos (NAFS)

Redes neurais em trading: Representação adaptativa de grafos (NAFS)

Apresentamos o método NAFS (Node-Adaptive Feature Smoothing), uma abordagem não paramétrica para criar representações de nós que não requer o treinamento de parâmetros. O NAFS extrai as características de cada nó considerando seus vizinhos e, então, combina essas características de forma adaptativa para formar a representação final.
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
Desenvolvimento do Toolkit de Análise de Price Action (Parte 8): Painel de Métricas

Desenvolvimento do Toolkit de Análise de Price Action (Parte 8): Painel de Métricas

Como um dos mais poderosos toolkits de análise de Price Action, o Painel de Métricas foi projetado para otimizar a análise de mercado, fornecendo instantaneamente métricas essenciais do mercado com apenas um clique de botão. Cada botão exerce uma função específica, seja para analisar tendências de máxima/mínima, volume ou outros indicadores-chave. Esta ferramenta entrega dados precisos e em tempo real exatamente quando você mais precisa. Vamos explorar mais profundamente seus recursos neste artigo.
preview
Do básico ao intermediário: Sub Janelas (III)

Do básico ao intermediário: Sub Janelas (III)

Este texto detalha o uso de sub janelas em indicadores MQL5: criação básica, detecção de instâncias e prevenção de duplicações. Aborda INDICATOR_SHORTNAME, consulta de janelas/indicadores do gráfico e a diferença entre exibição no gráfico principal e em janela separada. Mostra ainda como definir altura e limites da sub janela para padronizar a interface e facilitar a disposição de objetos.
preview
Migrando para o MQL5 Algo Forge (Parte 4): Trabalhando com versões e lançamentos

Migrando para o MQL5 Algo Forge (Parte 4): Trabalhando com versões e lançamentos

Vamos continuar o desenvolvimento dos projetos Simple Candles e Adwizard, detalhando os aspectos do uso do sistema de controle de versão e do repositório MQL5 Algo Forge.
preview
Simulação de mercado: Position View (VII)

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

Neste artigo, começaremos a fazer algumas melhorias no indicador de posição. Isto para que seja possível interagir com ele. E modificar as linhas de preço, ou fechar uma posição diretamente via interação com o indicador de posição. Antes de realmente começarmos a parte da implementação. Vamos entender uma coisa aqui. Isto para os menos avisados. Não é possível, de maneira ou forma alguma, usar um indicador a fim de modificar algo no servidor de negociação. Isto por conta que o MetaTrader 5, conta com um sistema de segurança que permite apenas e somente aos Expert Advisores, fazerem algo em uma ordem ou posição. Nenhuma outra aplicação que não seja um Expert Advisor, conseguirá manipular ordens ou posições.
preview
Simulação de mercado: Position View (XII)

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

No artigo, você aprenderá como criar uma indicação visual na sua plataforma de trading para saber se você está em uma posição comprada ou vendida no gráfico, sem precisar acessar o terminal. Além disso, o texto aborda a implementação de uma funcionalidade que melhora a visualização ao mover linhas de take profit e stop loss, ocultando a linha de preço do mouse durante a movimentação para evitar confusões. A leitura oferece insights práticos para customizar sistemas de simulação de mercado.
preview
Do básico ao intermediário: Recursividade

Do básico ao intermediário: Recursividade

Este artigo, veremos um conceito de programação muito interessante e bem divertido. Porém que deve ser tratado com extremo respeito. Já que um mal uso, ou mal entendimento do mesmo, torna programas relativamente simples em algo desnecessariamente complicado. Porém o bom uso, e a perfeita adequação em situações igualmente adequadas. Torna a recursividade um grande aliado para resolver questões que de outra forma seria muito mais trabalhoso e demorado. O conteúdo exposto aqui, visa e tem como objetivo, pura e simplesmente a didática. De modo algum deve ser encarado como sendo, uma aplicação cuja finalidade não venha a ser o aprendizado e estudo dos conceitos mostrados.
preview
Desenvolvimento de um sistema personalizado de detecção do regime de mercado em MQL5 (Parte 1): Indicador

Desenvolvimento de um sistema personalizado de detecção do regime de mercado em MQL5 (Parte 1): Indicador

Este artigo descreve em detalhes a criação de um sistema de detecção do regime de mercado em MQL5 usando métodos estatísticos, como autocorrelação e volatilidade. O artigo apresenta o código de classes capazes de classificar condições de tendência, de range e de mercado volátil, bem como um indicador personalizado.
preview
Estratégia da Águia — Eagle Strategy (ES)

Estratégia da Águia — Eagle Strategy (ES)

Eagle Strategy é um algoritmo que imita a estratégia de caça em duas fases da águia: busca global por meio de voos de Lévy pelo método de Mantegna, alternada com intensificação local intensa do algoritmo de vaga-lumes, uma abordagem matematicamente fundamentada para o equilíbrio entre diversificação e intensificação, bem como um conceito bioinspirado que combina dois fenômenos naturais em um único método computacional.
preview
DoEasy. Funções de Serviço (Parte 3): Padrão "Barra Externa"

DoEasy. Funções de Serviço (Parte 3): Padrão "Barra Externa"

Neste artigo, desenvolveremos o padrão Price Action "Barra Externa" na biblioteca DoEasy e otimizaremos os métodos de acesso ao gerenciamento de padrões de preço. Além disso, realizaremos correções de erros e melhorias identificadas durante os testes da biblioteca.
preview
De Iniciante a Especialista: Depuração Colaborativa em MQL5

De Iniciante a Especialista: Depuração Colaborativa em MQL5

A resolução de problemas pode estabelecer uma rotina concisa para dominar habilidades complexas, como programar em MQL5. Essa abordagem permite que você se concentre na resolução de problemas enquanto desenvolve suas habilidades ao mesmo tempo. Quanto mais problemas você resolver, mais conhecimento avançado será transferido para o seu cérebro. Pessoalmente, acredito que a depuração é a forma mais eficaz de dominar a programação. Hoje, vamos percorrer o processo de limpeza de código e discutir as melhores técnicas para transformar um programa desorganizado em um funcional e limpo. Leia este artigo e descubra insights valiosos.
preview
Reimaginando estratégias clássicas (Parte III): Prevendo máximas mais altas e mínimas mais baixas

Reimaginando estratégias clássicas (Parte III): Prevendo máximas mais altas e mínimas mais baixas

Neste artigo, analisamos empiricamente estratégias de trading clássicas para verificar se é possível aprimorá-las com inteligência artificial (IA). Utilizaremos o modelo de Análise Discriminante Linear (Linear Discriminant Analysis) para tentar prever máximas mais altas e mínimas mais baixas.
preview
Técnicas do Assistente MQL5 que você deve conhecer (Parte 53): Índice de Facilitação de Mercado

Técnicas do Assistente MQL5 que você deve conhecer (Parte 53): Índice de Facilitação de Mercado

O Índice de Facilitação de Mercado é outro indicador de Bill Williams que tem como objetivo medir a eficiência do movimento de preços em conjunto com o volume. Como sempre, analisamos os vários padrões desse indicador dentro dos limites de uma classe de sinal de montagem do assistente e apresentamos uma variedade de relatórios de teste e análises para os diversos padrões.
preview
Arbitragem no trading Forex: Análise dos movimentos de moedas sintéticas e seu retorno à média

Arbitragem no trading Forex: Análise dos movimentos de moedas sintéticas e seu retorno à média

Neste artigo, tentaremos analisar os movimentos das moedas sintéticas na integração Python + MQL5 e entender até que ponto a arbitragem ainda é viável no Forex atualmente. Além disso: apresentaremos um código pronto em Python para análise de moedas sintéticas e explicaremos em detalhes o que são essas moedas no mercado Forex.