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
Desenvolvendo um sistema de Replay (Parte 71): Acertando o tempo (IV)

Desenvolvendo um sistema de Replay (Parte 71): Acertando o tempo (IV)

Aqui neste artigo, mostrarei como implementar o que foi visto no artigo passado, dentro do serviço de replay/simulação. Mas como tudo nesta vida, costuma dar algum tipo de problema. Aqui não foi uma exceção. Então acompanhe o artigo e veja o que será tema para o próximo artigo desta serie. 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
Teoria das Categorias em MQL5 (Parte 5): Equalizadores

Teoria das Categorias em MQL5 (Parte 5): Equalizadores

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
Redes neurais de maneira fácil (Parte 93): Previsão adaptativa nas áreas de frequência e tempo (Conclusão)

Redes neurais de maneira fácil (Parte 93): Previsão adaptativa nas áreas de frequência e tempo (Conclusão)

Neste artigo, continuamos a implementação das abordagens do ATFNet — um modelo que adapta e combina os resultados de 2 blocos (frequencial e temporal) de previsão de séries temporais.
preview
Modelos ocultos de Markov para previsão de volatilidade com consideração de tendência

Modelos ocultos de Markov para previsão de volatilidade com consideração de tendência

Os modelos ocultos de Markov (HMM) são uma poderosa ferramenta estatística que permite identificar estados ocultos do mercado com base na análise de movimentos observáveis dos preços. No trading, os HMM permitem melhorar a previsão da volatilidade e são aplicados no desenvolvimento de estratégias de tendência, modelando as mudanças nos regimes de mercado. Neste artigo, apresentaremos um processo passo a passo para o desenvolvimento de uma estratégia de seguimento de tendência que utiliza HMM como filtro para previsão de volatilidade.
preview
Dados de mercado sem intermediários: conectando MetaTrader 5 à MOEX via ISS API

Dados de mercado sem intermediários: conectando MetaTrader 5 à MOEX via ISS API

Este artigo propõe uma solução para integrar o MetaTrader 5 com o serviço web ISS da MOEX. São fornecidas utilidades para geração automática de códigos-fonte com base no diretório da API e no índice dos principais elementos do serviço.
preview
Redes neurais em trading: Modelos "leves" para previsão de séries temporais

Redes neurais em trading: Modelos "leves" para previsão de séries temporais

Os modelos leves para previsão de séries temporais oferecem alto desempenho utilizando uma quantidade mínima de parâmetros. Isso reduz o consumo de recursos computacionais e acelera a tomada de decisões. Ao mesmo tempo, eles alcançam qualidade de previsão comparável à de modelos mais complexos.
preview
Aprendendo MQL5 do iniciante ao profissional (Parte V): Principais operadores de redirecionamento do fluxo de comandos

Aprendendo MQL5 do iniciante ao profissional (Parte V): Principais operadores de redirecionamento do fluxo de comandos

Este artigo analisa os principais operadores para alterar o fluxo de execução: condições, laços e o operador switch. O uso desses operadores adicionará às funções que criamos a capacidade de agir de maneira "inteligente".
preview
Desenvolvendo um sistema de Replay (Parte 26): Projeto Expert Advisor — Classe C_Terminal

Desenvolvendo um sistema de Replay (Parte 26): Projeto Expert Advisor — Classe C_Terminal

Talvez já podemos começar a desenvolver um Expert Advisor a ser utilizado no replay / simulação. Mas não iremos criar qualquer coisa, este precisará ser algo um pouco mais bem elaborado. Mas não nos deixemos nos levar pelo grau de dificuldade neste primeiro momento. Temos de começar a fazer as coisas partindo de algum ponto. Caso contrário apenas iremos nos conformar, imaginando o qual difícil o desafio é, sem ao menos tentarmos de fato superar este obstáculo. Vida de programador de fato é isto: Encontrar um obstáculo e tentar superar ele, via estudo, testes e bastante pesquisa.
preview
Rede neural na prática: Esboçando um neurônio

Rede neural na prática: Esboçando um neurônio

Neste artigo, faremos a confecção de um neurônio básico. Apesar de ele ser algo simples, e muitos acharem que o código é totalmente bobo e sem nenhum propósito. Quero que você, meu caro leitor, e entusiasta pelo tema de redes neurais. Brinque e se divirta estudando este simples esboço de neurônio. Não precisa ficar com receio de mexer no código a fim de entender o mesmo.
preview
Desenvolvendo um sistema de Replay (Parte 39): Pavimentando o Terreno (III)

Desenvolvendo um sistema de Replay (Parte 39): Pavimentando o Terreno (III)

Antes de começarmos a segunda fase de desenvolvimento, é preciso reforçar algumas ideias. Então você sabe como forçar o MQL5 a fazer o que é preciso ser feito ?!?! Já tentou ir além do que a documentação informar ?!?! Se não. Se prepare. Pois irei começar a fazer coisas muito além do que grande parte faz normalmente.
preview
Criando um painel de administração de trading em MQL5 (Parte VI): Painel de controle de trading (II)

Criando um painel de administração de trading em MQL5 (Parte VI): Painel de controle de trading (II)

Neste artigo, vamos melhorar o painel de controle de trading do nosso painel administrativo multifuncional. Apresentaremos uma função auxiliar poderosa, que simplifica o código, tornando-o mais legível, fácil de manter e eficiente. Também mostraremos como integrar botões adicionais e aprimorar facilmente a interface para atender a um espectro mais amplo de tarefas de trading. Seja para gerenciar posições, ajustar ordens ou facilitar a interação com o usuário, este guia ajudará você a desenvolver um painel de controle de trading confiável e prático.
preview
Algoritmos de otimização populacionais: Algoritmo de mudas, semeadura e crescimento (SSG)

Algoritmos de otimização populacionais: Algoritmo de mudas, semeadura e crescimento (SSG)

O algoritmo de “mudas, semeadura e crescimento” (Saplings Sowing and Growing up, SSG) é inspirado em um dos organismos mais resistentes do planeta, um exemplo notável de sobrevivência em inúmeras condições.
preview
Redes neurais em trading: Aumentando a eficiência do Transformer por meio da redução da nitidez (SAMformer)

Redes neurais em trading: Aumentando a eficiência do Transformer por meio da redução da nitidez (SAMformer)

O treinamento de modelos Transformer exige grandes volumes de dados e muitas vezes é dificultado pela fraca capacidade dos modelos de generalizar em amostras pequenas. O framework SAMformer ajuda a resolver esse problema ao evitar mínimos locais ruins. E aumenta a eficiência dos modelos mesmo em conjuntos de treinamento limitados.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 03): Entropia de Shannon

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 03): Entropia de Shannon

O trader de hoje é um filomata que está quase sempre procurando novas ideias, experimentando-as, escolhendo modificá-las ou descartá-las; um processo exploratório que deve custar uma quantidade razoável de diligência. Esta série de artigos proporá que o assistente MQL5 deve ser um esteio para os traders.
preview
Algoritmos de otimização populacionais: Algoritmo semelhante ao eletromagnetismo (EM)

Algoritmos de otimização populacionais: Algoritmo semelhante ao eletromagnetismo (EM)

O artigo descreve os princípios, os métodos e as possibilidades de aplicação do EM a diferentes problemas de otimização. Ele uma ferramenta de otimização eficiente, capaz de lidar com grandes quantidades de dados e funções multidimensionais.
preview
Redes neurais de maneira fácil (Parte 42): Procrastinação do modelo, causas e métodos de resolução

Redes neurais de maneira fácil (Parte 42): Procrastinação do modelo, causas e métodos de resolução

A procrastinação de modelos no contexto do aprendizado por reforço pode ser causada por vários motivos, e a solução desse problema requer medidas apropriadas. Este artigo discute algumas das possíveis causas da procrastinação do modelo e métodos para superá-las.
preview
Redes neurais de maneira fácil (Parte 57): Stochastic Marginal Actor-Critic (SMAC)

Redes neurais de maneira fácil (Parte 57): Stochastic Marginal Actor-Critic (SMAC)

Apresentamos um algoritmo relativamente novo, o Stochastic Marginal Actor-Critic (SMAC), que permite a construção de políticas de variáveis latentes no contexto da maximização da entropia.
preview
Construindo um Modelo de Restrição de Tendência de Candlestick (Parte 4): Personalizando o Estilo de Exibição para Cada Onda de Tendência

Construindo um Modelo de Restrição de Tendência de Candlestick (Parte 4): Personalizando o Estilo de Exibição para Cada Onda de Tendência

Neste artigo, exploraremos as capacidades da poderosa linguagem MQL5 na criação de vários estilos de indicadores no MetaTrader 5. Também analisaremos os scripts e como eles podem ser utilizados em nosso modelo.
preview
Redes neurais em trading:  Modelos híbridos de sequências de grafos (Conclusão)

Redes neurais em trading: Modelos híbridos de sequências de grafos (Conclusão)

Seguimos o estudo de modelos híbridos de sequências de grafos (GSM++), que integram as vantagens de diferentes arquiteturas e garantem alta precisão na análise, além de uso eficiente dos recursos computacionais. Esses modelos identificam, de maneira eficaz, padrões ocultos, reduzindo o impacto do ruído de mercado e elevando a qualidade das previsões.
preview
Aplicação da teoria dos jogos em algoritmos de trading

Aplicação da teoria dos jogos em algoritmos de trading

Criamos um Expert Advisor adaptativo e autodidata, baseado em aprendizado de máquina DQN com inferência causal multidimensional. Ele negociará com sucesso simultaneamente em sete pares de moedas, enquanto os agentes de diferentes pares trocarão informações entre si.
preview
Simulação de mercado: Position View (I)

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

O conteúdo, que veremos a partir de agora, é muito mais complicado em termos de teorias e conceitos. Tentarei deixar o conteúdo o mais simples quanto for possível fazer. A parte referente a programação em si. É até bastante simples e direta. Mas se você não compreender toda a teórica, que está debaixo dos panos. Ficará completamente sem meios para poder melhorar, ou mesmo adaptar o sistema de replay/simulador. A algo diferente do que irei mostrar. Meu intuito não é que você simplesmente compile e use o código que estou mostrando. Quero que você aprenda, entenda e se possível, possa criar algo ainda melhor.
preview
Redes neurais de maneira fácil (Parte 24): Melhorando a ferramenta para transferência de aprendizado

Redes neurais de maneira fácil (Parte 24): Melhorando a ferramenta para transferência de aprendizado

No último artigo, elaboramos uma ferramenta para criar e editar a arquitetura de redes neurais. E hoje quero convidá-lo a continuar trabalhando nela, para torná-la mais amigável. De certa forma, ao fazer isso, estamos nos afastando um pouco do nosso tópico. Mas convenhamos que a organização do espaço de trabalho desempenha um papel importante na obtenção do resultado.
preview
Algoritmos de otimização populacionais: enxame de pássaros (Bird Swarm Algorithm, BSA)

Algoritmos de otimização populacionais: enxame de pássaros (Bird Swarm Algorithm, BSA)

O artigo explora o BSA, um algoritmo baseado no comportamento das aves, inspirado na interação coletiva das aves em bando na natureza. Diferentes estratégias de busca dos indivíduos no BSA, incluindo a alternância entre comportamento de voo, vigilância e procura de alimento, tornam esse algoritmo multifacetado. Ele utiliza os princípios de comportamento de bando, comunicação, adaptabilidade, liderança e acompanhamento das aves para a busca eficaz de soluções ótimas.
preview
Algoritmos de otimização populacionais: Algoritmo de pesquisa gravitacional (GSA)

Algoritmos de otimização populacionais: Algoritmo de pesquisa gravitacional (GSA)

O GSA é um algoritmo populacional inspirado na natureza inanimada. Sua capacidade de modelar com alta precisão a interação entre corpos físicos, através da lei da gravidade de Newton incorporada no algoritmo, permite contemplar um espetáculo fascinante de dança entre sistemas planetários e aglomerados galácticos, representado de forma impressionante em animações. Hoje vamos discutir um dos algoritmos de otimização mais interessantes e originais. Um simulador de movimento de objetos espaciais está incluído.
preview
Paradigmas de programação (Parte 1): Abordagem procedural para desenvolvimento de Expert Advisors com base na dinâmica de preços

Paradigmas de programação (Parte 1): Abordagem procedural para desenvolvimento de Expert Advisors com base na dinâmica de preços

Aprenda sobre paradigmas de programação e suas aplicações no código MQL5. Neste artigo, exploramos as características da programação procedural, além de oferecer exemplos práticos. Você aprenderá como desenvolver um Expert Advisor baseado na dinâmica de preços (Price Action), utilizando o indicador EMA e dados de velas. Além disso, o artigo apresenta o paradigma da programação funcional.
preview
Do básico ao intermediário: Operadores

Do básico ao intermediário: Operadores

Neste artigo vamos ver um pouco sobre os operadores básicos. Apesar de ser um assunto bem fácil de ser compreendido. Existem alguns pequenos detalhes, que fazem muita diferença na hora de colocar expressões matemáticas em formato de código. Sem entender de maneira adequada tais detalhes. Muitos programadores com quase nenhuma experiência, acabam desistindo de tentar criar suas próprias soluções.
preview
Criando um algoritmo de market making no MQL5

Criando um algoritmo de market making no MQL5

Como funcionam os market makers no mercado? Vamos explorar isso e criar um algoritmo simples de market making.
preview
Desenvolvendo um sistema de Replay (Parte 59): Um novo futuro

Desenvolvendo um sistema de Replay (Parte 59): Um novo futuro

O correto entendimento das coisas, nos permite fazer mais e com menos esforço. Neste artigo irei explicar por que temos que temporizar a colocação do template, antes do serviço realmente começar a mexer no gráfico. Além disto, que tal melhorar o indicador de mouse, para podermos fazer mais coisas com ele.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 04): Análise discriminante linear

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 04): Análise discriminante linear

O trader moderno está quase sempre à procura de novas ideias. Para isso, tenta novas estratégias, modifica e descarta aquelas que não funcionam. Nesta série de artigos, tentarei provar que o assistente MQL5 é a verdadeira espinha dorsal de um trader moderno.
preview
Desenvolvendo um sistema de Replay (Parte 56): Adequando os Módulos

Desenvolvendo um sistema de Replay (Parte 56): Adequando os Módulos

Apesar dos módulos estarem se comunicando de maneira adequada, existe uma falha quando é tentado usar o indicador de mouse no serviço de replay. Precisamos corrigir isto agora, antes de dar o próximo passo. Além disto, havia uma falha que finalmente foi devidamente corrigida no código do indicador de mouse. Então esta versão finalmente se tornou estável, e devidamente finalizada.
preview
Algoritmos de otimização populacionais: otimização de dinâmica espiral (Spiral Dynamics Optimization, SDO)

Algoritmos de otimização populacionais: otimização de dinâmica espiral (Spiral Dynamics Optimization, SDO)

Neste artigo examinaremos a otimização de dinâmica espiral (SDO), um algoritmo de otimização baseado nos padrões de trajetórias espirais presentes na natureza, como nas conchas de moluscos. O algoritmo proposto pelos autores foi completamente repensado e modificado por mim, e o artigo discutirá por que essas mudanças foram necessárias.
preview
Redes neurais de maneira fácil (Parte 44): Explorando habilidades de forma dinâmica

Redes neurais de maneira fácil (Parte 44): Explorando habilidades de forma dinâmica

No artigo anterior, apresentamos o método DIAYN, que oferece um algoritmo para aprender uma variedade de habilidades. O uso das habilidades adquiridas pode ser usado para diversas tarefas. Mas essas habilidades podem ser bastante imprevisíveis, o que pode dificultar seu uso. Neste artigo, veremos um algoritmo para ensinar habilidades previsíveis.
preview
Algoritmo de otimização por reações químicas — Chemical Reaction Optimisation, CRO (Parte II): Montagem e resultados

Algoritmo de otimização por reações químicas — Chemical Reaction Optimisation, CRO (Parte II): Montagem e resultados

Na segunda parte do artigo, reuniremos os operadores químicos em um único algoritmo e apresentaremos uma análise detalhada de seus resultados. Descobriremos como o método de otimização por reações químicas (CRO) superou o desafio de resolver problemas complexos em funções de teste.
preview
Desenvolvendo um EA multimoeda (Parte 12): Gerenciamento de Risco como em empresas de prop trading

Desenvolvendo um EA multimoeda (Parte 12): Gerenciamento de Risco como em empresas de prop trading

No EA em desenvolvimento, já temos um mecanismo de controle de rebaixamento implementado. No entanto, ele tem uma natureza probabilística, pois se baseia nos resultados de testes com dados históricos de preços. Assim, o rebaixamento, embora com pequena probabilidade, às vezes pode exceder os valores máximos esperados. Vamos tentar adicionar um mecanismo que garanta a manutenção de um nível de rebaixamento predefinido.
preview
Redefinindo os Indicadores MQL5 e MetaTrader 5

Redefinindo os Indicadores MQL5 e MetaTrader 5

Uma abordagem inovadora para coletar informações de indicadores em MQL5 permite uma análise de dados mais flexível e simplificada, ao possibilitar que os desenvolvedores passem entradas personalizadas para os indicadores para cálculos imediatos. Essa abordagem é particularmente útil para o trading algorítmico, pois fornece maior controle sobre as informações processadas pelos indicadores, indo além das restrições tradicionais.
preview
Processos não estacionários e regressão espúria

Processos não estacionários e regressão espúria

O objetivo do artigo é demonstrar a ocorrência de falsa regressão quando se aplica a análise de regressão a processos não estacionários, utilizando simulação pelo método de Monte Carlo.
preview
Engenharia de Features com Python e MQL5 (Parte I): Previsão de Médias Móveis para Modelos de IA de Longo Alcance

Engenharia de Features com Python e MQL5 (Parte I): Previsão de Médias Móveis para Modelos de IA de Longo Alcance

As médias móveis são, de longe, os melhores indicadores para nossos modelos de IA preverem. No entanto, podemos melhorar ainda mais nossa precisão transformando cuidadosamente nossos dados. Este artigo demonstrará como você pode construir Modelos de IA capazes de prever mais longe no futuro do que você talvez pratique atualmente, sem quedas significativas nos níveis de precisão. É realmente notável como as médias móveis são úteis.
preview
Do básico ao intermediário: Variáveis (I)

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

Muitos programadores em inicio tem muitas dificuldades em compreender, por que seus códigos não funcionam como eles esperam. Existem muitos detalhes que torna um código de fato funcional. Não é somente digitar toda uma série de funções e operação que faz um código funciona. Então que tão aprender da maneira correta, como se cria um código real. Ao invés de ficar copiando e colando partes de código encontrados aqui e ali? 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 XI): Cruzamento de Médias Móveis (II)

Reimaginando Estratégias Clássicas (Parte XI): Cruzamento de Médias Móveis (II)

As médias móveis e o oscilador estocástico podem ser usados para gerar sinais de negociação de tendência. No entanto, esses sinais só serão observados após a ação do preço ter ocorrido. Podemos superar efetivamente essa defasagem inerente dos indicadores técnicos usando IA. Este artigo ensinará como criar um Expert Advisor totalmente autônomo com IA, de forma a melhorar qualquer uma de suas estratégias de negociação existentes. Até mesmo a estratégia de negociação mais antiga possível pode ser aprimorada.
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?