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
Desenvolvendo um fator de qualidade para os EAs

Desenvolvendo um fator de qualidade para os EAs

Nesse artigo vamos explicar como desenvolver um fator de qualidade para ser retornado pelo seu EA no testador de estratégia. Iremos mostrar duas formas de cálculo conhecidas (Van Tharp e Sunny Harris).
preview
Testando o conteúdo informativo de diferentes tipos de médias móveis

Testando o conteúdo informativo de diferentes tipos de médias móveis

Todos conhecemos a importância da média móvel para muitos traders. Existem diferentes tipos de médias móveis que podem ser úteis no trading. Vamos examiná-las e realizar uma simples comparação para ver qual delas pode apresentar os melhores resultados.
preview
Desenvolvendo um sistema de Replay (Parte 31): Projeto Expert Advisor - Classe C_Mouse (V)

Desenvolvendo um sistema de Replay (Parte 31): Projeto Expert Advisor - Classe C_Mouse (V)

Desenvolver uma forma de colocar o cronometro, de modo que durante um replay / simulação, ele consiga nos dizer quanto tempo falta, pode parecer a principio uma tarefa simples e de rápida solução. Muitos iriam simplesmente tentar adaptar e usar o mesmo sistema que é usado quando temos o servidor de negociação ao nosso lado. Mas aqui mora um ponto que muitos talvez não se atentem ao pensar em tal solução. Quando você está fazendo um replay, e isto para não falar do fato da simulação, o relógio não funciona da mesma forma. Este tipo de coisa torna complexo construir tal sistema.
preview
Adicionando um LLM personalizado a um robô investidor (Parte 2): Exemplo de implementação de ambiente

Adicionando um LLM personalizado a um robô investidor (Parte 2): Exemplo de implementação de ambiente

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
Redes neurais de maneira fácil (Parte 18): Regras de associação

Redes neurais de maneira fácil (Parte 18): Regras de associação

Como continuação desta série, gostaria de apresentar a vocês outro tipo de tarefa dos métodos de aprendizado não supervisionado, em particular a busca de regras de associação. Este tipo de tarefa foi usado pela primeira vez no varejo para analisar cestas de compras. Neste artigo falaremos sobre as possibilidades de utilização de tais algoritmos no trading.
preview
Introdução ao MQL5 (Parte 1): Um guia para principiantes em algotrading

Introdução ao MQL5 (Parte 1): Um guia para principiantes em algotrading

Este artigo serve como uma introdução à programação em MQL5 para novatos, abrindo portas para o empolgante mundo da negociação algorítmica. Aqui, você vai descobrir os princípios básicos do MQL5, a linguagem de programação usada para desenvolver estratégias de negociação no MetaTrader 5, que facilita a entrada no universo da negociação automatizada. Abrangendo desde a compreensão dos conceitos iniciais até os primeiros passos na programação, este texto é projetado para desbloquear as possibilidades da negociação algorítmica para todos os leitores, incluindo aqueles sem nenhuma experiência prévia em programação. Espero que aprecie esta incursão pelo mundo do trading com MQL5.
preview
Ciência de Dados e Aprendizado de Máquina (Parte 14): aplicando mapas de Kohonen nos mercados

Ciência de Dados e Aprendizado de Máquina (Parte 14): aplicando mapas de Kohonen nos mercados

Deseja descobrir uma nova metodologia de negociação que facilite a orientação em mercados complexos e voláteis? Explore os mapas de Kohonen - uma versão inovadora de redes neurais artificiais, capazes de identificar regularidades e tendências ocultas nos dados do mercado. Neste texto, analisaremos a funcionalidade dos mapas de Kohonen e a forma de utilizá-los na elaboração de estratégias de negociação eficazes. Estou convencido de que esta abordagem inédita será do interesse de traders novatos e experientes.
preview
Redes neurais de maneira fácil (Parte 15): Agrupamento de dados via MQL5

Redes neurais de maneira fácil (Parte 15): Agrupamento de dados via MQL5

Continuamos a estudar o método de agrupamento. Neste artigo, criaremos uma nova classe CKmeans para implementar um dos métodos de agrupamento k-médias mais comuns. Com base nos resultados dos testes, podemos concluir que o modelo é capaz de identificar cerca de 500 padrões.
preview
Redes neurais de maneira fácil (Parte 38): Exploração auto-supervisionada via desacordo (Self-Supervised Exploration via Disagreement)

Redes neurais de maneira fácil (Parte 38): Exploração auto-supervisionada via desacordo (Self-Supervised Exploration via Disagreement)

Um dos principais desafios do aprendizado por reforço é a exploração do ambiente. Anteriormente, já nos iniciamos no método de exploração baseado na curiosidade interna. E hoje proponho considerar outro algoritmo, o de exploração por desacordo.
preview
Algoritmo de recompra: modelo matemático para aumentar a eficiência

Algoritmo de recompra: modelo matemático para aumentar a eficiência

Neste artigo, usaremos o algoritmo de recompra como um guia para um entendimento mais profundo da eficiência dos sistemas de negociação e começaremos a trabalhar com os princípios gerais de aumentar a eficiência de negociação usando matemática e lógica, bem como aplicar os métodos mais inovadores para aumentar a eficiência no contexto de usar qualquer sistema de negociação.
preview
Desenvolvimento de um Cliente MQTT para o MetaTrader 5: Metodologia TDD

Desenvolvimento de um Cliente MQTT para o MetaTrader 5: Metodologia TDD

Este artigo apresenta a primeira tentativa de desenvolver um cliente MQTT nativo para o MQL5. MQTT é um protocolo de troca de dados no formato "publicador - assinante". Ele é leve, aberto, simples e projetado para ser facilmente implementado. Isso o torna aplicável em muitas situações.
preview
Indicadores alternativos de risco e rentabilidade em MQL5

Indicadores alternativos de risco e rentabilidade em MQL5

Neste artigo, apresentaremos a implementação de vários indicadores de rentabilidade e risco, considerados alternativas ao índice de Sharpe, e exploraremos curvas de patrimônio líquido hipotéticas para analisar suas características.
preview
Criando um Expert Advisor simples multimoeda usando MQL5 (Parte 5): Bandas de Bollinger no canal de Keltner — Sinais dos indicadores

Criando um Expert Advisor simples multimoeda usando MQL5 (Parte 5): Bandas de Bollinger no canal de Keltner — Sinais dos indicadores

Neste artigo, por EA multimoeda, entendemos um robô investidor, que pode negociar (abrir/fechar ordens, gerenciar ordens, por exemplo, do tipo trailing stop-loss e trailing profit) mais de um par de moedas em um gráfico. Neste artigo, utilizaremos sinais de dois indicadores, nomeadamente Bandas de Bollinger (Bollinger Bands®) e canal de Keltner.
preview
Redes neurais de maneira fácil (Parte 34): Função quantil totalmente parametrizada

Redes neurais de maneira fácil (Parte 34): Função quantil totalmente parametrizada

Continuamos a estudar os algoritmos de aprendizado Q distribuído. Em artigos anteriores, já discutimos os algoritmos de aprendizado Q distribuído e de quantil. No primeiro, aprendemos as probabilidades de determinados intervalos de valores. No segundo, aprendemos intervalos com uma probabilidade específica. Em ambos os algoritmos, utilizamos o conhecimento prévio de uma distribuição e ensinamos a outra. Neste artigo, vamos examinar um algoritmo que permite que o modelo aprenda ambas as distribuições.
preview
Redes neurais de maneira fácil (Parte 23): Criando uma ferramenta para transferência de aprendizado

Redes neurais de maneira fácil (Parte 23): Criando uma ferramenta para transferência de aprendizado

Nesta série de artigos, já mencionamos a transferência de aprendizado mais de uma vez. Mas até agora o assunto não foi além das menções. Sugiro preencher essa lacuna e dar uma olhada mais de perto na transferência de aprendizado.
preview
Redes neurais de maneira fácil (Parte 27): Aprendizado Q profundo (DQN)

Redes neurais de maneira fácil (Parte 27): Aprendizado Q profundo (DQN)

Continuamos nosso estudo sobre aprendizado por reforço. E, neste artigo, vamos nos familiarizar com o método de aprendizado Q profundo. Com esse método, a equipe do DeepMind criou um modelo que pode superar um humano ao jogar jogos do Atari. Acho que será útil avaliar as possibilidades de tal tecnologia para resolver problemas de negociação.
preview
Desenvolvendo um EA multimoeda (Parte 1): várias estratégias de trading trabalhando juntas

Desenvolvendo um EA multimoeda (Parte 1): várias estratégias de trading trabalhando juntas

Existem várias estratégias de trading. Do ponto de vista da diversificação de riscos e do aumento da estabilidade dos resultados de trading, pode ser útil usar várias estratégias em paralelo. Mas se cada estratégia for implementada como um EA separado, gerenciar o trabalho conjunto delas em uma conta de trading se torna muito mais complicado. Para resolver esse problema, é um boa idea implementar o trabalho de diferentes estratégias de trading em um único EA.
preview
Como desenvolver um sistema de negociação baseado no indicador VIDYA

Como desenvolver um sistema de negociação baseado no indicador VIDYA

Bem-vindo a um novo artigo da nossa série sobre como desenvolver um sistema de negociação pelos indicadores técnicos mais populares, neste artigo aprenderemos sobre uma nova ferramenta técnica e aprenderemos como desenvolver um sistema de negociação pelo Variable Index Dynamic Average (VIDYA).
preview
Redes neurais de maneira fácil (Parte 31): Algoritmos evolutivos

Redes neurais de maneira fácil (Parte 31): Algoritmos evolutivos

No último artigo, iniciamos a análise dos métodos de otimização sem gradiente, e nos familiarizamos com o algoritmo genético. Hoje, continuaremos a discutir o mesmo assunto e também examinaremos outra classe de algoritmos evolutivos.
preview
Como desenvolver um sistema de negociação baseado no indicador DeMarker

Como desenvolver um sistema de negociação baseado no indicador DeMarker

Aqui está um novo artigo em nossa série sobre como desenvolver um sistema de negociação pelos indicadores técnicos mais populares. Neste artigo, nós apresentaremos como criar um sistema de negociação pelo indicador DeMarker.
preview
Redes neurais de maneira fácil (Parte 35): Módulo de curiosidade intrínseca

Redes neurais de maneira fácil (Parte 35): Módulo de curiosidade intrínseca

Continuamos a explorar algoritmos de aprendizado por reforço. Todos os algoritmos que analisamos até agora exigiam a criação de uma política de recompensa de tal forma que o agente pudesse avaliar cada uma de suas ações em cada transição de um estado do sistema para outro. No entanto, essa abordagem é bastante artificial. Na prática, existe um intervalo de tempo entre a ação e a recompensa. Neste artigo, proponho que você se familiarize com um algoritmo de aprendizado de modelo capaz de lidar com diferentes atrasos temporais entre a ação e a recompensa.
preview
Como escolher um Expert Advisor: Vinte caraterísticas de um robô de baixa qualidade

Como escolher um Expert Advisor: Vinte caraterísticas de um robô de baixa qualidade

Neste artigo, iremos responder à pergunta de como escolher o Expert Advisor correto. Quais são os mais adequados para o nosso portfólio e como podemos filtrar a maioria dos robôs de negociação disponíveis no mercado? Este artigo apresenta vinte caraterísticas evidentes de um EA de baixa qualidade. Ele ajudará você a tomar decisões mais informadas e criar uma coleção de EAs lucrativos.
preview
Redes neurais de maneira fácil (Parte 59): dicotomia do controle (DoC)

Redes neurais de maneira fácil (Parte 59): dicotomia do controle (DoC)

No artigo anterior, nos familiarizamos com o transformador de decisões. Porém, o complexo ambiente estocástico do mercado de moedas não permitiu revelar totalmente o potencial do método apresentado. Hoje, quero apresentar a vocês um algoritmo focado em melhorar o desempenho dos algoritmos em ambientes estocásticos.
preview
Redes neurais de maneira fácil (Parte 28): algoritmo de gradiente de política

Redes neurais de maneira fácil (Parte 28): algoritmo de gradiente de política

Continuamos a estudar métodos de aprendizado por reforço. No artigo anterior, nos iniciamos no método de aprendizado Q profundo. Com ele, treinamos um modelo para prever a recompensa imediata dependendo da ação tomada por nós em uma determinada situação. E, em seguida, realizamos uma ação de acordo com nossa política e a recompensa esperada. Mas nem sempre é possível aproximar a função Q ou nem sempre sua aproximação dá o resultado desejado. Nesses casos, os métodos de aproximação são usados não para funções de utilidade, mas, sim, para uma política (estratégia) direta de ações. E é precisamente a esses métodos que o gradiente de política pertence.
preview
Teste e otimização de estratégias para opções binárias no MetaTrader 5

Teste e otimização de estratégias para opções binárias no MetaTrader 5

Testamos e otimizamos estratégias de opções binárias no MetaTrader 5.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 6): transformada de Fourier

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 6): transformada de Fourier

A transformada de Fourier é um método de decompor uma onda de pontos de dados em possíveis partes constituintes que foi introduzida por Joseph Fourier. Esse recurso pode ser útil para os traders, e é isso que abordaremos neste artigo.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 07): Dendrogramas

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 07): Dendrogramas

A classificação de dados para análise e previsão é uma área muito diversificada do aprendizado de máquina, que compreende um grande número de abordagens e métodos. Neste artigo, examinaremos uma dessas abordagens, nomeadamente o agrupamento hierárquico aglomerativo (Agglomerative Hierarchical Clustering).
preview
Experimentos com redes neurais (Parte 4): Padrões

Experimentos com redes neurais (Parte 4): Padrões

As redes neurais são tudo para nós. E vamos verificar na prática se é assim, indagando se MetaTrader 5 é uma ferramenta autossuficiente para implementar redes neurais na negociação. A explicação vai ser simples.
preview
Redes neurais de maneira fácil (Parte 49): Soft Actor-Critic (SAC)

Redes neurais de maneira fácil (Parte 49): Soft Actor-Critic (SAC)

Continuamos nossa exploração dos algoritmos de aprendizado por reforço na resolução de problemas em espaços de ação contínua. Neste artigo, apresento o algoritmo Soft Actor-Critic (SAC). A principal vantagem do SAC está em sua capacidade de encontrar políticas ótimas que não apenas maximizam a recompensa esperada, mas também têm a máxima entropia (diversidade) de ações.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 02): Mapas de Kohonen

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 02): Mapas de Kohonen

Esta série de artigos propõe que o Assistente MQL5 deve ser um pilar para os traders. Por quê? Porque o trader não economiza apenas o tempo desenvolvendo suas novas ideias com o Assistente MQL5, mas reduz bastante os erros de desenvolvimento de código duplicado; ele está finalmente preparado para canalizar sua energia nas poucas áreas críticas de sua filosofia de negociação.
preview
Experimentos com redes neurais (Parte 6): O perceptron como uma ferramenta de previsão de preços autossuficiente

Experimentos com redes neurais (Parte 6): O perceptron como uma ferramenta de previsão de preços autossuficiente

Veja um exemplo do uso do perceptron como um meio autossuficiente de previsão de preços. Esse artigo aborda conceitos gerais, apresenta um Expert Advisor simples e pronto para uso e os resultados de sua otimização.
preview
Algoritmo de recompra: Simulação de negociação em várias moedas

Algoritmo de recompra: Simulação de negociação em várias moedas

Neste artigo, criaremos um modelo matemático para simular a precificação em várias moedas e concluiremos o estudo, que comecei no artigo anterior, sobre o princípio de diversificação como parte da busca por mecanismos para aumentar a eficiência da negociação.
preview
Redes neurais de maneira fácil (Parte 48): métodos para reduzir a superestimação dos valores da função Q

Redes neurais de maneira fácil (Parte 48): métodos para reduzir a superestimação dos valores da função Q

No artigo anterior, nós exploramos o método DDPG, projetado para treinar modelos em espaços de ação contínua. No entanto, como outros métodos de aprendizado Q, ele está sujeito ao problema da sobreavaliação dos valores da função Q. Esse problema geralmente leva eventualmente ao treinamento de um agente com uma estratégia não otimizada. Neste artigo, examinaremos algumas abordagens para superar o problema mencionado.
preview
Desenvolvendo um sistema de Replay (Parte 30): Projeto Expert Advisor - Classe C_Mouse (IV)

Desenvolvendo um sistema de Replay (Parte 30): Projeto Expert Advisor - Classe C_Mouse (IV)

Aqui demonstrarei uma técnica que pode lhe ajudar muito, em vários momentos durante a sua vida como programador. Diferente do que muitos dizem, não é a plataforma que é limitada, mas sim o conhecimento do individuo que diz que tal coisa. O que será explicado aqui, mostrar que com um pouco de bom senso e criatividade, você pode tornar a plataforma MetaTrader 5 muito mais interessante e versátil. E sem precisar de fato criar programas malucos ou coisas do estilo. Você pode criar um código simples, porém seguro e confiável. Usando de perspicácia, domar o código a fim de modificar algo já existente, sem se quer remover ou adicionar uma única linha se quer, no código original.
preview
Padrões de projeto no MQL5 (Parte 2): Padrões estruturais

Padrões de projeto no MQL5 (Parte 2): Padrões estruturais

Neste artigo, continuaremos a estudar os padrões de projeto que permitem aos desenvolvedores criar aplicativos expansíveis e confiáveis não apenas no MQL5, mas também em outras linguagens de programação. Desta vez, falaremos sobre outro tipo: modelos estruturais. Aprenderemos a projetar sistemas usando as classes disponíveis para formar estruturas maiores.
preview
Construindo e testando sistemas de negociação com o Canal Keltner

Construindo e testando sistemas de negociação com o Canal Keltner

Neste artigo, tentaremos fornecer sistemas de negociação usando um conceito muito importante no mercado financeiro, que é a volatilidade. Forneceremos um sistema de negociação baseado no indicador Canal Keltner após compreendê-lo e como podemos codificá-lo e criar um sistema de negociação baseado em uma estratégia simples de negociação e testá-lo em diferentes ativos.
preview
Adicionando um LLM personalizado a um robô investidor (Parte 1): Implantação de equipamentos e ambiente

Adicionando um LLM personalizado a um robô investidor (Parte 1): Implantação de equipamentos e ambiente

Os modelos de linguagem são uma parte importante da inteligência artificial que evolui rapidamente, por isso devemos pensar em como integrar LLMs poderosos em nossa negociação algorítmica. Para a maioria das pessoas, é desafiador configurar esses poderosos modelos de acordo com suas necessidades, implementá-los localmente e, em seguida, aplicá-los à negociação algorítmica. Esta série de artigos explorará uma abordagem passo a passo para alcançar esse objetivo.
preview
Padrões de projeto no MQL5 (Parte I): Padrões criacionais (creational patterns)

Padrões de projeto no MQL5 (Parte I): Padrões criacionais (creational patterns)

Existem métodos que podem ser usados para resolver problemas típicos. Depois de entender como usar esses métodos, você pode então escrever programas de maneira prática e aplicar o conceito DRY ("Don't Repeat Yourself" - "Não se Repita"). Neste contexto, os padrões de projeto são extremamente úteis, pois apresentam soluções para problemas bem descritos e recorrentes.
preview
Teoria das Categorias em MQL5 (Parte 8): Monoides

Teoria das Categorias em MQL5 (Parte 8): Monoides

Esse artigo continua a série sobre a implementação da teoria da categoria em MQL5. Aqui, apresentamos os monoides como um domínio (conjunto) que distingue a teoria da categoria de outros métodos de classificação de dados ao incorporar regras e um elemento de equivalência.
preview
Redes neurais de maneira fácil (Parte 19): Regras de associação usando MQL5

Redes neurais de maneira fácil (Parte 19): Regras de associação usando MQL5

Continuamos o tópico de busca de regras de associação. No artigo anterior, consideramos os aspectos teóricos desse tipo de problema. No artigo de hoje, ensinarei a implementação do método FP-Growth usando MQL5. Também vamos testá-la com dados reais.