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
Desenvolvendo um EA multimoeda (Parte 26): Informador para instrumentos de negociação

Desenvolvendo um EA multimoeda (Parte 26): Informador para instrumentos de negociação

Antes de avançarmos ainda mais no desenvolvimento de EAs multimoeda, vamos tentar mudar o foco para a criação de um novo projeto que utilize a biblioteca já desenvolvida. Com esse exemplo, identificaremos como é melhor organizar o armazenamento do código-fonte e como o novo repositório de código da MetaQuotes pode nos ajudar.
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
Introdução à diversificação (en. diversification) de estruturas fractais de mercado com o auxílio de machine learning

Introdução à diversificação (en. diversification) de estruturas fractais de mercado com o auxílio de machine learning

No presente artigo é feita uma tentativa de examinar séries temporais financeiras sob a perspectiva de estruturas fractais autossimilares. Como temos muitas analogias que confirmam a possibilidade de considerar as cotações de mercado como fractais autossimilares, podemos formar uma compreensão sobre os horizontes de previsão dessas estruturas.
preview
Algoritmos de otimização populacionais: objetos de busca multissociais artificiais (artificial Multi-Social search Objects, MSO)

Algoritmos de otimização populacionais: objetos de busca multissociais artificiais (artificial Multi-Social search Objects, MSO)

Continuação do artigo anterior como desenvolvimento da ideia de grupos sociais. No novo artigo, explora-se a evolução dos grupos sociais utilizando algoritmos de movimentação e memória. Os resultados ajudarão a entender a evolução dos sistemas sociais e aplicá-los na otimização e busca de soluções.
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
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
Algoritmo de Otimização de Força Central (Central Force Optimization, CFO)

Algoritmo de Otimização de Força Central (Central Force Optimization, CFO)

Este artigo apresenta o algoritmo de otimização de força central (CFO), inspirado nas leis da gravitação. É explorado como os princípios da atração física podem resolver problemas de otimização, onde soluções mais pesadas atraem seus análogos menos bem-sucedidos.
preview
Redes neurais em trading: Detecção de anomalias no domínio da frequência (Conclusão)

Redes neurais em trading: Detecção de anomalias no domínio da frequência (Conclusão)

Damos continuidade ao trabalho de implementação das abordagens do framework CATCH, que combina a transformada de Fourier e o mecanismo de patching em frequência, possibilitando a detecção precisa de anomalias de mercado. Nesta etapa, concluímos a realização da nossa própria versão das abordagens propostas e conduziremos testes com os novos modelos utilizando dados históricos reais.
preview
Redes neurais no trading: uma visão unificada sobre espaço e tempo (Global-Local Attention)

Redes neurais no trading: uma visão unificada sobre espaço e tempo (Global-Local Attention)

Continuamos a trabalhar na implementação das abordagens propostas pelos autores do framework Extralonger. Desta vez, vamos nos concentrar na implementação do módulo Global-Local Spatial Attention em MQL5, examinando tanto sua estrutura quanto sua integração prática ao fluxo computacional geral.
preview
Simulação de mercado: Iniciando o SQL no MQL5 (II)

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

Apesar de muitos imaginarem que podemos usar tranquilamente códigos em SQL dentro de outros códigos. Isto normalmente não se aplica. Devido ao fato, de que um código SQL, será sempre colocado dentro de um executável, como sendo uma string. E este fato de colocar o código SQL como sendo uma string, apesar de não ser problemático, para pequenos trechos de código. Podem sim ser algo que nos causará muitos transtornos e uma baita de uma dor de cabeça.
preview
Redes neurais em trading: Agente multimodal complementado com ferramentas (Conclusão)

Redes neurais em trading: Agente multimodal complementado com ferramentas (Conclusão)

Damos continuidade à implementação dos algoritmos do agente multimodal para negociação financeira, o FinAgent, desenvolvido para análise de dados multimodais da dinâmica de mercado e de padrões históricos de trading.
preview
Multiple Symbol Analysis With Python And MQL5 (Part 3): Taxas de Câmbio Triangulares

Multiple Symbol Analysis With Python And MQL5 (Part 3): Taxas de Câmbio Triangulares

Traders frequentemente enfrentam drawdowns causados por sinais falsos, enquanto esperar por confirmação pode levar à perda de oportunidades. Este artigo apresenta uma estratégia de trading triangular utilizando a cotação da Prata em Dólares (XAGUSD) e em Euros (XAGEUR), juntamente com a taxa de câmbio EURUSD, para filtrar ruído. Ao aproveitar relações entre mercados, traders podem descobrir sentimento oculto do mercado e refinar suas entradas em tempo real.
preview
Algoritmo do camelo — Camel Algorithm (CA)

Algoritmo do camelo — Camel Algorithm (CA)

O Algoritmo do camelo, desenvolvido em 2016, modela o comportamento dos camelos no deserto para resolver problemas de otimização, levando em conta fatores de temperatura, reservas e resistência. Neste trabalho é apresentada ainda uma versão modificada dele (CAm), com melhorias-chave, como a aplicação da distribuição gaussiana na geração de soluções e a otimização dos parâmetros do efeito de oásis.
preview
Redes neurais em trading: Segmentação periódica adaptativa (LightGTS)

Redes neurais em trading: Segmentação periódica adaptativa (LightGTS)

Propomos conhecer uma técnica inovadora de patching adaptativo, um método de segmentar séries temporais de forma flexível considerando sua periodicidade interna. Além disso, apresentamos uma técnica de codificação eficiente que permite preservar características semânticas importantes ao trabalhar com dados de diferentes escalas. Esses métodos abrem novas possibilidades para o processamento preciso de dados complexos multiescalares, característicos dos mercados financeiros, e aumentam significativamente a estabilidade e a fundamentação das previsões.
preview
Algoritmo do Átomo Artificial — Artificial Atom Algorithm (A3)

Algoritmo do Átomo Artificial — Artificial Atom Algorithm (A3)

Implementação do algoritmo A3 em MQL5, um método metaheurístico de otimização inspirado em processos químicos. Com apenas 2 parâmetros ajustáveis, sua estrutura compacta e a pequena população garantem alta velocidade de execução com qualidade satisfatória das soluções.
preview
Simulação de mercado (Parte 24): Iniciando o SQL (VII)

Simulação de mercado (Parte 24): Iniciando o SQL (VII)

No artigo anterior terminamos de fazer as devidas apresentações sobre o SQL. Então o que eu havia me proposto a mostrar e explicar, sobre SQL, ao meu ver, foi devidamente explicado. Isto para que todos, que vierem a ver o sistema de replay / simulador, sendo construído. Consigam no mínimo terem alguma noção do que pode estar se passando ali. Devido ao fato, de que não faz sentido, programar diversas coisas, que podem ser perfeitamente cobertas pelo SQL.
preview
Integrar seu próprio LLM em EA (Parte 5): Desenvolver e testar estratégia de trading com LLMs (IV) — Testar estratégia de trading

Integrar seu próprio LLM em EA (Parte 5): Desenvolver e testar estratégia de trading com LLMs (IV) — Testar estratégia de trading

Com o rápido desenvolvimento da inteligência artificial atualmente, os modelos de linguagem (LLMs) são uma parte importante da inteligência artificial, portanto devemos pensar em como integrar LLMs poderosos ao nosso trading algorítmico. Para a maioria das pessoas, é difícil ajustar esses modelos poderosos de acordo com suas necessidades, implantá-los localmente e, em seguida, aplicá-los ao trading algorítmico. Esta série de artigos adotará uma abordagem passo a passo para alcançar esse objetivo.
preview
Redes neurais em trading: Modelos com uso de wavelet transform e atenção multitarefa (Conclusão)

Redes neurais em trading: Modelos com uso de wavelet transform e atenção multitarefa (Conclusão)

No artigo anterior, exploramos os fundamentos teóricos e começamos a implementar as abordagens do framework Multitask-Stockformer, que combina wavelet transform e o modelo multitarefa Self-Attention. Damos continuidade à implementação dos algoritmos desse framework e avaliamos sua eficácia com dados históricos reais.
preview
Redes neurais em trading: Agente com memória em camadas

Redes neurais em trading: Agente com memória em camadas

As abordagens de memória em camadas, que imitam os processos cognitivos humanos, permitem processar dados financeiros complexos e se adaptar a novos sinais, o que contribui para decisões de investimento mais eficazes em mercados dinâmicos.
preview
Indicador do modelo CAPM no mercado Forex

Indicador do modelo CAPM no mercado Forex

Adaptação do modelo clássico CAPM para o mercado cambial Forex em MQL5. O indicador calcula a rentabilidade esperada e o prêmio de risco com base na volatilidade histórica. Os indicadores aumentam nos picos e nas depressões, refletindo os princípios fundamentais de precificação. Aplicação prática para estratégias contra a tendência e de seguimento de tendência, levando em conta a dinâmica da relação entre risco e rentabilidade em tempo real. Inclui o aparato matemático e a implementação técnica.
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
Redes neurais em trading: Sistema multiagente com confirmação conceitual (Conclusão)

Redes neurais em trading: Sistema multiagente com confirmação conceitual (Conclusão)

Continuamos a implementação das abordagens propostas pelos autores do framework FinCon. O FinCon é um sistema multiagente baseado em grandes modelos de linguagem (LLM). Hoje vamos implementar os módulos necessários e realizar testes abrangentes do modelo com dados históricos reais.
preview
Automatizando Estratégias de Trading em MQL5 (Parte 4): Construindo um Sistema de Recuperação por Zonas em Múltiplos Níveis

Automatizando Estratégias de Trading em MQL5 (Parte 4): Construindo um Sistema de Recuperação por Zonas em Múltiplos Níveis

Neste artigo, desenvolvemos um Sistema de Recuperação por Zonas em Múltiplos Níveis em MQL5 que utiliza o RSI para gerar sinais de negociação. Cada instância de sinal é adicionada dinamicamente a uma estrutura de array, permitindo que o sistema gerencie múltiplos sinais simultaneamente dentro da lógica de Zone Recovery. Por meio dessa abordagem, demonstramos como lidar de forma eficaz com cenários complexos de gerenciamento de trades, mantendo ao mesmo tempo um design de código escalável e robusto.
preview
Processos gaussianos em aprendizado de máquina: modelo de regressão em MQL5

Processos gaussianos em aprendizado de máquina: modelo de regressão em MQL5

Neste artigo, examinaremos os fundamentos dos processos gaussianos (PG) como um modelo probabilístico de aprendizado de máquina e demonstraremos sua aplicação em tarefas de regressão usando dados sintéticos como exemplo.
preview
Redes neurais em trading: Modelos de espaço de estados

Redes neurais em trading: Modelos de espaço de estados

A base de muitos dos modelos que examinamos anteriormente é a arquitetura Transformer. No entanto, eles podem ser ineficientes ao lidar com sequências longas. Neste artigo, proponho uma abordagem alternativa de previsão de séries temporais com base em modelos de espaço de estados.
preview
Redes neurais em trading: Modelo hiperbólico de difusão latente (HypDiff)

Redes neurais em trading: Modelo hiperbólico de difusão latente (HypDiff)

Esse artigo analisa formas de codificar dados brutos no espaço latente hiperbólico por meio de processos de difusão anisotrópicos. Isso ajuda a preservar com mais precisão as características topológicas da situação atual do mercado e melhora a qualidade de sua análise.
preview
Do básico ao intermediário: Classes (II)

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

Este artigo foi pensado para ser o mais didático possível. Isto porque o tema que será abordado aqui, por si só já gera muita confusão na cabeça de muita gente. Então meu caro leitor, procure experimentar na prática o que estará sendo visto aqui em forma de texto. E qualquer dúvida, não deixe de comentar. Pois de fato entender destructores não é uma das tarefas mais simples.
preview
Do básico ao intermediário: Recursos

Do básico ao intermediário: Recursos

Neste artigo você será apresentado a um conceito que pode ser de extrema utilidade em muitos casos. Facilitando em muito o compartilhamento de suas aplicações e projetos. Apesar de não ser um conceito muito simples de ser totalmente explicando em um único artigo. O que será explicado e exposto aqui, já nos irá permitir fazer diversas coisas no futuro. Inclusive algumas que de outra maneira não seriam possíveis de serem feitas. Justamente por que este artigo ainda não havia sido publicado, para que você, pudesse ter um material de apoio e uma base inicial de estudo.
preview
Redes neurais em trading: Modelos com uso de transformação wavelet e atenção multitarefa

Redes neurais em trading: Modelos com uso de transformação wavelet e atenção multitarefa

Apresentamos um framework que combina a transformação wavelet com um modelo multitarefa de Self-Attention, visando aumentar a responsividade e a precisão das previsões em cenários de mercado voláteis. A transformação wavelet permite decompor o retorno dos ativos em frequências altas e baixas, capturando com precisão as tendências de longo prazo do mercado e as flutuações de curto prazo.
preview
Construindo Expert Advisors Auto Otimizáveis em MQL5 (Parte 6): Prevenção de Stop Out

Construindo Expert Advisors Auto Otimizáveis em MQL5 (Parte 6): Prevenção de Stop Out

Junte-se a nós na discussão de hoje enquanto buscamos um procedimento algorítmico para minimizar o número total de vezes em que somos estopados em negociações vencedoras. O problema que enfrentamos é significativamente desafiador, e a maioria das soluções apresentadas em discussões da comunidade carece de regras fixas e bem definidas. Nossa abordagem algorítmica para resolver o problema aumentou a lucratividade de nossas negociações e reduziu nossa perda média por operação. No entanto, ainda há avanços a serem feitos para filtrar completamente todas as negociações que serão estopadas; nossa solução é um bom primeiro passo para qualquer pessoa experimentar.
preview
Redes neurais em trading: Pipeline inteligente de previsões (Mistura esparsa de especialistas)

Redes neurais em trading: Pipeline inteligente de previsões (Mistura esparsa de especialistas)

Propomos conhecer a implementação prática do bloco de mistura esparsa de especialistas para séries temporais no ambiente computacional OpenCL. No artigo, é analisado passo a passo o funcionamento da convolução multi-janela mascarada, bem como a organização do aprendizado por gradiente em condições de múltiplos fluxos de informação.
preview
Redes neurais de maneira fácil (Parte 74): previsão adaptativa de trajetórias

Redes neurais de maneira fácil (Parte 74): previsão adaptativa de trajetórias

Proponho a você conhecer um método bastante eficaz de previsão de trajetórias multiagentes, que é capaz de se adaptar a diferentes condições ambientais.
preview
Redes neurais em trading: Modelos de difusão direcionada (DDM)

Redes neurais em trading: Modelos de difusão direcionada (DDM)

Apresentamos os modelos de difusão direcionada, que utilizam ruídos anisotrópicos e direcionais, dependentes dos dados, no processo de propagação para frente, para capturar representações de grafos significativas.
preview
Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (I)

Do iniciante ao especialista: criação de um EA animado para notícias em MQL5 (I)

O acesso às notícias é um fator crítico ao operar no terminal MetaTrader 5. Apesar da existência de várias APIs de notícias, muitos traders enfrentam dificuldades para acessá-las e integrá-las de forma eficiente ao seu ambiente de negociação. Neste artigo, nosso objetivo é desenvolver uma solução otimizada que exiba as notícias diretamente no gráfico, onde elas são mais necessárias. Faremos isso criando o EA "Manchetes de Notícias", que monitora e exibe atualizações em tempo real a partir de APIs de notícias.
preview
Consultor Especialista Auto-Otimizável com MQL5 e Python (Parte V): Modelos de Markov Profundos

Consultor Especialista Auto-Otimizável com MQL5 e Python (Parte V): Modelos de Markov Profundos

Nesta discussão, aplicaremos uma Cadeia de Markov simples sobre um indicador RSI, para observar como o preço se comporta após o indicador atravessar níveis-chave. Concluímos que os sinais de compra e venda mais fortes no par NZDJPY são gerados quando o RSI está nas faixas de 11-20 e 71-80, respectivamente. Vamos demonstrar como você pode manipular seus dados para criar estratégias de trading ideais aprendidas diretamente a partir dos dados que possui. Além disso, mostraremos como treinar uma rede neural profunda para aprender a utilizar a matriz de transição de forma otimizada.
preview
Busca dialética — Dialectic Search (DA)

Busca dialética — Dialectic Search (DA)

Apresentamos o Algoritmo Dialético (DA), um novo método de otimização global inspirado no conceito filosófico de dialética. O algoritmo utiliza uma divisão única da população em pensadores especulativos e práticos. Os testes mostram um desempenho impressionante de até 98% em tarefas de baixa dimensionalidade e uma eficácia geral de 57,95%. Este artigo explica esses números e apresenta uma descrição detalhada do algoritmo e os resultados dos experimentos em diferentes tipos de funções.
preview
Redes neurais em trading: Integração da teoria do caos na previsão de séries temporais (Attraos)

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

O Attraos é um framework que integra a teoria do caos à previsão de séries temporais de longo prazo, tratando-as como projeções de sistemas dinâmicos caóticos multidimensionais. Por meio da invariância do atrator, o modelo aplica a reconstrução do espaço de fases e a memória dinâmica com múltiplas resoluções para preservar estruturas históricas.
preview
Criação de classes Python para trading no MetaTrader 5, análogas às apresentadas em MQL5

Criação de classes Python para trading no MetaTrader 5, análogas às apresentadas em MQL5

O pacote Python MetaTrader 5 oferece uma maneira simples de criar aplicativos de trading para a plataforma MetaTrader 5 na linguagem Python. Embora seja um módulo poderoso e útil, ele não é tão simples quanto a linguagem de programação MQL5 quando se trata de desenvolver soluções para trading algorítmico. Neste artigo, criaremos classes para trading análogas às oferecidas pela linguagem MQL5, a fim de criar uma sintaxe semelhante e tornar o desenvolvimento de robôs de trading em Python tão simples quanto em MQL5.
preview
Previsão no trading e modelos Grey

Previsão no trading e modelos Grey

Este artigo aborda a aplicação de modelos Grey à previsão de séries temporais financeiras. Vamos analisar os princípios de funcionamento dos modelos Grey e as particularidades de sua aplicação a séries financeiras. Também discutiremos as vantagens e limitações do uso desses modelos em trading.
preview
Simulação de mercado: Position View (VIII)

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

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