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
Testador rápido de estratégias de trading em Python usando Numba

Testador rápido de estratégias de trading em Python usando Numba

O artigo apresenta um testador rápido de estratégias para modelos de aprendizado de máquina com o uso do Numba. Em termos de velocidade, ele supera o testador de estratégias feito em Python puro em 50 vezes. O autor recomenda o uso dessa biblioteca para acelerar cálculos matemáticos, especialmente em casos que envolvem laços.
preview
Do básico ao intermediário: Estruturas (V)

Do básico ao intermediário: Estruturas (V)

Neste artigo veremos como é feita a sobrecarga de um código estrutural. Sei que isto, é um tanto quanto difícil de entender no começo. Principalmente se você está vendo isto pela primeira vez. Porém, é muito importante que você procure assimilar estes conceitos e entender muito bem o que se passa aqui, antes de procurar se aventurar em coisas ainda mais complicadas e elaboradas.
preview
Simulação de mercado (Parte 17): Sockets (XI)

Simulação de mercado (Parte 17): Sockets (XI)

Implementar a parte que será executada aqui no MetaTrader 5, está longe de ser complicado. Mas existem diversos cuidados e pontos de atenção a serem observados. Isto para que você caro leitor, consiga de fato fazer com que o sistema funcione. Lembre-se de uma coisa: Você não executará um único programa. Você estará na verdade, executando três programas ao mesmo tempo. E é importante que cada um seja implementado e construído de forma que trabalhem e conversem entre si. Isto sem que eles fiquem completamente sem saber o que cada um está querendo ou desejando fazer.
preview
Algoritmo de Busca Orbital Atômica — Atomic Orbital Search (AOS)

Algoritmo de Busca Orbital Atômica — Atomic Orbital Search (AOS)

O artigo aborda o algoritmo AOS (Atomic Orbital Search), que utiliza conceitos do modelo orbital atômico para simular a busca por soluções. O algoritmo se baseia em distribuições probabilísticas e na dinâmica das interações dentro de um átomo. O artigo discute detalhadamente os aspectos matemáticos do AOS, incluindo a atualização das posições dos candidatos a soluções e os mecanismos de absorção e emissão de energia. O AOS abre novos caminhos para a aplicação de princípios quânticos em tarefas computacionais, oferecendo uma abordagem inovadora para a otimização.
preview
Redes neurais em trading: Modelo hiperbólico de difusão latente (Conclusão)

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

A aplicação de processos de difusão anisotrópicos para codificação dos dados brutos no espaço latente hiperbólico, conforme proposto no framework HypDiff, contribui para a preservação das características topológicas da situação atual do mercado e melhora a qualidade de sua análise. No artigo anterior, iniciamos a implementação das abordagens propostas usando MQL5. Hoje, continuaremos esse trabalho iniciado, levando-o até sua conclusão lógica.
preview
Implementando uma Estratégia de Trading Rápido com Parabolic SAR e Média Móvel Simples (SMA) em MQL5

Implementando uma Estratégia de Trading Rápido com Parabolic SAR e Média Móvel Simples (SMA) em MQL5

Neste artigo, desenvolvemos um Expert Advisor de Trading Rápido em MQL5, aproveitando os indicadores Parabolic SAR e Média Móvel Simples (SMA) para criar uma estratégia de trading responsiva. Detalhamos a implementação da estratégia, incluindo o uso de indicadores, geração de sinais e o processo de testes e otimização.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 35): Regressão por Vetores de Suporte

Técnicas do MQL5 Wizard que você deve conhecer (Parte 35): Regressão por Vetores de Suporte

A Regressão por Vetores de Suporte é uma maneira idealista de encontrar uma função ou 'hiperplano' que melhor descreva a relação entre dois conjuntos de dados. Tentamos explorar isso na previsão de séries temporais dentro das classes personalizadas do MQL5 wizard.
preview
Métodos de otimização da biblioteca Alglib (Parte II)

Métodos de otimização da biblioteca Alglib (Parte II)

Neste artigo, continuaremos a análise dos métodos de otimização restantes da biblioteca ALGLIB, com foco especial em seus testes em funções complexas e multidimensionais. Isso nos permitirá não apenas avaliar a eficiência de cada algoritmo, mas também identificar seus pontos fortes e fracos em diferentes condições.
preview
Recursos do SQLite em MQL5: Exemplo de painel interativo com estatísticas de trading por símbolo e magic

Recursos do SQLite em MQL5: Exemplo de painel interativo com estatísticas de trading por símbolo e magic

Neste artigo, vamos criar um indicador que exibe, em um painel interativo, estatísticas de trading da conta divididas por símbolos e estratégias de negociação. Escreveremos o código com base em exemplos da Documentação e do artigo sobre trabalho com bancos de dados.
preview
Treinamento de perceptron multicamadas com o algoritmo de Levenberg-Marquardt

Treinamento de perceptron multicamadas com o algoritmo de Levenberg-Marquardt

Este artigo apresenta a implementação do algoritmo de Levenberg-Marquardt para o treinamento de redes neurais com propagação para frente. Foi feita uma análise comparativa de desempenho com os algoritmos da biblioteca scikit-learn do Python. Primeiramente, são discutidos métodos de treinamento mais simples, como a descida do gradiente, a descida do gradiente com momentum e a descida do gradiente estocástica.
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
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
Análise da influência do clima nas moedas de países agrícolas usando Python

Análise da influência do clima nas moedas de países agrícolas usando Python

Como o clima está relacionado ao mercado cambial? Na teoria econômica clássica, por muito tempo não se reconheceu a influência de fatores como o clima no comportamento do mercado. Porém, tudo mudou. Vamos tentar estabelecer conexões entre o estado do tempo e a situação das moedas agrícolas no mercado.
preview
Técnicas do MQL5 Wizard que você deve conhecer (Parte 34): Embedding de Preços com um RBM Não Convencional

Técnicas do MQL5 Wizard que você deve conhecer (Parte 34): Embedding de Preços com um RBM Não Convencional

Máquinas de Boltzmann Restritas são uma forma de rede neural que foi desenvolvida no meio da década de 1980, numa época em que os recursos computacionais eram extremamente caros. No início, ela dependia de Gibbs Sampling e Divergência Contrastiva para reduzir a dimensionalidade ou capturar as probabilidades/propriedades ocultas sobre os conjuntos de dados de treinamento de entrada. Examinamos como o Backpropagation pode realizar de forma similar quando o RBM 'embebe' os preços para um Multi-Layer-Perceptron de previsão.
preview
Aplicação da Teoria dos Jogos de Nash com Filtragem HMM em Trading

Aplicação da Teoria dos Jogos de Nash com Filtragem HMM em Trading

Este artigo explora a aplicação da teoria dos jogos de John Nash, especificamente o Equilíbrio de Nash, no mercado financeiro. Ele discute como os traders podem utilizar scripts em Python e MetaTrader 5 para identificar e explorar ineficiências do mercado utilizando os princípios de Nash. O artigo oferece um guia passo a passo sobre como implementar essas estratégias, incluindo o uso de Modelos Ocultos de Markov (HMM) e análise estatística para melhorar o desempenho das negociações.
preview
Criando um Expert Advisor Integrado com MQL5-Telegram (Parte 3): Enviando Capturas de Tela de Gráficos com Legendas de MQL5 para o Telegram

Criando um Expert Advisor Integrado com MQL5-Telegram (Parte 3): Enviando Capturas de Tela de Gráficos com Legendas de MQL5 para o Telegram

Neste artigo, criamos um Expert Advisor em MQL5 que codifica capturas de tela de gráficos como dados de imagem e os envia para um chat do Telegram via requisições HTTP. Ao integrar a codificação e transmissão de fotos, aprimoramos o sistema MQL5-Telegram existente com insights visuais de trading diretamente no Telegram.
preview
Automatizando Estratégias de Negociação com a Estratégia Parabolic SAR em MQL5: Criando um Expert Advisor Eficaz

Automatizando Estratégias de Negociação com a Estratégia Parabolic SAR em MQL5: Criando um Expert Advisor Eficaz

Neste artigo, vamos automatizar as estratégias de negociação com a Estratégia Parabolic SAR em MQL5: Criando um Expert Advisor Eficaz. O EA realizará negociações com base nas tendências identificadas pelo indicador Parabolic SAR.
preview
Criando um Painel de Administrador de Negociação em MQL5 (Parte I): Construindo uma Interface de Mensagens

Criando um Painel de Administrador de Negociação em MQL5 (Parte I): Construindo uma Interface de Mensagens

Este artigo discute a criação de uma Interface de Mensagens para o MetaTrader 5, voltada para Administradores de Sistema, para facilitar a comunicação com outros traders diretamente dentro da plataforma. Integrações recentes de plataformas sociais com o MQL5 permitem a transmissão rápida de sinais através de diferentes canais. Imagine ser capaz de validar sinais enviados com apenas um clique—"SIM" ou "NÃO". Continue lendo para saber mais.
preview
Redes neurais em trading: Representação adaptativa de grafos (NAFS)

Redes neurais em trading: Representação adaptativa de grafos (NAFS)

Apresentamos o método NAFS (Node-Adaptive Feature Smoothing), uma abordagem não paramétrica para criar representações de nós que não requer o treinamento de parâmetros. O NAFS extrai as características de cada nó considerando seus vizinhos e, então, combina essas características de forma adaptativa para formar a representação final.
preview
Redes neurais em trading: Transformer contrativo de padrões (Conclusão)

Redes neurais em trading: Transformer contrativo de padrões (Conclusão)

No último artigo da série, analisamos o framework Atom-Motif Contrastive Transformer (AMCT), que utiliza aprendizado contrastivo para identificar padrões-chave em todos os níveis, desde os elementos básicos até estruturas complexas. Neste artigo, continuamos a implementar as abordagens do AMCT com recursos do MQL5.
preview
Simulação de mercado (Parte 16): Sockets (X)

Simulação de mercado (Parte 16): Sockets (X)

Estamos a um passo de concluir este desafio. Porém, quero que você, caro leitor, procure entender primeiro estes dois artigos. Tanto este como o anterior. Isto para que consiga de fato entender o próximo onde abordarei exclusivamente a parte referente a programação em MQL5. Apesar de que ali a coisa será igualmente voltada a ser fácil de entender. Se você não compreender estes dois últimos artigos. Com toda a certeza terá grandes problemas em entender o próximo. O motivo disto é simples: As coisas vão se acumulando. Quando mais coisas é preciso fazer, mais coisas é preciso criar e entender para poder atingir o objetivo.
preview
Do básico ao intermediário: Estruturas (IV)

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

Neste artigo, veremos como produzir o chamado código estrutural. Onde colocamos dentro de uma estrutura, todo o contexto e formas de manipular variáveis e informações, a fim de gerar um contexto adequado para implementação de um código qualquer. Veremos a necessidade de se fazer uso da clausula private, a fim de separar o que é ou não público. Fazendo assim com que a regra do encapsulamento seja respeitada e que o contexto pelo qual uma estrutura de dados tenha sido criada seja mantido.
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
Métodos de otimização da biblioteca ALGLIB (Parte I)

Métodos de otimização da biblioteca ALGLIB (Parte I)

Neste artigo, vamos conhecer os métodos de otimização da biblioteca ALGLIB para MQL5. O artigo inclui exemplos simples e visuais de aplicação da ALGLIB para resolver tarefas de otimização, o que tornará o processo de aprendizado dos métodos o mais acessível possível. Analisaremos detalhadamente a integração de algoritmos como BLEIC, L-BFGS e NS, e com base neles resolveremos uma tarefa de teste simples.
preview
Ganhe uma Vantagem Sobre Qualquer Mercado (Parte III): Índice de Gastos com Cartões Visa

Ganhe uma Vantagem Sobre Qualquer Mercado (Parte III): Índice de Gastos com Cartões Visa

No mundo dos big data, existem milhões de conjuntos de dados alternativos que têm o potencial de aprimorar nossas estratégias de negociação. Nesta série de artigos, vamos ajudá-lo a identificar os conjuntos de dados públicos mais informativos.
preview
Construindo Expert Advisors Auto-otimizantes Com MQL5 E Python (Parte II): Ajustando Redes Neurais Profundas

Construindo Expert Advisors Auto-otimizantes Com MQL5 E Python (Parte II): Ajustando Redes Neurais Profundas

Modelos de aprendizado de máquina vêm com vários parâmetros ajustáveis. Nesta série de artigos, exploraremos como personalizar seus modelos de IA para se ajustar ao seu mercado específico utilizando a biblioteca SciPy.
preview
Implementando uma Estratégia de Negociação com Bandas de Bollinger usando MQL5: Um Guia Passo a Passo

Implementando uma Estratégia de Negociação com Bandas de Bollinger usando MQL5: Um Guia Passo a Passo

Um guia passo a passo para implementar um algoritmo de negociação automatizado em MQL5 baseado na estratégia de Bandas de Bollinger. Um tutorial detalhado sobre a criação de um Expert Advisor que pode ser útil para traders.
preview
Redes neurais em trading: Análise da situação do mercado usando o transformador de padrões

Redes neurais em trading: Análise da situação do mercado usando o transformador de padrões

Ao analisarmos a situação do mercado com nossos modelos, o elemento-chave é a vela. No entanto, sabe-se há muito tempo que os padrões de velas podem ajudar a prever movimentos futuros de preço. Neste artigo, apresentaremos um método que permite integrar essas duas abordagens.
preview
Redes neurais em trading: Transformer contrastivo de padrões

Redes neurais em trading: Transformer contrastivo de padrões

O Transformer contrastivo de padrões realiza a análise de situações de mercado, tanto no nível de velas individuais quanto no de padrões completos. Isso contribui para aprimorar a modelagem das tendências de mercado. Além disso, o uso do aprendizado contrastivo para alinhar as representações das velas e dos padrões leva à autorregulação e ao aumento da precisão das previsões.
preview
Redes neurais em trading: Transformer com codificação relativa

Redes neurais em trading: Transformer com codificação relativa

O aprendizado autossupervisionado pode ser uma forma eficaz de analisar grandes volumes de dados brutos não rotulados. O principal fator de sucesso é a adaptação dos modelos às particularidades dos mercados financeiros, o que melhora o desempenho dos métodos tradicionais. Este artigo apresentará um mecanismo alternativo de atenção, que permite levar em conta dependências relativas e inter-relações entre os dados brutos.
preview
Simulação de mercado (Parte 15): Sockets (IX)

Simulação de mercado (Parte 15): Sockets (IX)

Neste artigo daqui, explicarei uma das soluções possíveis para o que venho tentando mostrar. Ou seja, como permitir que um usuário no Excel, consiga fazer algo no MetaTrader 5. Isto sem que ele de fato, envie ordens, abra ou feche uma posição usando o MetaTrader 5. A ideia, é que o usuário faça uso do Excel a fim de ter um estudo fundamentalista de algum ativo. E fazendo uso, apenas e somente do Excel, ele consiga dizer a um Expert Advisor, que esteja executando no MetaTrader 5, que é para abrir ou fechar uma dada posição.
preview
Do básico ao intermediário: Estruturas (III)

Do básico ao intermediário: Estruturas (III)

Neste artigo vamos ver o que seria de fato um código estruturado. Muita gente confunde código estruturado com um código organizado. No entanto, existe uma diferença entre ambos conceitos. E isto será explicando neste artigo. Apesar da aparente complexidade que será notada no primeiro contato com este tipo de codificação, procurei abordar o tema da melhor maneira possível. Mas este artigo é apenas o primeiro passo para algo ainda maior.
preview
Algoritmo de otimização baseado em ecossistema artificial — Artificial Ecosystem-based Optimization (AEO)

Algoritmo de otimização baseado em ecossistema artificial — Artificial Ecosystem-based Optimization (AEO)

O artigo aborda o algoritmo metaheurístico AEO, que modela as interações entre os componentes de um ecossistema, criando uma população inicial de soluções e aplicando estratégias adaptativas de atualização, e descreve detalhadamente as etapas do funcionamento do AEO, incluindo as fases de consumo e decomposição, bem como as diferentes estratégias de comportamento dos agentes. O artigo apresenta as características e vantagens do AEO.
preview
Redes neurais em trading: Segmentação guiada (Conclusão)

Redes neurais em trading: Segmentação guiada (Conclusão)

Damos continuidade ao trabalho iniciado no artigo anterior sobre a construção do framework RefMask3D utilizando MQL5. Esse framework foi desenvolvido para um estudo aprofundado da interação multimodal e da análise de características em nuvens de pontos, com posterior identificação do objeto-alvo com base em uma descrição fornecida em linguagem natural.
preview
De Novato a Especialista: A Jornada Essencial no Comércio MQL5

De Novato a Especialista: A Jornada Essencial no Comércio MQL5

Desbloqueie seu potencial! Você está cercado de oportunidades. Descubra 3 segredos principais para iniciar sua jornada MQL5 ou levá-la para o próximo nível. Vamos mergulhar na discussão de dicas e truques para iniciantes e profissionais.
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. O sistema demonstra o potencial de combinar finanças quantitativas com processamento de linguagem natural, oferecendo uma abordagem de ponta para negociação algorítmica que capitaliza fontes alternativas de dados. Embora mostre promissores resultados, o bot também destaca áreas para melhorias futuras, incluindo técnicas de análise de sentimento mais avançadas e estratégias aprimoradas de gerenciamento de risco.
preview
Redes neurais em trading: Segmentação guiada

Redes neurais em trading: Segmentação guiada

Vamos conhecer um método de análise multimodal integrada para interagir e compreender características.
preview
Previsão de taxas de câmbio usando métodos clássicos de aprendizado de máquina: Modelos Logit e Probit

Previsão de taxas de câmbio usando métodos clássicos de aprendizado de máquina: Modelos Logit e Probit

Tentou-se criar um EA para prever cotações de taxas de câmbio. Como base para o algoritmo, foram adotados modelos clássicos de classificação, como regressão logística e probit. O critério de razão de verossimilhança é utilizado para filtrar os sinais de negociação.
preview
Simulação de mercado (Parte 14): Sockets (VIII)

Simulação de mercado (Parte 14): Sockets (VIII)

Muitos poderiam sugerir, que deveríamos abandonar o Excel, e usar o Python pura e simplesmente. Fazendo uso de alguns pacotes que permitiriam ao Python criar um arquivo de Excel, para que pudéssemos analisar os resultados depois. Mas como foi dito no artigo anterior, apesar desta solução ser a mais simples, pelo ponto de vista de muitos programadores. Ela de fato, não será bem vista, pelos olhos de alguns usuários. E nesta história toda, o usuário tem sempre razão. Você como programador deve, encontrar alguma forma ou alguma maneira de fazer as coisas funcionarem.