Artigos sobre como programar e utilizar robôs de negociação na linguagem MQL5

icon

Os experts que os desenvolvedores criam para o MetaTrader realizam uma grande variedade de tarefas. Entre elas estão o monitoramento de muitos instrumentos financeiros 24h por dia, a cópia de operações, a criação e o envio de relatórios, a análise de notícias e até mesmo o acesso dos traders à sua própria interface gráfica personalizada.

Os artigos podem abordar técnicas de programação, ideias matemáticas para processamento de dados, dicas para criar e encomendar robôs de negociação.

Novo artigo
recentes | melhores
preview
Redes neurais de maneira fácil (Parte 39): Go-Explore - uma abordagem diferente para exploração

Redes neurais de maneira fácil (Parte 39): Go-Explore - uma abordagem diferente para exploração

Continuamos com o tema da exploração do ambiente no aprendizado por reforço. Neste artigo, abordaremos mais um algoritmo, o Go-Explore, que permite explorar eficazmente o ambiente durante a fase de treinamento do modelo.
preview
Redes neurais de maneira fácil (Parte 52): exploração com otimização e correção de distribuição

Redes neurais de maneira fácil (Parte 52): exploração com otimização e correção de distribuição

À medida que a política do Ator se afasta cada vez mais dos exemplos armazenados no buffer de reprodução de experiências, a eficácia do treinamento do modelo, baseado nesse buffer, diminui. Neste artigo, examinamos um algoritmo que aumenta a eficácia do uso de amostras em algoritmos de aprendizado por reforço.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 09): Combinação de agrupamento k-médias com ondas fractais

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 09): Combinação de agrupamento k-médias com ondas fractais

O agrupamento k-médias é uma abordagem para agrupar pontos de dados em um processo que inicialmente se concentra na representação macro do conjunto de dados, onde são aplicados centroides de cluster criados aleatoriamente. Com o tempo, esses centroides são ajustados e escalonados para representar melhor o conjunto de dados. Este artigo examina essa abordagem de agrupamento e algumas de suas aplicações.
preview
MQL5 Trading Toolkit (Parte 2): Expansão e Aplicação da Biblioteca EX5 para Gerenciamento de Posições

MQL5 Trading Toolkit (Parte 2): Expansão e Aplicação da Biblioteca EX5 para Gerenciamento de Posições

Aqui, você aprenderá a importar e utilizar bibliotecas EX5 em seu código ou projetos MQL5. Neste artigo, expandiremos a biblioteca EX5 criada anteriormente, adicionando mais funções de gerenciamento de posições e criando dois Expert Advisors (EA). No primeiro exemplo, usaremos o indicador técnico Variable Index Dynamic Average para desenvolver um EA baseado em uma estratégia de trailing stop. No segundo, implementaremos um painel de negociação para monitorar, abrir, fechar e modificar posições. Esses dois exemplos demonstrarão como utilizar a biblioteca EX5 aprimorada para o gerenciamento de posições.
preview
HTTP e Connexus (Parte 2): Entendendo a Arquitetura HTTP e o Design de Bibliotecas

HTTP e Connexus (Parte 2): Entendendo a Arquitetura HTTP e o Design de Bibliotecas

Este artigo explora os fundamentos do protocolo HTTP, cobrindo os principais métodos (GET, POST, PUT, DELETE), códigos de status e a estrutura das URLs. Além disso, apresenta o início da construção da biblioteca Connexus com as classes CQueryParam e CURL, que facilitam a manipulação de URLs e parâmetros de consulta em requisições HTTP.
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
Filtragem de Sazonalidade e Período de Tempo para Modelos de Deep Learning ONNX com Python para EA

Filtragem de Sazonalidade e Período de Tempo para Modelos de Deep Learning ONNX com Python para EA

Podemos nos beneficiar da sazonalidade ao criar modelos de Deep Learning com Python? A filtragem de dados para os modelos ONNX ajuda a obter melhores resultados? Qual período de tempo devemos usar? Cobriremos tudo isso neste artigo.
preview
Redes neurais de maneira fácil (Parte 55): Controle interno contrastivo (CIC)

Redes neurais de maneira fácil (Parte 55): Controle interno contrastivo (CIC)

O aprendizado contrastivo é um método de aprendizado de representação sem supervisão. Seu objetivo é ensinar o modelo a identificar semelhanças e diferenças nos conjuntos de dados. Neste artigo, discutiremos o uso de abordagens de aprendizado contrastivo para explorar diferentes habilidades do Ator.
preview
Construção de um modelo de restrição de tendência de velas (Parte 1): Para EAs e indicadores técnicos

Construção de um modelo de restrição de tendência de velas (Parte 1): Para EAs e indicadores técnicos

Este artigo é voltado para desenvolvedores iniciantes e experientes em MQL5. Ele oferece um código que define indicadores para gerar sinais, limitando-os com base nas tendências de timeframes mais altos. Dessa forma, traders podem aprimorar suas estratégias ao incluir uma visão mais ampla do mercado, o que pode resultar em sinais de negociação potencialmente mais confiáveis.
preview
Desenvolvendo um EA multimoeda (Parte 18): Automação da seleção de grupos considerando o período forward

Desenvolvendo um EA multimoeda (Parte 18): Automação da seleção de grupos considerando o período forward

Continuaremos automatizando etapas que anteriormente realizávamos manualmente. Desta vez, voltaremos à automação da segunda etapa, ou seja, a escolha do grupo ideal de instâncias individuais de estratégias de negociação, complementada pela capacidade de considerar os resultados dessas instâncias no período forward.
preview
Redes neurais de maneira fácil (Parte 56): Utilização da norma nuclear para estimular a pesquisa

Redes neurais de maneira fácil (Parte 56): Utilização da norma nuclear para estimular a pesquisa

A pesquisa do ambiente em tarefas de aprendizado por reforço é um problema atual. Anteriormente, já examinamos algumas abordagens. E hoje, eu proponho que nos familiarizemos com mais um método, baseado na maximização da norma nuclear. Ele permite que os agentes destaquem estados do ambiente com alto grau de novidade e diversidade.
preview
Redes neurais de maneira fácil (Parte 58): transformador de decisões (Decision Transformer — DT)

Redes neurais de maneira fácil (Parte 58): transformador de decisões (Decision Transformer — DT)

Continuamos a explorar os métodos de aprendizado por reforço. Neste artigo, proponho apresentar um algoritmo ligeiramente diferente que considera a política do agente sob a perspectiva de construir uma sequência de ações.
preview
Experiência no desenvolvimento de estratégias de negociação

Experiência no desenvolvimento de estratégias de negociação

Neste artigo, proponho tentarmos desenvolver nossa própria estratégia de negociação. Uma estratégia de negociação deve ser construída com base em uma determinada vantagem estatística. E tal vantagem deve ser duradoura.
preview
Redes neurais em trading: Modelo adaptativo multiagente (MASA)

Redes neurais em trading: Modelo adaptativo multiagente (MASA)

Apresento o framework adaptativo multiagente MASA, que une aprendizado por reforço e estratégias adaptativas, oferecendo um equilíbrio harmonioso entre rentabilidade e controle de riscos em condições de mercado turbulentas.
preview
Redes neurais em trading: Framework híbrido de negociação com codificação preditiva (StockFormer)

Redes neurais em trading: Framework híbrido de negociação com codificação preditiva (StockFormer)

Apresentamos o sistema de negociação híbrido StockFormer, que combina codificação preditiva e algoritmos de aprendizado por reforço (RL). O framework utiliza 3 ramos Transformer com mecanismo integrado Diversified Multi-Head Attention (DMH-Attn), que melhora o módulo de atenção padrão com um bloco Feed-Forward multicabeça, permitindo capturar padrões de séries temporais em diferentes subespaços.
preview
Construa Consultores Especialistas Autossustentáveis com MQL5 e Python

Construa Consultores Especialistas Autossustentáveis com MQL5 e Python

Neste artigo, discutiremos como podemos construir Consultores Especialistas capazes de selecionar e mudar autonomamente as estratégias de negociação com base nas condições prevalentes do mercado. Vamos aprender sobre Cadeias de Markov e como elas podem ser úteis para nós, como traders algorítmicos.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 24): Médias Móveis

Técnicas do MQL5 Wizard que você deve conhecer (Parte 24): Médias Móveis

Médias Móveis são um indicador muito comum, usado e compreendido pela maioria dos traders. Exploramos possíveis casos de uso que podem não ser tão comuns dentro dos Expert Advisors montados no MQL5 Wizard.
preview
Teoria das Categorias em MQL5 (Parte 20): autoatenção e transformador

Teoria das Categorias em MQL5 (Parte 20): autoatenção e transformador

Vamos nos afastar um pouco de nossos tópicos mais comuns e analisar uma parte do algoritmo do ChatGPT. Ele possui algumas semelhanças ou conceitos emprestados das transformações naturais? Vamos tentar responder a essas e outras perguntas usando nosso código no formato de classe de sinal.
preview
Redes neurais de maneira fácil (Parte 67): Aprendendo com experiências passadas para resolver novos problemas

Redes neurais de maneira fácil (Parte 67): Aprendendo com experiências passadas para resolver novos problemas

Neste artigo, continuaremos a falar sobre métodos de coleta de dados em uma amostra de treinamento. É claro que o processo de aprendizado requer constante interação com o ambiente. Mas as situações podem variar.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 44): Indicador técnico Average True Range (ATR)

Técnicas do MQL5 Wizard que você deve conhecer (Parte 44): Indicador técnico Average True Range (ATR)

O oscilador ATR é um indicador muito popular para atuar como um proxy de volatilidade, especialmente nos mercados de forex onde os dados de volume são escassos. Nós o examinamos com base em padrões, assim como fizemos com indicadores anteriores, e compartilhamos estratégias e relatórios de testes graças às classes da biblioteca MQL5 wizard e sua montagem.
preview
Redes neurais em trading: Aprendizado multitarefa baseado no modelo ResNeXt

Redes neurais em trading: Aprendizado multitarefa baseado no modelo ResNeXt

O framework de aprendizado multitarefa baseado no ResNeXt otimiza a análise de dados financeiros ao considerar sua alta dimensionalidade, não linearidade e dependências temporais. O uso de convolução em grupo e cabeças especializadas permite que o modelo extraia de forma eficiente as principais características dos dados brutos.
preview
Uma Formulação Genérica de Otimização (GOF) para Implementar Max Personalizado com Restrições

Uma Formulação Genérica de Otimização (GOF) para Implementar Max Personalizado com Restrições

Neste artigo, apresentaremos uma maneira de implementar problemas de otimização com múltiplos objetivos e restrições ao selecionar "Max Personalizado" na aba Configurações do terminal MetaTrader 5. Como exemplo, o problema de otimização pode ser: Maximizar o Fator de Lucro, o Lucro Líquido e o Fator de Recuperação, de modo que o Drawdown seja inferior a 10%, o número de perdas consecutivas seja inferior a 5, e o número de negociações por semana seja superior a 5.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 33): Kernels de Processos Gaussianos

Técnicas do MQL5 Wizard que você deve conhecer (Parte 33): Kernels de Processos Gaussianos

Os Kernels de Processos Gaussianos são a função de covariância da Distribuição Normal que pode desempenhar um papel em previsões. Exploramos esse algoritmo único em uma classe de sinal personalizada em MQL5 para ver se pode ser utilizado como um sinal principal de entrada e saída.
preview
Desenvolvendo um EA multimoeda (Parte 19): Criando etapas implementadas em Python

Desenvolvendo um EA multimoeda (Parte 19): Criando etapas implementadas em Python

Até agora, analisamos a automação da execução de procedimentos sequenciais de otimização de EAs exclusivamente no testador de estratégias padrão. Mas o que fazer se, entre essas execuções, quisermos processar alguns dados já obtidos por outros meios? Vamos tentar adicionar a possibilidade de criar novas etapas de otimização, executadas por programas escritos em Python.
preview
Desenvolvendo um EA multimoeda (Parte 22): Início da transição para substituição dinâmica de configurações

Desenvolvendo um EA multimoeda (Parte 22): Início da transição para substituição dinâmica de configurações

Se decidimos automatizar a execução da otimização periódica, também precisamos cuidar da atualização automática das configurações dos EAs que já estão operando na conta de negociação. Isso também deve permitir rodar o EA no testador de estratégias e alterar suas configurações dentro de uma única execução.
preview
Redes neurais em trading: Framework híbrido de negociação com codificação preditiva (Conclusão)

Redes neurais em trading: Framework híbrido de negociação com codificação preditiva (Conclusão)

Damos continuidade à análise do StockFormer, um sistema híbrido de negociação que combina codificação preditiva e algoritmos de aprendizado por reforço para análise de séries temporais financeiras. O sistema se baseia em três ramificações Transformer com o mecanismo Diversified Multi-Head Attention (DMH-Attn), que permite identificar padrões complexos e interrelações entre ativos. Anteriormente, aprendemos os aspectos teóricos do framework e implementamos os mecanismos do DMH-Attn; hoje vamos abordar a arquitetura dos modelos e seu treinamento.
preview
Anotação de dados na análise de série temporal (Parte 4): Decomposição da interpretabilidade usando anotação de dados

Anotação de dados na análise de série temporal (Parte 4): Decomposição da interpretabilidade usando anotação de dados

Esta série de artigos apresenta várias técnicas destinadas a rotular séries temporais, técnicas essas que podem criar dados adequados à maioria dos modelos de inteligência artificial (IA). A rotulação de dados (ou anotação de dados) direcionada pode tornar o modelo de IA treinado mais alinhado aos objetivos e tarefas do usuário, melhorar a precisão do modelo e até mesmo ajudar o modelo a dar um salto qualitativo!
preview
Desenvolvendo um EA multimoeda (Parte 10): Criação de objetos a partir de uma string

Desenvolvendo um EA multimoeda (Parte 10): Criação de objetos a partir de uma string

O plano de desenvolvimento do EA prevê várias etapas com o salvamento de resultados intermediários em um banco de dados. Recuperá-los de lá é possível apenas na forma de strings ou números, não como objetos. Portanto, precisamos de uma maneira de recriar no EA os objetos necessários a partir de strings lidas do banco de dados.
preview
Desenvolvendo um EA multimoeda (Parte 14): Alteração adaptativa dos volumes no gerenciador de risco

Desenvolvendo um EA multimoeda (Parte 14): Alteração adaptativa dos volumes no gerenciador de risco

O gerenciador de risco anteriormente desenvolvido continha apenas funcionalidades básicas. Vamos explorar caminhos para aprimorá-lo, buscando melhorar os resultados de negociação sem alterar a lógica das estratégias de trading.
preview
Redes neurais de maneira fácil (Parte 41): Modelos Hierárquicos

Redes neurais de maneira fácil (Parte 41): Modelos Hierárquicos

Este artigo descreve modelos hierárquicos de aprendizado que propõem uma abordagem eficaz para resolver tarefas complexas de aprendizado de máquina. Os modelos hierárquicos consistem em vários níveis, cada um responsável por aspectos diferentes da tarefa.
preview
Desenvolvendo um EA multimoeda (Parte 11): Início da automação do processo de otimização

Desenvolvendo um EA multimoeda (Parte 11): Início da automação do processo de otimização

Para obter um bom EA, precisamos selecionar muitos bons conjuntos de parâmetros para as instâncias das estratégias de trading. Isso pode ser feito manualmente, executando a otimização em diferentes símbolos e, em seguida, escolhendo os melhores resultados. Mas é melhor delegar esse trabalho para um programa e se concentrar em atividades mais produtivas.
preview
Redes neurais em trading: Superpoint Transformer (SPFormer)

Redes neurais em trading: Superpoint Transformer (SPFormer)

Neste artigo, apresentamos um método de segmentação de objetos 3D baseado no Superpoint Transformer (SPFormer), que elimina a necessidade de agregação intermediária de dados. Isso acelera o processo de segmentação e melhora o desempenho do modelo.
preview
O escore de propensão na inferência causalidade

O escore de propensão na inferência causalidade

O artigo examina o tema de pareamento na inferência causal. O pareamento é utilizado para comparar observações semelhantes em um conjunto de dados. Isso é necessário para determinar corretamente os efeitos causais e eliminar o viés. O autor explica como isso ajuda na construção de sistemas de negociação baseados em aprendizado de máquina, que se tornam mais estáveis em novos dados nos quais não foram treinados. O escore de propensão desempenha um papel central e é amplamente utilizado na inferência causal.
preview
Redes neurais de maneira fácil (Parte 80): modelo generativo adversarial do transformador de grafos (GTGAN)

Redes neurais de maneira fácil (Parte 80): modelo generativo adversarial do transformador de grafos (GTGAN)

Neste artigo, apresento o algoritmo GTGAN, que foi introduzido em janeiro de 2024 para resolver tarefas complexas de criação de layout arquitetônico com restrições de grafos.
preview
Redes neurais em trading: Conjunto de agentes com uso de mecanismos de atenção (MASAAT)

Redes neurais em trading: Conjunto de agentes com uso de mecanismos de atenção (MASAAT)

Apresentamos a estrutura adaptativa multiagente para otimização de portfólio financeiro (MASAAT), que integra mecanismos de atenção e análise de séries temporais. O MASAAT forma um conjunto de agentes que analisam séries de preços e mudanças direcionais, permitindo identificar variações significativas nos preços dos ativos em diferentes níveis de detalhamento.
preview
Redes neurais de maneira fácil (Parte 53): decomposição de recompensa

Redes neurais de maneira fácil (Parte 53): decomposição de recompensa

Já falamos várias vezes sobre a importância de escolher corretamente a função de recompensa que usamos para incentivar o comportamento desejável do Agente, adicionando recompensas ou penalidades por ações específicas. Mas a questão de como o Agente interpreta nossos sinais permanece em aberto. Neste artigo, discutiremos a decomposição da recompensa em termos de transmissão de sinais individuais ao Agente a ser treinado.
preview
Criando um EA em MQL5 com base na estratégia de Rompimento do Intervalo Diário (Daily Range Breakout)

Criando um EA em MQL5 com base na estratégia de Rompimento do Intervalo Diário (Daily Range Breakout)

Neste artigo, criamos um EA em MQL5 com base na estratégia de Rompimento do Intervalo Diário (Daily Range Breakout). Vamos abordar os conceitos-chave da estratégia, desenvolver o esquema do EA e implementar a lógica de rompimento em MQL5. Por fim, estudamos os métodos de backtest e otimização do EA para maximizar sua eficiência.
preview
Compreendendo os Paradigmas de Programação (Parte 2): Uma Abordagem Orientada a Objetos para Desenvolver um Expert Advisor de Ação de Preço

Compreendendo os Paradigmas de Programação (Parte 2): Uma Abordagem Orientada a Objetos para Desenvolver um Expert Advisor de Ação de Preço

Aprenda sobre o paradigma de programação orientada a objetos e sua aplicação no código MQL5. Este segundo artigo aprofunda-se nas especificidades da programação orientada a objetos, oferecendo experiência prática através de um exemplo prático. Você aprenderá como converter nosso expert advisor de ação de preço procedural desenvolvido anteriormente usando o indicador EMA e dados de preços de velas para um código orientado a objetos.
preview
Redes neurais em trading: Transformer vetorial hierárquico (HiVT)

Redes neurais em trading: Transformer vetorial hierárquico (HiVT)

Apresentamos o método Transformer Vetorial Hierárquico (HiVT), desenvolvido para a previsão rápida e precisa de séries temporais multimodais.
preview
Redes neurais de maneira fácil (Parte 82): modelos de equações diferenciais ordinárias (NeuralODE)

Redes neurais de maneira fácil (Parte 82): modelos de equações diferenciais ordinárias (NeuralODE)

Neste artigo, gostaria de apresentar outro tipo de modelos voltados para o estudo da dinâmica do estado do ambiente.