Artigos sobre programação nas linguagens MQL4 e 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: Otimização de LSTM para fins de previsão de séries temporais multivariadas (DA-CG-LSTM)

Redes neurais em trading: Otimização de LSTM para fins de previsão de séries temporais multivariadas (DA-CG-LSTM)

Este artigo apresenta o algoritmo DA-CG-LSTM, que propõe novas abordagens para análise e previsão de séries temporais. Você verá como mecanismos de atenção inovadores e a flexibilidade da arquitetura contribuem para o aumento da precisão das previsões.
preview
Redes neurais de maneira fácil (Parte 95): Redução do consumo de memória em modelos Transformer

Redes neurais de maneira fácil (Parte 95): Redução do consumo de memória em modelos Transformer

Os modelos baseados na arquitetura Transformer demonstram alta eficiência, mas seu uso é dificultado pelos altos custos de recursos, tanto na fase de treinamento quanto durante a utilização prática. Neste artigo, proponho conhecer algoritmos que permitem reduzir o uso de memória por esses modelos.
preview
Avaliação da qualidade da negociação de spreads por fatores de sazonalidade no mercado Forex no terminal MetaTrader 5

Avaliação da qualidade da negociação de spreads por fatores de sazonalidade no mercado Forex no terminal MetaTrader 5

O artigo aborda a avaliação da qualidade de uma abordagem de negociação sazonal no timeframe diário, tanto para símbolos individuais quanto para spreads. É dada atenção especial à identificação de ciclos mensais recorrentes e às possibilidades de sua aplicação na negociação ao longo do ano corrente.
preview
Do básico ao intermediário: Objetos (II)

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

Neste artigo veremos como controlar de forma simples via código algumas propriedades de objetos. Vermos como podemos colocar mais de um objeto em um mesmo gráfico, usando para isto uma aplicação. E além disto, começaremos a ver a importância de definir um nome curto, para todo e qualquer indicador que venhamos a implementar.
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
Simulação de mercado: Position View (XVI)

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

Neste artigo, faremos as modificações necessárias para que o indicador de posição venha a nos apresentar um resultado financeiro. Isto para que o operador, possa ter uma noção do financeiro que estaria sendo obtido em uma posição aberta. Além deste objetivo, aqui trarei para você, um conhecimento que muitos não tem. Mesmo fazendo uso da linguagem MQL5 a muito tempo. Tal conhecimento é justamente como fazer uso de variáveis estáticas, para conseguir um compartilhamento de memória. Isto para evitar declarar uma variável global no código principal.
preview
Métodos de conjunto para aprimorar previsões numéricas em MQL5

Métodos de conjunto para aprimorar previsões numéricas em MQL5

Neste artigo, apresentamos a implementação de vários métodos de aprendizagem de conjunto em MQL5 e examinamos sua eficácia em diferentes cenários.
preview
Algoritmo de otimização baseado em brainstorming — Brain Storm Optimization (Parte II): Multimodalidade

Algoritmo de otimização baseado em brainstorming — Brain Storm Optimization (Parte II): Multimodalidade

Na segunda parte do artigo, vamos para a implementação prática do algoritmo BSO, realizaremos testes com funções de teste e compararemos a eficiência do BSO com outros métodos de otimização.
preview
Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 8): Desenvolvimento de Expert Advisor (I)

Construindo um Modelo de Restrição de Tendência com Candlestick (Parte 8): Desenvolvimento de Expert Advisor (I)

Nesta discussão, vamos criar nosso primeiro Expert Advisor em MQL5 com base no indicador que fizemos no artigo anterior. Vamos cobrir todas as funcionalidades necessárias para tornar o processo automático, incluindo o gerenciamento de riscos. Isso beneficiará extensivamente os usuários ao avançarem da execução manual de negociações para sistemas automatizados.
preview
Do básico ao intermediário: Array (IV)

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

Neste artigo iremos ver como podemos fazer algo muito parecido com o encontrado em linguagens como C, C++ e Java. Onde podemos enviar um número quase infinito de parâmetros para dentro de uma função ou procedimento. Apesar de aparentemente ser um tópico avançado. Na minha visão, o que será visto aqui, pode muito bem ser implementado por qualquer iniciante. Desde que ele tenha compreendido os conceitos vistos arteriormente. 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
Ganhe Vantagem em Qualquer Mercado (Parte IV): Índices de Volatilidade do Euro e do Ouro da CBOE

Ganhe Vantagem em Qualquer Mercado (Parte IV): Índices de Volatilidade do Euro e do Ouro da CBOE

Vamos analisar dados alternativos selecionados pela Chicago Board Of Options Exchange (CBOE) para melhorar a precisão de nossas redes neurais profundas ao prever o símbolo XAUEUR.
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
Análise de Sentimento no Twitter com Sockets

Análise de Sentimento no Twitter com Sockets

Este inovador bot de negociação integra o MetaTrader 5 com Python para aproveitar a análise de sentimento em tempo real nas mídias sociais para decisões automatizadas de negociação. Ao analisar o sentimento no Twitter relacionado a instrumentos financeiros específicos, o bot traduz as tendências das mídias sociais em sinais acionáveis de negociação. Ele utiliza uma arquitetura cliente-servidor com comunicação via socket, permitindo uma interação contínua entre as capacidades de negociação do MT5 e o poder de processamento de dados do Python.
preview
Funcionalidades do Assistente MQL5 que você precisa conhecer (Parte 30): Normalização em Lote no Aprendizado de Máquina

Funcionalidades do Assistente MQL5 que você precisa conhecer (Parte 30): Normalização em Lote no Aprendizado de Máquina

A normalização em lote é um pré-processamento dos dados antes de sua entrada em um algoritmo de aprendizado de máquina, como uma rede neural. Ao aplicá-la, é essencial levar em conta o tipo de ativação que será usado pelo algoritmo. Exploraremos diferentes abordagens para extrair vantagens com um EA construído no Assistente.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 50): Awesome Oscillator

Técnicas do MQL5 Wizard que você deve conhecer (Parte 50): Awesome Oscillator

O Awesome Oscillator é outro indicador de Bill Williams que é usado para medir o momentum. Ele pode gerar múltiplos sinais e, portanto, revisamos estes com base em padrões, como em artigos anteriores, aproveitando as classes e a montagem do MQL5 wizard.
preview
Desenvolvendo um sistema de Replay (Parte 54): O nascimento do primeiro módulo

Desenvolvendo um sistema de Replay (Parte 54): O nascimento do primeiro módulo

Neste artigo, iremos ver como construir o primeiro dos módulos, realmente funcional a fim de ser utilizado no sistema de replay / simulador. Além de ter como proposito geral servir para outras coisas também. O módulo que será construído aqui será o do indicador de mouse.
preview
Teoria das Categorias em MQL5 (Parte 7): Domínios Multiconjuntos, Relativos e Indexados.

Teoria das Categorias em MQL5 (Parte 7): Domínios Multiconjuntos, Relativos e Indexados.

A teoria das categorias é um ramo diversificado e em expansão da matemática que só recentemente começou a ser abordado na comunidade MQL5. Esta série de artigos tem como objetivo analisar alguns de seus conceitos para criar uma biblioteca aberta e utilizar ainda mais essa maravilhosa seção na criação de estratégias de negociação.
preview
Do básico ao intermediário: Struct (II)

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

Neste artigo iremos entender por que estrutura foram criadas em linguagens de programação como o MQL5. Assim como também por que alguns momentos, estruturas formas ideais de transferir valores entre funções e procedimentos. Enquanto em outros momentos, elas podem não ser a melhor forma de se fazer isto.
preview
Técnicas do MQL5 Wizard que você precisa conhecer (Parte 36): Q-Learning com Cadeias de Markov

Técnicas do MQL5 Wizard que você precisa conhecer (Parte 36): Q-Learning com Cadeias de Markov

Aprendizado por Reforço é um dos três pilares principais do aprendizado de máquina, ao lado do aprendizado supervisionado e do aprendizado não supervisionado. Portanto, ele está relacionado ao controle ótimo, ou seja, aprender a melhor política de longo prazo que melhor se adeque à função objetivo. É nesse contexto que exploramos seu possível papel no processo de aprendizado de uma MLP (rede neural de múltiplas camadas) de um Expert Advisor montado pelo assistente do MQL5 Wizard.
preview
Do básico ao intermediário: Eventos em Objetos (I)

Do básico ao intermediário: Eventos em Objetos (I)

Neste artigo irei ver três dos seis eventos que podem ser disparado pelo MetaTrader 5, quando algo acontece a um objeto presente no gráfico. Estes evento são muito uteis quando o assunto é interação com o usuário. Isto por que sem entender estes eventos, você irá ter muito mais trabalho para manter uma certa configuração no gráfico. Tentando controlar objetos com finalidades específicas.
preview
Redes neurais em trading: Modelo adaptativo multiagente (Conclusão)

Redes neurais em trading: Modelo adaptativo multiagente (Conclusão)

No artigo anterior, conhecemos o framework adaptativo multiagente MASA, que combina abordagens de aprendizado por reforço com estratégias adaptativas, garantindo um equilíbrio harmônico entre lucratividade e riscos em condições turbulentas de mercado. Implementamos o funcional de agentes individuais deste framework, e neste artigo continuaremos o trabalho iniciado, levando-o à sua conclusão lógica.
preview
Desenvolvimento de estratégias de trading de tendência baseadas em aprendizado de máquina

Desenvolvimento de estratégias de trading de tendência baseadas em aprendizado de máquina

Neste artigo é proposto um método original para o desenvolvimento de estratégias de tendência. Você aprenderá como é possível fazer a anotação dos exemplos de treinamento e treinar classificadores com base neles. O resultado final são sistemas de trading prontos para uso, operando sob o controle do terminal MetaTrader 5.
preview
Redes neurais em trading: Previsão de séries temporais com o auxílio da decomposição modal adaptativa (ACEFormer)

Redes neurais em trading: Previsão de séries temporais com o auxílio da decomposição modal adaptativa (ACEFormer)

Propomos conhecer a arquitetura ACEFormer, uma solução moderna que combina a eficiência da atenção probabilística com a decomposição adaptativa de séries temporais. O material será útil para quem busca um equilíbrio entre desempenho computacional e precisão de previsão nos mercados financeiros.
preview
Algoritmo de ecolocalização de golfinhos — Dolphin Echolocation Algorithm (DEA)

Algoritmo de ecolocalização de golfinhos — Dolphin Echolocation Algorithm (DEA)

Neste artigo, analisaremos detalhadamente o algoritmo DEA, um método metaheurístico de otimização inspirado na capacidade única dos golfinhos de encontrar presas por meio da ecolocalização. Das bases matemáticas à implementação prática em MQL5, da análise à comparação com algoritmos clássicos, vamos examinar minuciosamente por que esse método relativamente jovem merece um lugar no arsenal de quem enfrenta tarefas de otimização.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 21): Testando com Dados do Calendário Econômico

Técnicas do MQL5 Wizard que você deve conhecer (Parte 21): Testando com Dados do Calendário Econômico

Os dados do Calendário Econômico não estão disponíveis para testes com Expert Advisors no Strategy Tester, por padrão. Vamos explorar como bancos de dados poderiam ajudar a contornar essa limitação. Portanto, neste artigo, exploramos como os bancos de dados SQLite podem ser usados para arquivar notícias do Calendário Econômico, de modo que os Expert Advisors montados pelo Wizard possam usá-los para gerar sinais de trade.
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
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
Teoria das Categorias em MQL5 (Parte 21): Transformações naturais com LDA

Teoria das Categorias em MQL5 (Parte 21): Transformações naturais com LDA

Este artigo, o 21º de nossa série, continua nossa análise das transformações naturais e de como elas podem ser implementadas usando a análise discriminante linear. Assim como no artigo anterior, a implementação é apresentada no formato de uma classe de sinal.
preview
Importância da qualidade do gerador de números aleatórios no desempenho dos algoritmos de otimização

Importância da qualidade do gerador de números aleatórios no desempenho dos algoritmos de otimização

Neste artigo, analisaremos o gerador de números aleatórios Mersenne Twister e o compararemos com o gerador padrão do MQL5. Veremos como a qualidade dos geradores de números aleatórios influencia os resultados dos algoritmos de otimização.
preview
Desenvolvendo um EA multimoeda (Parte 7): Seleção de grupos considerando o período forward

Desenvolvendo um EA multimoeda (Parte 7): Seleção de grupos considerando o período forward

Anteriormente, ao selecionar grupos de estratégias de trading para melhorar os resultados combinados, avaliamos os grupos apenas no mesmo período utilizado para a otimização dos EAs individuais. Vamos agora observar o que acontece ao aplicar a seleção no período forward.
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
Engenharia de Recursos com Python e MQL5 (Parte III): Ângulo do Preço (2) Coordenadas Polares

Engenharia de Recursos com Python e MQL5 (Parte III): Ângulo do Preço (2) Coordenadas Polares

Neste artigo, fazemos nossa segunda tentativa de converter as variações nos níveis de preço em qualquer mercado em uma variação correspondente de ângulo. Desta vez, selecionamos uma abordagem matematicamente mais sofisticada do que a escolhida em nossa primeira tentativa, e os resultados que obtivemos sugerem que a mudança de abordagem pode ter sido a decisão correta Junte-se a nós hoje, enquanto discutimos como podemos usar coordenadas polares para calcular o ângulo formado pelas variações nos níveis de preço, de forma significativa, independentemente de qual mercado você esteja analisando.
preview
Do iniciante ao especialista: Criação de um EA animado para notícias em MQL5 (VIII): botões de negociação rápida para trading de notícias

Do iniciante ao especialista: Criação de um EA animado para notícias em MQL5 (VIII): botões de negociação rápida para trading de notícias

Enquanto os sistemas algorítmicos de trading gerenciam operações automatizadas, muitos traders de notícias e scalpers preferem manter controle ativo durante eventos importantes de notícias e condições de mercado que mudam rapidamente, exigindo execução e gestão rápidas das ordens. Isso evidencia a necessidade de ferramentas de interface intuitivas que integrem feeds de notícias em tempo real, dados do calendário econômico, leituras dos indicadores, análises baseadas em IA e gestão adaptativa do trading.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 13): DBSCAN para a Classe de Sinais de Expert

Técnicas do MQL5 Wizard que você deve conhecer (Parte 13): DBSCAN para a Classe de Sinais de Expert

Clustering Espacial Baseado em Densidade para Aplicações com Ruído é uma forma não supervisionada de agrupar dados que dificilmente requer parâmetros de entrada, exceto por apenas 2, o que, quando comparado a outras abordagens como k-means, é uma vantagem. Vamos explorar como isso pode ser construtivo para testar e, eventualmente, negociar com Expert Advisers montados no Wizard.
preview
Do básico ao intermediário: Precedência de operadores

Do básico ao intermediário: Precedência de operadores

Este é com toda a certeza, o assunto mais complicado de explicar somente utilizando a parte teórica do mesmo. Sendo assim, aconselho a você, meu caro leitor, procurar praticar o que será mostrado aqui. Mesmo quando tudo parece simples a principio, esta questão sobre operadores, de fato, somente será bem compreendida com a pratica aliada ao estudo constante. 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
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.
preview
Redes neurais em trading: Ator–Diretor–Crítico (Actor–Director–Critic)

Redes neurais em trading: Ator–Diretor–Crítico (Actor–Director–Critic)

Propomos conhecer o framework Actor-Director-Critic, que combina aprendizado hierárquico e uma arquitetura com múltiplos componentes para criar estratégias de trading adaptativas. Neste artigo, analisamos em detalhe como o uso do Diretor para classificar as ações do Ator ajuda a otimizar decisões de trading de forma eficiente e a aumentar a robustez dos modelos nas condições dos mercados financeiros.
preview
Replay e Simulação de mercado: Gran Finale

Replay e Simulação de mercado: Gran Finale

Bem, finalmente chegamos a um sistema de replay/simulador, que você, meu caro e paciente leitor, pode finalmente usufruir. Sei que muitos poderiam imaginar que seria feito mais artigos, explicando mais pontos do sistema. As partes faltantes são simples de serem implementadas. Mas mesmo assim, será algo que lhe mostrará o qual preparado você de fato está.
preview
Hibridização de algoritmos populacionais. Estruturas sequenciais e paralelas

Hibridização de algoritmos populacionais. Estruturas sequenciais e paralelas

Aqui, vamos mergulhar no mundo da hibridização de algoritmos de otimização, analisando três tipos principais: mistura de estratégias, hibridização sequencial e paralela. Realizaremos uma série de experimentos combinando e testando algoritmos de otimização relevantes.
preview
Reimaginando Estratégias Clássicas em MQL5 (Parte II): FTSE100 e Títulos Públicos do Reino Unido

Reimaginando Estratégias Clássicas em MQL5 (Parte II): FTSE100 e Títulos Públicos do Reino Unido

Nesta série de artigos, exploramos estratégias de negociação populares e tentamos melhorá-las usando IA. No artigo de hoje, revisitamos a estratégia clássica de negociação baseada na relação entre o mercado de ações e o mercado de títulos.