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
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
Seleção de características e redução de dimensionalidade com Análise de Componentes Principais (PCA)

Seleção de características e redução de dimensionalidade com Análise de Componentes Principais (PCA)

O artigo analisa a implementação de um algoritmo modificado de análise de componentes de seleção direta, inspirado nas pesquisas apresentadas no livro de Luca Puggini e Sean McLoone "Análise de Componentes de Seleção Direta: algoritmos e aplicações".
preview
Simulação de mercado: Iniciando o SQL no MQL5 (IV)

Simulação de mercado: Iniciando o SQL no MQL5 (IV)

Muitos costuma subutilizar o SQL, ou mesmo não fazer uso dele, devido a uma má compreensão de como ele realmente funciona. Quando pesquisamos dentro de um banco de dados SQL. Não queremos necessariamente saber de uma resposta genérica. Podemos em alguns casos, estar buscando uma resposta bastante objetiva e prática. Se você criar um banco de dados, com uma certa estruturação e modelagem. Poderá colocar, virtualmente qualquer tipo de informação dentro do banco de dados.
preview
Rede neural na prática: Gradiente Descendente Estocástico

Rede neural na prática: Gradiente Descendente Estocástico

O artigo explica, na prática, como calcular e aplicar os gradientes de peso e viés no neurônio linear em MQL5, além de apresentar a variante estocástica do gradiente descendente. Discutimos critérios de parada, limitação de iterações e efeitos da amostragem parcial. No terminal do MetaTrader 5, são exibidos resultados e uma plotagem simples. O leitor é orientado a alterar o conjunto de treino e analisar o comportamento.
preview
Critérios de tendência. Conclusão

Critérios de tendência. Conclusão

Neste artigo, analisaremos as particularidades da aplicação prática de alguns critérios de tendência. Além disso, tentaremos desenvolver alguns novos critérios. A principal atenção será dada à eficácia desses critérios na análise de dados de mercado e no trading.
preview
Métodos de discretização dos movimentos de preço em Python

Métodos de discretização dos movimentos de preço em Python

Vamos explorar métodos de discretização de preços com Python + MQL5. Neste artigo, compartilho minha experiência prática no desenvolvimento de uma biblioteca em Python que implementa uma variedade de abordagens para formar barras, desde as clássicas Volume e Range bars até métodos mais exóticos como Renko e Kagi. Barras, candles de três linhas rompidas, range bars — qual é a sua estatística? De que outras formas podemos representar os preços de maneira discreta?
preview
Algoritmos de otimização populacional: Resistência a ficar preso em extremos locais (Parte I)

Algoritmos de otimização populacional: Resistência a ficar preso em extremos locais (Parte I)

Este artigo apresenta um experimento único que visa examinar o comportamento dos algoritmos de otimização populacional no contexto de sua capacidade de escapar eficientemente de mínimos locais quando a diversidade populacional é baixa e alcançar máximos globais. Trabalhar nessa direção fornecerá uma visão mais aprofundada sobre quais algoritmos específicos podem continuar sua busca com sucesso usando coordenadas definidas pelo usuário como ponto de partida e quais fatores influenciam seu sucesso.
preview
Redes neurais em trading: Injeção de informação global em canais independentes (InjectTST)

Redes neurais em trading: Injeção de informação global em canais independentes (InjectTST)

A maioria dos métodos modernos de previsão de séries temporais multimodais utiliza a abordagem de canais independentes, ignorando a dependência natural entre os diferentes canais de uma série temporal. Para melhorar a eficiência dos modelos, é fundamental utilizar equilibradamente duas abordagens: canais independentes e mistos.
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
Do básico ao intermediário: Acesso aleatório (II)

Do básico ao intermediário: Acesso aleatório (II)

Neste artigo iremos ver como duas abordagens ligeiramente diferentes podem ter um impacto muito grande em todo uma metodologia de implementação. Tanto pelo ponto de vista de performance, quanto pelo ponto de vista de como acessos ao disco devem ser pensados a fim de evitar problemas de compatibilidade entre diferentes aplicações.
preview
Implementação do mecanismo de breakeven em MQL5 (Parte 1): Classe base e modo de breakeven por pontos fixos

Implementação do mecanismo de breakeven em MQL5 (Parte 1): Classe base e modo de breakeven por pontos fixos

Neste artigo, analisamos a aplicação do mecanismo de breakeven (ponto de equilíbrio) em estratégias automatizadas na linguagem MQL5. Começaremos com uma explicação simples do que é o modo de breakeven, como ele é implementado e quais são suas possíveis variações. Em seguida, essa funcionalidade será integrada ao EA Order Blocks, criado por nós no último artigo sobre gerenciamento de riscos. Para avaliar a eficácia, faremos dois backtests sob determinadas condições: um com a aplicação do mecanismo de breakeven e outro, sem.
preview
Redes neurais de maneira fácil (Parte 69): restrição de política comportamental com base na densidade de dados off-line (SPOT)

Redes neurais de maneira fácil (Parte 69): restrição de política comportamental com base na densidade de dados off-line (SPOT)

No aprendizado off-line, utilizamos um conjunto de dados fixo, e isso não abrange toda a variedade do ambiente. Durante o processo de treinamento, nosso Agente pode gerar ações fora desse conjunto. Sem feedback do ambiente, a precisão dessas ações é duvidosa. Manter a política do Agente dentro do conjunto de treinamento se torna importante para confiar nos resultados. Vamos falar mais sobre isso aqui neste artigo.
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
Negociando com o Calendário Econômico MQL5 (Parte 4): Implementando Atualizações de Notícias em Tempo Real no Painel

Negociando com o Calendário Econômico MQL5 (Parte 4): Implementando Atualizações de Notícias em Tempo Real no Painel

Este artigo aprimora nosso painel do Calendário Econômico implementando atualizações de notícias em tempo real para manter as informações de mercado atuais e acionáveis. Integramos técnicas de busca de dados ao vivo no MQL5 para atualizar os eventos no painel continuamente, melhorando a capacidade de resposta da interface. Essa atualização garante que possamos acessar as últimas notícias econômicas diretamente do painel, otimizando as decisões de negociação com base nos dados mais recentes.
preview
Implementação do mecanismo de breakeven em MQL5 (Parte 1): Classe base e modo de breakeven por pontos fixos

Implementação do mecanismo de breakeven em MQL5 (Parte 1): Classe base e modo de breakeven por pontos fixos

Neste artigo, analisamos a aplicação do mecanismo de breakeven (ponto de equilíbrio) em estratégias automatizadas na linguagem MQL5. Começaremos com uma explicação simples do que é o modo de breakeven, como ele é implementado e quais são suas possíveis variações. Em seguida, essa funcionalidade será integrada ao EA Order Blocks, criado por nós no último artigo sobre gerenciamento de riscos. Para avaliar a eficácia, faremos dois backtests sob determinadas condições: um com a aplicação do mecanismo de breakeven e outro, sem.
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
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 11): Paredes numéricas

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 11): Paredes numéricas

As paredes numéricas (Number Walls) são uma variante do registrador de deslocamento com realimentação linear (Linear Shift Back Registers), que avalia previamente sequências para previsibilidade verificando a convergência. Vamos ver como essas ideias podem ser usadas no MQL5.
preview
Otimização com búfalos-africanos — African Buffalo Optimization (ABO)

Otimização com búfalos-africanos — African Buffalo Optimization (ABO)

O artigo é dedicado ao algoritmo de otimização com búfalos-africanos (ABO), uma abordagem meta-heurística desenvolvida em 2015 com base no comportamento único desses animais. Ele descreve detalhadamente as etapas de implementação do algoritmo e sua eficácia na busca por soluções de problemas complexos, tornando-o uma ferramenta valiosa na área de otimização.
preview
Gerenciamento de riscos (Parte 2): Implementação do cálculo de lotes na interface gráfica

Gerenciamento de riscos (Parte 2): Implementação do cálculo de lotes na interface gráfica

Neste artigo, analisaremos como aprimorar e aplicar de forma mais eficiente os conceitos apresentados no artigo anterior, utilizando as poderosas bibliotecas de elementos gráficos de controle do MQL5. Conduzirei você passo a passo pelo processo de criação de uma interface gráfica totalmente funcional, explicando o plano de projeto subjacente, bem como o propósito e o princípio de funcionamento de cada método empregado. Além disso, ao final do artigo testaremos o painel criado, a fim de confirmar seu correto funcionamento e sua aderência aos objetivos estabelecidos.
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
Previsão de barras Renko com a ajuda de IA CatBoost

Previsão de barras Renko com a ajuda de IA CatBoost

Como usar barras Renko junto com IA? Vamos analisar o Renko-trading no Forex com precisão de previsões de até 59.27%. Exploraremos as vantagens das barras Renko para filtrar o ruído do mercado, entenderemos por que indicadores de volume são mais importantes do que padrões de preço e como configurar o tamanho ideal do bloco Renko para EURUSD. Um guia passo a passo para integrar CatBoost, Python e MetaTrader 5 para criar seu próprio sistema de previsão Renko Forex. Perfeito para traders que desejam ir além da análise técnica tradicional.
preview
O Método de Agrupamento para Manipulação de Dados: Implementando o Algoritmo Iterativo Multicamadas em MQL5

O Método de Agrupamento para Manipulação de Dados: Implementando o Algoritmo Iterativo Multicamadas em MQL5

Neste artigo, descrevemos a implementação do Algoritmo Iterativo Multicamadas do Método de Agrupamento para Manipulação de Dados em MQL5.
preview
Algoritmo da viagem evolutiva no tempo — Time Evolution Travel Algorithm (TETA)

Algoritmo da viagem evolutiva no tempo — Time Evolution Travel Algorithm (TETA)

Meu algoritmo original. Neste artigo é apresentado o Algoritmo da Viagem Evolutiva no Tempo (TETA), inspirado no conceito de universos paralelos e fluxos temporais. A ideia central do algoritmo é que, embora a viagem no tempo no sentido convencional seja impossível, podemos escolher uma sequência de eventos que leva a diferentes realidades.
preview
Mecanismos de gating em aprendizado por ensemble

Mecanismos de gating em aprendizado por ensemble

Neste artigo, continuamos nossa exploração de modelos ensemble discutindo o conceito de gates, especificamente como eles podem ser úteis na combinação das saídas dos modelos para aprimorar a precisão das previsões ou a generalização do modelo.
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
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
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
Trading de arbitragem no Forex: sistema de negociação matricial para retorno ao valor justo com limitação de risco

Trading de arbitragem no Forex: sistema de negociação matricial para retorno ao valor justo com limitação de risco

O artigo contém uma descrição detalhada do algoritmo de cálculo de taxas cruzadas, a visualização da matriz de desequilíbrios e recomendações para a configuração ideal dos parâmetros MinDiscrepancy e MaxRisk para uma negociação eficiente. O sistema calcula automaticamente o "valor justo" de cada par de moedas por meio de taxas cruzadas, gerando sinais de compra em desvios negativos e de venda em desvios positivos.
preview
Redes neurais de maneira fácil (Parte 70): melhorando a política usando operadores de forma fechada (CFPI)

Redes neurais de maneira fácil (Parte 70): melhorando a política usando operadores de forma fechada (CFPI)

Neste artigo, propomos explorar um algoritmo que utiliza operadores de melhoria de política de forma fechada para otimizar as ações do Agente em um ambiente off-line.
preview
Redes neurais de maneira fácil (Parte 76): explorando diversos modos de interação (Multi-future Transformer)

Redes neurais de maneira fácil (Parte 76): explorando diversos modos de interação (Multi-future Transformer)

Neste artigo, continuamos o tema de previsão do movimento de preços. E convido você a conhecer a arquitetura do Multi-future Transformer. A ideia principal é decompor a distribuição multimodal do futuro em várias distribuições unimodais, permitindo modelar eficientemente diversos modos de interação entre os agentes na cena.
preview
Redes neurais em trading: Transformer vetorial hierárquico (Conclusão)

Redes neurais em trading: Transformer vetorial hierárquico (Conclusão)

Continuaremos a explorar o método Transformer Vetorial Hierárquico. Neste artigo, concluiremos a construção do modelo, realizando seu treinamento e teste em dados históricos reais.
preview
Desenvolvendo um EA multimoeda (Parte 20): Organizando o pipeline de etapas de otimização automática de projetos (I)

Desenvolvendo um EA multimoeda (Parte 20): Organizando o pipeline de etapas de otimização automática de projetos (I)

Já criamos diversos componentes que facilitam o processo de otimização automática. Durante sua criação, seguimos a ciclicidade tradicional: desde a criação do código funcional mínimo até a refatoração e a obtenção de um código melhorado. Agora é hora de organizar nossa base de dados, que também é um componente-chave no sistema que estamos criando.
preview
Como funções de cem anos atrás podem atualizar suas estratégias de trading

Como funções de cem anos atrás podem atualizar suas estratégias de trading

Neste artigo, vamos falar sobre as funções de Rademacher e Walsh. Vamos explorar formas de aplicar essas funções na análise de séries temporais financeiras, além de considerar diferentes maneiras de usá-las no trading.
preview
Automatização de estratégias de trading com MQL5 (Parte 13): Criação de um algoritmo de negociação para o padrão "Cabeça e Ombros"

Automatização de estratégias de trading com MQL5 (Parte 13): Criação de um algoritmo de negociação para o padrão "Cabeça e Ombros"

Neste artigo, automatizaremos o padrão "Cabeça e Ombros" em MQL5. Analisaremos sua arquitetura, implementaremos um EA para sua detecção e negociação, e testaremos os resultados no histórico. Esse processo revela um algoritmo de negociação prático, que pode ser aprimorado.
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
MQL5 Trading Toolkit (Parte 7): Expandindo a Biblioteca EX5 de Gerenciamento de Histórico com as Funções da Última Ordem Pendente Cancelada

MQL5 Trading Toolkit (Parte 7): Expandindo a Biblioteca EX5 de Gerenciamento de Histórico com as Funções da Última Ordem Pendente Cancelada

Aprenda como concluir a criação do módulo final na biblioteca History Manager EX5, com foco nas funções responsáveis por lidar com a ordem pendente cancelada mais recente. Isso fornecerá a você as ferramentas para recuperar e armazenar de forma eficiente os principais detalhes relacionados às ordens pendentes canceladas com MQL5.
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
As modificações mais conhecidas do algoritmo de busca cooperativa artificial (Artificial Cooperative Search, ACSm)

As modificações mais conhecidas do algoritmo de busca cooperativa artificial (Artificial Cooperative Search, ACSm)

Neste artigo, examinamos a evolução do algoritmo ACS: três modificações visando melhorar as características de convergência e eficácia do algoritmo. A transformação de um dos principais algoritmos de otimização. Das modificações de matrizes a abordagens revolucionárias para a formação de populações.
preview
Algoritmo de busca orbital atômica — Atomic Orbital Search (AOS): Modificação

Algoritmo de busca orbital atômica — Atomic Orbital Search (AOS): Modificação

Na segunda parte do artigo, continuaremos o desenvolvimento da versão modificada do algoritmo AOS (Atomic Orbital Search), focando em operadores específicos para aumentar sua eficiência e adaptabilidade. Após analisar as bases e mecânicas do algoritmo, discutiremos ideias para melhorar o desempenho e a capacidade de análise de espaços de soluções complexos, propondo novas abordagens para expandir sua funcionalidade como ferramenta de otimização.
preview
Modelos polinomiais no trading

Modelos polinomiais no trading

Este artigo é dedicado aos polinômios ortogonais. Seu uso pode se tornar a base para uma análise mais precisa e eficaz das informações do mercado, permitindo que o trader tome decisões mais fundamentadas.