Artigos sobre programação na linguagem MQL5

icon

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

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

Novo artigo
recentes | melhores
preview
Do básico ao intermediário: Variáveis (II)

Do básico ao intermediário: Variáveis (II)

Neste artigo vamos ver como trabalhar com variáveis do tipo estática. Este tema é um que costuma confundir muitos programadores. Iniciantes e até mesmo com alguma experiência. Já que existem alguns cuidados e macetes a serem observado no uso de tal mecanismo. 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
Reimaginando Estratégias Clássicas (Parte II): Rompimentos das Bandas de Bollinger

Reimaginando Estratégias Clássicas (Parte II): Rompimentos das Bandas de Bollinger

Este artigo explora uma estratégia de trading que integra a Análise Discriminante Linear (LDA) com Bandas de Bollinger, aproveitando previsões de zonas categóricas para gerar sinais estratégicos de entrada no mercado.
preview
Negociação de Notícias Facilitada (Parte 3): Realizando Negócios

Negociação de Notícias Facilitada (Parte 3): Realizando Negócios

Neste artigo, nosso especialista em negociação de notícias começará a abrir negociações com base no calendário econômico armazenado em nosso banco de dados. Além disso, melhoraremos os gráficos do especialista para exibir informações mais relevantes sobre os próximos eventos do calendário econômico.
preview
Escrevemos o primeiro modelo de caixa de vidro (Glass Box) em Python e MQL5

Escrevemos o primeiro modelo de caixa de vidro (Glass Box) em Python e MQL5

Os modelos de aprendizado de máquina são difíceis de interpretar, e entender o motivo pelo qual os modelos não atendem às nossas expectativas pode ajudar muito a alcançar o resultado desejado ao usar esses métodos modernos. Sem um entendimento abrangente do funcionamento interno do modelo, pode ser difícil identificar erros que prejudicam o desempenho. Nesse processo, podemos dedicar tempo a criar funções que não impactam na qualidade da previsão. No final, por melhor que seja o modelo, perdemos todos os seus principais benefícios devido a nossos próprios erros. Felizmente, existe uma solução complexa, mas bem desenvolvida, que permite ver claramente o que está acontecendo sob o capô do modelo.
preview
Desenvolvendo um EA multimoeda (Parte 8): Realizando testes de carga e processando um novo candle

Desenvolvendo um EA multimoeda (Parte 8): Realizando testes de carga e processando um novo candle

À medida que avançamos, utilizamos cada vez mais instâncias simultâneas de estratégias de negociação em um único EA. Vamos descobrir até quantas instâncias podemos utilizar antes de nos depararmos com limitações de recursos.
preview
Reimaginando Estratégias Clássicas: Petróleo Bruto

Reimaginando Estratégias Clássicas: Petróleo Bruto

Neste artigo, revisitamos uma estratégia clássica de negociação de petróleo bruto com o objetivo de aprimorá-la, utilizando algoritmos de aprendizado de máquina supervisionado. Vamos construir um modelo de mínimos quadrados para prever os preços futuros do petróleo Brent, com base na diferença entre os preços do Brent e do WTI. Nosso objetivo é identificar um indicador líder de futuras mudanças nos preços do Brent.
preview
Ciência de dados e aprendizado de máquina (Parte 29): Como selecionar os melhores dados de Forex para treinar IA

Ciência de dados e aprendizado de máquina (Parte 29): Como selecionar os melhores dados de Forex para treinar IA

Neste artigo, analisamos em detalhes os aspectos importantes para a escolha dos dados mais relevantes e de qualidade do mercado Forex e para melhorar o desempenho dos modelos de inteligência artificial.
preview
Análise volumétrica com redes neurais como chave para tendências futuras

Análise volumétrica com redes neurais como chave para tendências futuras

O artigo explora a possibilidade de melhorar a previsão de preços com base na análise do volume de negociações, integrando os princípios da análise técnica com a arquitetura de redes neurais LSTM. Dá-se atenção especial à identificação e interpretação de volumes anômalos, uso de clusterização e criação de características baseadas em volume, além de sua definição no contexto de aprendizado de máquina.
preview
Rede neural na prática: Pseudo Inversa (II)

Rede neural na prática: Pseudo Inversa (II)

Por conta do fato, de que estes artigos visam a didática. E não para mostrar como implementar esta ou aquela funcionalidade. Vamos fazer algo um pouco diferente aqui. Em vez de mostrar como implementar a fatoração para conseguir a inversa de uma matriz. Vamos focar em como fatorar a pseudo inversa. O motivo é que não faz sentido, mostrar como fatorar algo de forma genérica. Se podemos fazer a mesma coisa de forma especializada. E melhor, será algo que você, conseguirá entender muito mais do por que as coisas serem como são. Então vamos ver por que um hardware aparece depois de um tempo, em substituição a um software.
preview
Técnicas do MQL5 Wizard que você deve conhecer (14): Previsão de Séries Temporais Multiobjetivo com STF

Técnicas do MQL5 Wizard que você deve conhecer (14): Previsão de Séries Temporais Multiobjetivo com STF

A Fusão Espaço-Temporal, que utiliza métricas de 'espaço' e tempo na modelagem de dados, é principalmente útil em sensoriamento remoto e uma série de outras atividades baseadas em imagens, permitindo uma melhor compreensão do nosso ambiente. Graças a um artigo publicado, adotamos uma abordagem inovadora ao usá-la, examinando seu potencial para traders.
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
Indicador de previsão de volatilidade usando Python

Indicador de previsão de volatilidade usando Python

Vamos prever a volatilidade extrema futura com ajuda da classificação binária. Criamos um indicador de previsão de volatilidade extrema com uso de aprendizado de máquina.
preview
Redes neurais de maneira fácil (Parte 66): Problemáticas da pesquisa em treinamento off-line

Redes neurais de maneira fácil (Parte 66): Problemáticas da pesquisa em treinamento off-line

O treinamento de modelos em modo off-line é realizado com dados de uma amostra de treinamento previamente preparada. Isso nos oferece várias vantagens, mas também comprime significativamente as informações sobre o ambiente em relação às dimensões da amostra de treinamento. Isso, por sua vez, limita as possibilidades de pesquisa. Neste artigo, quero apresentar um método que permite enriquecer a amostra de treinamento com dados o mais diversificados possível.
preview
Arbitragem no Forex: Um bot market maker simples de sintéticos para começar

Arbitragem no Forex: Um bot market maker simples de sintéticos para começar

Hoje vamos analisar meu primeiro robô na área de arbitragem, que é um provedor de liquidez (se é que podemos chamá-lo assim) em ativos sintéticos. Atualmente, esse bot funciona com sucesso como um módulo dentro de um grande sistema baseado em aprendizado de máquina, mas eu resgatei o antigo robô de arbitragem no Forex da nuvem, então vamos olhar para ele e pensar no que podemos fazer com ele hoje.
preview
EA autoaprendente com rede neural baseada em matriz de estados

EA autoaprendente com rede neural baseada em matriz de estados

EA autoaprendente com rede neural baseada em matriz de estados. Combinamos cadeias de Markov com uma rede neural multicamadas MLP, escrita com a biblioteca ALGLIB MQL5. Como cadeias de Markov e redes neurais podem ser combinadas para a previsão no Forex?
preview
Algoritmos de otimização populacionais: algoritmo genético binário (Binary Genetic Algorithm, BGA). Parte I

Algoritmos de otimização populacionais: algoritmo genético binário (Binary Genetic Algorithm, BGA). Parte I

Neste artigo, vamos realizar um estudo sobre vários métodos aplicados em algoritmos genéticos binários e outros algoritmos populacionais. Vamos examinar os componentes principais do algoritmo, como seleção, crossover e mutação, bem como seu impacto no processo de otimização. Além disso, vamos explorar as formas de representação de informações e seu impacto nos resultados de otimização.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 15): Máquinas de Vetores de Suporte com o Polinômio de Newton

Técnicas do MQL5 Wizard que você deve conhecer (Parte 15): Máquinas de Vetores de Suporte com o Polinômio de Newton

Máquinas de Vetores de Suporte classificam dados com base em classes predefinidas, explorando os efeitos de aumentar sua dimensionalidade. É um método de aprendizado supervisionado que é bastante complexo, dado seu potencial para lidar com dados multidimensionais. Neste artigo, consideramos como uma implementação muito básica de dados bidimensionais pode ser feita de maneira mais eficiente com o Polinômio de Newton ao classificar a ação do preço.
preview
Analisando exemplos de estratégias de trading no terminal do cliente

Analisando exemplos de estratégias de trading no terminal do cliente

O artigo examina, com base em diagramas de blocos, a lógica dos Expert Advisors (EAs) educacionais incluídos no terminal, localizados na pasta Experts > Free Robots, que operam com padrões de velas.
preview
Computação quântica e trading: Um novo olhar sobre as previsões de preços

Computação quântica e trading: Um novo olhar sobre as previsões de preços

Este artigo analisa uma abordagem inovadora para prever os movimentos de preços nos mercados financeiros mediante computação quântica. O foco principal está na aplicação do algoritmo de estimativa de fase quântica (QPE) para buscar precursores de padrões de preços, o que permite acelerar significativamente o processo de análise de dados de mercado.
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!
preview
Redes neurais em trading: Detecção Adaptativa de Anomalias de Mercado (DADA)

Redes neurais em trading: Detecção Adaptativa de Anomalias de Mercado (DADA)

Apresentamos o DADA, um framework inovador para identificação de anomalias em séries temporais. Ele ajuda a distinguir oscilações aleatórias de desvios suspeitos. Ao contrário dos métodos tradicionais, o DADA se ajusta de maneira flexível a diferentes conjuntos de dados. Em vez de usar um nível fixo de compressão, ele testa vários níveis e escolhe o mais adequado para cada situação.
preview
Redes neurais de maneira fácil (Parte 40): Abordagens para usar Go-Explore em uma grande quantidade de dados

Redes neurais de maneira fácil (Parte 40): Abordagens para usar Go-Explore em uma grande quantidade de dados

Neste artigo, discutiremos a aplicação do algoritmo Go-Explore ao longo de um período de treinamento prolongado, uma vez que uma estratégia de seleção aleatória de ações pode não levar a uma passagem lucrativa à medida que o tempo de treinamento aumenta.
preview
Adicionando um LLM personalizado a um robô investidor (Parte 5): Desenvolvimento e teste de estratégia de trading com LLM (I) - Ajuste fino

Adicionando um LLM personalizado a um robô investidor (Parte 5): Desenvolvimento e teste de estratégia de trading com LLM (I) - Ajuste fino

Os modelos de linguagem (LLMs) são uma parte importante da inteligência artificial que evolui rapidamente. E para aproveitar isso devemos pensar em como integrar LLMs avançados em nossa negociação algorítmica Muitos acham desafiador ajustar esses modelos de acordo com suas necessidades, implantá-los localmente e, logo, aplicá-los à negociação algorítmica. Esta série de artigos explorará uma abordagem passo a passo para alcançar esse objetivo.
preview
Do básico ao intermediário: Definições (I)

Do básico ao intermediário: Definições (I)

Neste artigo, faremos diversas coisas, que para muitos irão parecer estranho e totalmente fora de contexto. Mas que ser for bem empregado tornará seu aprendo muito mais divertido e empolgante. Já que podemos construir coisas bem interessantes, com base no que será visto aqui. A ponto de permitir uma melhor assimilação da sintaxe da linguagem MQL5. 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
Expert Advisor Autônomo com MQL5 e Python (Parte III): Decifrando o Algoritmo do Boom 1000

Expert Advisor Autônomo com MQL5 e Python (Parte III): Decifrando o Algoritmo do Boom 1000

Nesta série de artigos, discutimos como podemos construir Expert Advisors capazes de se ajustarem autonomamente às condições dinâmicas do mercado. No artigo de hoje, tentaremos ajustar uma rede neural profunda aos mercados sintéticos da Deriv.
preview
Do básico ao intermediário: Estruturas (VI)

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

Neste artigo veremos como podemos começar a implementar o que seria uma base de código estrutural genérico. Isto a fim de reduzir nosso trabalho em programar as coisas e fazer um melhor uso dos potenciais oferecidos pela própria linguagem de programação. No caso o MQL5.
preview
Desenvolvendo um sistema de Replay (Parte 53): Complicando as coisas (V)

Desenvolvendo um sistema de Replay (Parte 53): Complicando as coisas (V)

Neste artigo irei introduzir um tema muito importante, porém que poucos de fato compreender. Eventos Customizados. Perigos. Vantagens e falhas causados por tais coisas. Este assunto é muito importante para quem deseja se tornar um programador profissional em MQL5, ou em qualquer outro tipo de linguagem. Mas aqui iremos focar no MQL5 e no MetaTrader 5.
preview
Desenvolvendo um cliente MQTT para MetaTrader 5: uma abordagem TDD — Final

Desenvolvendo um cliente MQTT para MetaTrader 5: uma abordagem TDD — Final

Este artigo é a última parte de uma série que descreve nossas etapas de desenvolvimento de um cliente MQL5 nativo para o protocolo MQTT 5.0. Embora a biblioteca ainda não esteja pronta para produção, nesta parte, usaremos nosso cliente para atualizar um símbolo personalizado com ticks (ou taxas) obtidos de outro corretor. Por favor, veja o final deste artigo para mais informações sobre o status atual da biblioteca, o que falta para que ela esteja totalmente em conformidade com o protocolo MQTT 5.0, um possível roadmap, e como acompanhar e contribuir para seu desenvolvimento.
preview
Do básico ao intermediário: Comando IF ELSE

Do básico ao intermediário: Comando IF ELSE

Neste artigo iremos ver como trabalhar com o comando IF e seu parceiro ELSE. Este que é o comando mais importante e significativo que existe em qualquer linguagem de programação. Porém apesar de ser muito simples de ser usado. O mesmo as vezes causa alguma confusão quando nos falta experiência no seu uso e nos conceitos a serem utilizados no mesmo. 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
Técnicas do MQL5 Wizard que você deve conhecer (Parte 37): Regressão por Processo Gaussiano com Núcleos Lineares e de Matérn

Técnicas do MQL5 Wizard que você deve conhecer (Parte 37): Regressão por Processo Gaussiano com Núcleos Lineares e de Matérn

Os núcleos lineares são a matriz mais simples de seu tipo usada em aprendizado de máquina para regressão linear e máquinas de vetor de suporte. O núcleo de Matérn, por outro lado, é uma versão mais versátil da Função de Base Radial que analisamos em um artigo anterior, e é hábil em mapear funções que não são tão suaves quanto o RBF pressupõe. Construímos uma classe de sinal personalizada que utiliza ambos os núcleos para prever condições de compra e venda.
preview
Quantificação no aprendizado de máquina (Parte 1): Teoria, exemplo de código, análise da implementação no CatBoost

Quantificação no aprendizado de máquina (Parte 1): Teoria, exemplo de código, análise da implementação no CatBoost

Neste artigo, discutiremos a aplicação teórica da quantização ao construir modelos baseados em árvores. São examinados os métodos de quantização implementados no CatBoost. O material será apresentado em linguagem acessível, sem fórmulas matemáticas complexas.
preview
Do básico ao intermediário: Array (I)

Do básico ao intermediário: Array (I)

Este é um artigo de transição entre o que foi visto até agora, para uma nova etapa de estudos. O pré-requisito para conseguir entender este artigo é ter compreendido os artigos anteriores. 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
Do básico ao intermediário: Indicador (IV)

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

Neste artigo, vermos como é fácil de criar e implementar uma metodologia operacional, visando colorir candles. Sendo este um conceito, que diversos operadores apreciam imensamente. Porém, é preciso se tomar cuidado ao implementar tal tipo de coisa. Isto para que as barras, ou candles, mantenham a sua aparência original. Visando assim não prejudicar a leitura que muitos operadores fazem candle a candle.
preview
Redes neurais de maneira fácil (Parte 79): consultas agregadas de características (FAQ)

Redes neurais de maneira fácil (Parte 79): consultas agregadas de características (FAQ)

No artigo anterior, nos familiarizamos com um dos métodos de detecção de objetos em imagens. No entanto, o processamento de imagens estáticas é um pouco diferente do trabalho com séries temporais dinâmicas, como aquelas relacionadas à dinâmica dos preços que estamos analisando. Neste artigo, quero apresentar a você o método de detecção de objetos em vídeo, que é mais relevante para a nossa tarefa atual.
preview
Desenvolvendo um EA multimoeda (Parte 17): Preparação adicional para o trading real

Desenvolvendo um EA multimoeda (Parte 17): Preparação adicional para o trading real

Atualmente, nosso EA utiliza um banco de dados para obter as strings de inicialização de instâncias individuais de estratégias de trading. No entanto, o banco de dados é bastante volumoso e contém muitas informações desnecessárias para a operação real do EA. Tentaremos garantir o funcionamento do EA sem a necessidade de conexão obrigatória ao banco de dados.
preview
Construindo Expert Advisors Auto-otimizantes Com MQL5 E Python (Parte II): Ajustando Redes Neurais Profundas

Construindo Expert Advisors Auto-otimizantes Com MQL5 E Python (Parte II): Ajustando Redes Neurais Profundas

Modelos de aprendizado de máquina vêm com vários parâmetros ajustáveis. Nesta série de artigos, exploraremos como personalizar seus modelos de IA para se ajustar ao seu mercado específico utilizando a biblioteca SciPy.
preview
Algoritmo de arquearia — Archery Algorithm (AA)

Algoritmo de arquearia — Archery Algorithm (AA)

Neste artigo, examinamos detalhadamente o algoritmo de otimização inspirado na arquearia, com foco no uso do método de roleta como mecanismo de seleção de áreas promissoras para a colocação das "flechas". Esse método permite avaliar a qualidade das soluções e selecionar as posições mais promissoras para um estudo mais aprofundado.
preview
Usando PSAR, Heiken Ashi e Aprendizado Profundo Juntos para Operações de Trading

Usando PSAR, Heiken Ashi e Aprendizado Profundo Juntos para Operações de Trading

Este projeto explora a fusão entre aprendizado profundo e análise técnica para testar estratégias de trading no mercado de câmbio (forex). Um script em Python é usado para experimentação rápida, utilizando um modelo ONNX juntamente com indicadores tradicionais como PSAR, SMA e RSI para prever movimentos do par EUR/USD. Um script em MetaTrader 5 então leva essa estratégia para um ambiente ao vivo, usando dados históricos e análise técnica para tomar decisões de trading mais informadas. Os resultados do backtesting indicam uma abordagem cautelosa, porém consistente, com foco em gestão de risco e crescimento estável em vez da busca agressiva por lucros.
preview
A Estratégia de Negociação do Inverse Fair Value Gap

A Estratégia de Negociação do Inverse Fair Value Gap

Um inverse fair value gap (IFVG) ocorre quando o preço retorna a um fair value gap previamente identificado e, em vez de apresentar a reação esperada de suporte ou resistência, falha em respeitá-lo. Essa falha pode sinalizar uma possível mudança na direção do mercado e oferecer uma vantagem contrária de negociação. Neste artigo, vou apresentar minha abordagem desenvolvida por mim para quantificar e utilizar o inverse fair value gap como uma estratégia para expert advisors do MetaTrader 5.
preview
EA baseado em um aproximador universal MLP

EA baseado em um aproximador universal MLP

Este artigo apresenta uma forma simples e acessível de usar uma rede neural em um EA, que não exige conhecimento aprofundado em aprendizado de máquina. O método elimina a necessidade de normalizar a função alvo e evita problemas como “explosão de pesos” e “paralisação da rede”, oferecendo um aprendizado intuitivo com controle visual dos resultados.