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
Algoritmo de otimização baseado em ecossistema artificial — Artificial Ecosystem-based Optimization (AEO)

Algoritmo de otimização baseado em ecossistema artificial — Artificial Ecosystem-based Optimization (AEO)

O artigo aborda o algoritmo metaheurístico AEO, que modela as interações entre os componentes de um ecossistema, criando uma população inicial de soluções e aplicando estratégias adaptativas de atualização, e descreve detalhadamente as etapas do funcionamento do AEO, incluindo as fases de consumo e decomposição, bem como as diferentes estratégias de comportamento dos agentes. O artigo apresenta as características e vantagens do AEO.
preview
Sistemas neurossimbólicos no algotrading: Unindo regras simbólicas e redes neurais

Sistemas neurossimbólicos no algotrading: Unindo regras simbólicas e redes neurais

Este artigo fala sobre a experiência de desenvolver um sistema de negociação híbrido que combina análise técnica clássica com redes neurais. O autor destrincha a arquitetura do sistema, desde a análise básica de padrões e estrutura da rede neural até os mecanismos de tomada de decisão, compartilhando código real e observações práticas.
preview
A análise de lacunas temporais de preço em MQL5 (Parte I): Criando um indicador básico

A análise de lacunas temporais de preço em MQL5 (Parte I): Criando um indicador básico

A análise de lacunas temporais, ou time gaps, ajuda o trader a identificar potenciais pontos de reversão do mercado. O artigo examina o que é um time gap, como interpretá-lo e de que maneira ele pode ser utilizado para detectar a entrada de grande volume no mercado.
preview
Colmeia artificial de abelhas (ABHA): Testes e resultados

Colmeia artificial de abelhas (ABHA): Testes e resultados

Neste artigo, continuaremos o estudo do algoritmo de colmeia de abelhas ABHA, aprofundando-nos na escrita de código e analisando os métodos restantes. Lembremos que cada abelha no modelo é apresentada como um agente individual, cujo comportamento depende de informações internas e externas, bem como de seu estado motivacional. Realizaremos testes do algoritmo em diferentes funções e apresentaremos os resultados em uma tabela de classificação.
preview
Desenvolvimento de um sistema de monitoramento de entradas de swing (EA)

Desenvolvimento de um sistema de monitoramento de entradas de swing (EA)

À medida que o ano se aproxima do fim, traders de longo prazo costumam refletir sobre o histórico do mercado para analisar seu comportamento e tendências, visando projetar potenciais movimentos futuros. Neste artigo, exploraremos o desenvolvimento de um Expert Advisor (EA) de monitoramento de entradas de longo prazo usando MQL5. O objetivo é abordar o desafio das oportunidades de negociação de longo prazo perdidas devido ao trading manual e à ausência de sistemas automatizados de monitoramento. Usaremos um dos pares mais negociados como exemplo para estruturar e desenvolver nossa solução de forma eficaz.
preview
MQL5 Trading Toolkit (Parte 5): Expansão da biblioteca EX5 para gerenciamento do histórico com funções do último ordem pendente executada

MQL5 Trading Toolkit (Parte 5): Expansão da biblioteca EX5 para gerenciamento do histórico com funções do último ordem pendente executada

Aprenda a criar um módulo EX5 com funções exportáveis que permite consultar e armazenar facilmente os dados da última ordem pendente executada. Neste guia passo a passo, aprimoraremos a biblioteca EX5 de gerenciamento de histórico (History Management) desenvolvendo funções especializadas e independentes para extrair as principais propriedades da última ordem pendente executada. Entre essas propriedades estão o tipo de ordem, o horário de colocação, o horário de execução, o tipo de execução e outros dados importantes necessários para o gerenciamento e análise eficaz do histórico de operações com ordens pendentes.
preview
Desenvolvimento de um Cliente MQTT para o MetaTrader 5: Metodologia TDD (Parte 5)

Desenvolvimento de um Cliente MQTT para o MetaTrader 5: Metodologia TDD (Parte 5)

Este artigo é a quinta parte de uma série que descreve as etapas de desenvolvimento de um cliente MQL5 nativo para o protocolo MQTT 5.0. Nesta parte, vamos detalhar a estrutura dos pacotes PUBLISH, configuraremos seus flags de publicação, codificaremos os nomes dos tópicos e estabeleceremos identificadores de pacotes quando necessário.
preview
Criação de um painel de administração de trading no MQL5 (Parte IV): Segurança no login

Criação de um painel de administração de trading no MQL5 (Parte IV): Segurança no login

Imagine que um invasor tenha conseguido entrar no sistema de gerenciamento de trading e obtido acesso aos computadores e ao painel de administração usados para transmitir informações valiosas a milhões de traders em todo o mundo. Isso pode resultar em consequências catastróficas, como o envio não autorizado de mensagens enganosas ou cliques acidentais em botões que disparam ações indesejadas. Neste artigo, analisaremos as medidas de segurança do MQL5 e os novos recursos de proteção implementados em nosso painel de administração para evitar tais ameaças. Ao aprimorar nossos protocolos de segurança, buscamos proteger nossos canais de comunicação e manter a confiança dos membros de nossa comunidade de trading.
preview
Redes neurais em trading: Sistema multiagente com validação conceitual (FinCon)

Redes neurais em trading: Sistema multiagente com validação conceitual (FinCon)

Apresentamos o framework FinCon, que é um sistema multiagente baseado em grandes modelos de linguagem (LLM). O framework utiliza reforço verbal conceitual para melhorar a tomada de decisões e o gerenciamento de riscos, permitindo realizar diversas tarefas financeiras de forma eficiente.
preview
Otimização baseada em biogeografia — Biogeography-Based Optimization (BBO)

Otimização baseada em biogeografia — Biogeography-Based Optimization (BBO)

A otimização baseada em biogeografia (BBO) é um método elegante de otimização global inspirado nos processos naturais de migração de espécies entre ilhas de arquipélagos. A ideia por trás do algoritmo é simples, porém poderosa: soluções de alta qualidade compartilham ativamente suas características, enquanto soluções de baixa qualidade adotam novas características, criando um fluxo natural de informação das melhores soluções para as piores. Um operador adaptativo de mutação exclusivo garante um excelente equilíbrio entre diversificação e intensificação, e o BBO demonstra alta eficiência em diversas tarefas.
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: Ponteiro para função

Do básico ao intermediário: Ponteiro para função

Você provavelmente já deve ter ouvido falar em ponteiro. Isto quando o assunto é programação. Mas você sabia que podemos fazer uso deste tipo de dado aqui no MQL5? Isto claro, de uma forma a não perder o controle ou gerar coisas bizarras durante a execução do código. Porém, sendo um recurso com uso muito específico e voltado para certos tipos de atividade. É difícil ver alguém falando sobre o que seria de fato um ponteiro e como usar eles no MQL5.
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 um EA multimoeda (Parte 25): Conectando uma nova estratégia (II)

Desenvolvendo um EA multimoeda (Parte 25): Conectando uma nova estratégia (II)

Neste artigo, continuaremos a conectar uma nova estratégia ao sistema de otimização automática já criado. Vamos ver quais mudanças devem ser feitas no EA responsável pela criação do projeto de otimização e nos EAs das segunda e terceira etapas.
preview
Estudando a previsão conformal de séries temporais financeiras

Estudando a previsão conformal de séries temporais financeiras

Neste artigo, você conhecerá as previsões conformais e a biblioteca MAPIE, que as implementa. Essa abordagem é uma das mais modernas em aprendizado de máquina e permite focar no controle de riscos para os já existentes e variados modelos de aprendizado de máquina. As previsões conformais, por si só, não são uma forma de encontrar padrões nos dados. Elas apenas determinam o grau de confiança dos modelos existentes ao preverem exemplos específicos e permitem filtrar previsões confiáveis.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 17): Negociação Multimoedas

Técnicas do MQL5 Wizard que você deve conhecer (Parte 17): Negociação Multimoedas

Negociar com múltiplas moedas não está disponível por padrão quando um expert advisor é montado através do assistente. Examinamos dois hacks possíveis que os traders podem fazer ao tentar testar suas ideias com mais de um símbolo ao mesmo tempo.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 20): Regressão Simbólica

Técnicas do MQL5 Wizard que você deve conhecer (Parte 20): Regressão Simbólica

A Regressão Simbólica é uma forma de regressão que começa com poucas ou nenhuma suposição sobre qual seria o modelo subjacente que mapeia os conjuntos de dados em estudo. Embora possa ser implementada por Métodos Bayesianos ou Redes Neurais, analisamos como uma implementação com Algoritmos Genéticos pode ajudar a personalizar uma classe de sinal especialista utilizável no MQL5 Wizard.
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
Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (I)

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

Esta discussão aprofunda-se nos desafios encontrados ao trabalhar com grandes bases de código. Vamos explorar as melhores práticas para organização de código em MQL5 e implementar uma abordagem prática para aprimorar a legibilidade e a escalabilidade do código-fonte do nosso Painel de Administração de Trading. Além disso, buscamos desenvolver componentes de código reutilizáveis que possam potencialmente beneficiar outros desenvolvedores no desenvolvimento de seus algoritmos. Continue lendo e participe da discussão.
preview
Criação de interfaces gráficas dinâmicas em MQL5 por meio de interpolação bicúbica

Criação de interfaces gráficas dinâmicas em MQL5 por meio de interpolação bicúbica

Neste artigo, vamos explorar interfaces gráficas dinâmicas em MQL5 que usam interpolação bicúbica para o redimensionamento de imagens com alta qualidade em gráficos de trading. Descreveremos em detalhes opções flexíveis de posicionamento, que permitem centralização dinâmica ou ancoragem aos cantos com deslocamentos ajustáveis.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 10): RBM não convencional

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 10): RBM não convencional

As máquinas de Boltzmann restritas (Restrictive Boltzmann Machines, RBM) são, em um nível básico, uma rede neural de duas camadas capaz de realizar classificação não supervisionada através da redução de dimensionalidade. Vamos usar seus princípios básicos e ver o que acontece se a desenharmos e a treinarmos de forma não convencional. Será que conseguiremos obter um filtro de sinais útil?
preview
Do básico ao intermediário: Objetos (IV)

Do básico ao intermediário: Objetos (IV)

Este talvez venha a ser o artigo mais divertido até este momento. Isto porque, aqui iremos implementar uma modificação de um objeto presente no MetaTrader 5, a fim de conseguir criar um outro objeto, que não existe originalmente na plataforma. Claro que o que será visto aqui, pode parecer meio que doideira. Mas funciona e tem um objetivo bastante interessante.
preview
Aplicação de regras associativas para análise de dados no Forex

Aplicação de regras associativas para análise de dados no Forex

Como aplicar as regras preditivas de análise de dados do varejo de supermercados ao mercado real de Forex? Como as compras de biscoitos, leite e pão estão relacionadas às transações na bolsa? Este artigo explora uma abordagem inovadora para o trading algorítmico, baseada no uso de regras associativas.
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
Redes neurais em trading: Hierarquia de habilidades para comportamento adaptativo de agentes (HiSSD)

Redes neurais em trading: Hierarquia de habilidades para comportamento adaptativo de agentes (HiSSD)

Apresentamos o framework HiSSD, que combina aprendizado hierárquico e abordagens multiagente para a criação de sistemas adaptativos. Neste trabalho, exploramos em detalhe como essa abordagem inovadora ajuda a identificar padrões ocultos nos mercados financeiros e a otimizar estratégias de trading em condições de descentralização.
preview
Indicador de sazonalidade por horas, dias da semana e meses

Indicador de sazonalidade por horas, dias da semana e meses

O artigo explica como desenvolver uma ferramenta para análise de padrões recorrentes de preços nos mercados financeiros, por dias do mês (1-31), dias da semana (segunda-feira-domingo) ou horas do dia (0-23). O indicador analisa dados históricos, calcula a rentabilidade média para cada período e exibe os resultados na forma de um histograma com previsão. Inclui parâmetros configuráveis: tipo de sazonalidade, quantidade de barras analisadas, exibição em porcentagens ou valores absolutos, cores dos gráficos.
preview
Simulação de mercado: Position View (XX)

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

Neste artigo iremos ver como modificar o código do indicador de posição a fim de conseguir, criar um tipo de sombra para que possamos visualizar onde o preço se encontra atualmente no servidor de negociação. Tal principio tem como finalidade facilitar o planejamento de operações. Onde temos uma movimentação das linhas de stop loss ou take profit. Porém adicionar tal funcionalidade, ou seja sombras de preço. Pode parecer algo extremamente complexo. Mas neste artigo mostrarei que você conseguirá fazer isto de maneira muito simples e prática.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 18): Pesquisa de Arquitetura Neural com Vetores Próprios

Técnicas do MQL5 Wizard que você deve conhecer (Parte 18): Pesquisa de Arquitetura Neural com Vetores Próprios

Pesquisa de Arquitetura Neural, uma abordagem automatizada para determinar as configurações ideais de uma rede neural, pode ser um diferencial ao enfrentar muitas opções e grandes conjuntos de dados de teste. Examinamos como, quando emparelhado com Vetores Próprios, esse processo pode se tornar ainda mais eficiente.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 19): Inferência Bayesiana

Técnicas do MQL5 Wizard que você deve conhecer (Parte 19): Inferência Bayesiana

A inferência bayesiana é a adoção do Teorema de Bayes para atualizar hipóteses de probabilidade à medida que novas informações são disponibilizadas. Isso intuitivamente leva à adaptação na análise de séries temporais, então veremos como podemos usar isso na construção de classes personalizadas, não apenas para o sinal, mas também para gerenciamento de dinheiro e trailing-stops.
preview
Algoritmo de otimização caótica — Chaos optimization algorithm (COA): Continuação

Algoritmo de otimização caótica — Chaos optimization algorithm (COA): Continuação

Continuação do estudo do algoritmo de otimização caótica. A segunda parte do artigo é dedicada aos aspectos práticos da implementação do algoritmo, ao seu teste e às conclusões.
preview
Algoritmo do Campo Elétrico Artificial — Artificial Electric Field Algorithm (AEFA)

Algoritmo do Campo Elétrico Artificial — Artificial Electric Field Algorithm (AEFA)

Este artigo apresenta o Algoritmo do Campo Elétrico Artificial (AEFA), inspirado na lei de Coulomb da força eletrostática. Por meio de partículas carregadas e suas interações, o algoritmo simula fenômenos elétricos para resolver tarefas complexas de otimização. O AEFA demonstra propriedades únicas em relação a outros algoritmos baseados em leis da natureza.
preview
Reimaginando Estratégias Clássicas (Parte VIII): Mercados de Câmbio e Metais Preciosos no USDCAD

Reimaginando Estratégias Clássicas (Parte VIII): Mercados de Câmbio e Metais Preciosos no USDCAD

Nesta série de artigos, revisitamos estratégias de negociação bem conhecidas para ver se podemos melhorá-las utilizando IA. Na discussão de hoje, junte-se a nós enquanto testamos se existe uma relação confiável entre metais preciosos e moedas.
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
Gerenciamento de riscos (Parte 4): Conclusão dos métodos-chave da classe

Gerenciamento de riscos (Parte 4): Conclusão dos métodos-chave da classe

Este artigo é a quarta parte da nossa série sobre gerenciamento de riscos em MQL5, onde continuamos a explorar métodos avançados de proteção e otimização de estratégias de negociação. Após termos estabelecido as bases importantes nas partes anteriores, agora focaremos em finalizar todos os métodos que ficaram pendentes na terceira parte, incluindo as funções responsáveis por verificar o atingimento de determinados níveis de lucro ou prejuízo. Além disso, o artigo introduz novos eventos-chave que garantem um controle mais preciso e flexível.
preview
Desenvolvendo um Expert Advisor de Breakout Baseado em Eventos de Notícias do Calendário em MQL5

Desenvolvendo um Expert Advisor de Breakout Baseado em Eventos de Notícias do Calendário em MQL5

A volatilidade tende a atingir picos em torno de eventos de notícias de alto impacto, criando oportunidades significativas de breakout. Neste artigo, iremos delinear o processo de implementação de uma estratégia de breakout baseada em calendário. Abordaremos tudo, desde a criação de uma classe para interpretar e armazenar dados do calendário, o desenvolvimento de backtests realistas utilizando esses dados e, por fim, a implementação do código de execução para negociação ao vivo.
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
Mineração de dados dos balanços dos bancos centrais e obtenção de um panorama da liquidez global

Mineração de dados dos balanços dos bancos centrais e obtenção de um panorama da liquidez global

A mineração de dados dos balanços dos bancos centrais permite obter um panorama da liquidez global do mercado Forex e das principais moedas. Nós unificamos dados do Fed, do BCE, do BOJ e do PBoC em um índice composto e aplicamos aprendizado de máquina para identificar padrões ocultos. Essa abordagem transforma um fluxo bruto de dados em sinais reais de trading, conectando a análise fundamentalista e a análise técnica.
preview
Redes neurais em trading: Segmentação guiada (Conclusão)

Redes neurais em trading: Segmentação guiada (Conclusão)

Damos continuidade ao trabalho iniciado no artigo anterior sobre a construção do framework RefMask3D utilizando MQL5. Esse framework foi desenvolvido para um estudo aprofundado da interação multimodal e da análise de características em nuvens de pontos, com posterior identificação do objeto-alvo com base em uma descrição fornecida em linguagem natural.
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
MQL5 Trading Toolkit (Parte 5): Expandindo a Biblioteca EX5 de Gerenciamento de Histórico com Funções de Posição

MQL5 Trading Toolkit (Parte 5): Expandindo a Biblioteca EX5 de Gerenciamento de Histórico com Funções de Posição

Descubra como criar funções exportáveis em EX5 para consultar e salvar de forma eficiente dados históricos de posições. Neste guia passo a passo, ampliaremos a biblioteca EX5 de gerenciamento de histórico desenvolvendo módulos que recuperam propriedades-chave da posição fechada mais recentemente. Isso inclui lucro líquido, duração da negociação, stop loss em pips, take profit, valores de lucro e vários outros detalhes importantes.