Artigos sobre programação na linguagem 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
Melhore seus gráficos de negociação com uma GUI interativa baseada em MQL5 (Parte I): GUI móvel (I)

Melhore seus gráficos de negociação com uma GUI interativa baseada em MQL5 (Parte I): GUI móvel (I)

Libere todo o poder da representação de dados dinâmicos em suas estratégias de negociação ou utilitários com o nosso guia detalhado para desenvolver uma GUI móvel em MQL5. Mergulhe nos eventos do gráfico e saiba como projetar e implementar uma GUI móvel simples e múltipla em um único gráfico. O artigo também aborda a adição de elementos à GUI, aumentando sua funcionalidade e apelo estético.
Combinatória e teoria da probabilidade para negociação (Parte III): primeiro modelo matemático
Combinatória e teoria da probabilidade para negociação (Parte III): primeiro modelo matemático

Combinatória e teoria da probabilidade para negociação (Parte III): primeiro modelo matemático

Para dar continuação lógica ao tópico, hoje abordaremos o desenvolvimento de modelos matemáticos multifuncionais para tarefas de negociação. Assim sendo, descreverei todo o processo de desenvolvimento do primeiro modelo matemático para descrever fractais a partir do zero. Este modelo deve se tornar um importante alicerce, ser multifuncional e universal, inclusive para construir a base teórica para o futuro desenvolvimento do ramo.
Gráficos na biblioteca DoEasy (Parte 80): classe do objeto quadro de animação geométrica
Gráficos na biblioteca DoEasy (Parte 80): classe do objeto quadro de animação geométrica

Gráficos na biblioteca DoEasy (Parte 80): classe do objeto quadro de animação geométrica

Neste artigo, otimizaremos o código das classes vistas nos artigos anteriores e criaremos uma classe para o objeto do quadro de animação geométrica que nos permite desenhar polígonos regulares com um determinado número de vértices.
Gráficos na biblioteca DoEasy (Parte 86): coleção de objetos gráficos, controlamos a modificação de propriedades
Gráficos na biblioteca DoEasy (Parte 86): coleção de objetos gráficos, controlamos a modificação de propriedades

Gráficos na biblioteca DoEasy (Parte 86): coleção de objetos gráficos, controlamos a modificação de propriedades

Este artigo analisa o rastreamento de modificações nos valores de propriedades, remoção e renomeação de objetos gráficos dentro da biblioteca.
Trabalhando com preços na biblioteca DoEasy (Parte 64): livro de ofertas, classes do objeto-instantâneo e objeto-série de instantâneos do livro de ofertas
Trabalhando com preços na biblioteca DoEasy (Parte 64): livro de ofertas, classes do objeto-instantâneo e objeto-série de instantâneos do livro de ofertas

Trabalhando com preços na biblioteca DoEasy (Parte 64): livro de ofertas, classes do objeto-instantâneo e objeto-série de instantâneos do livro de ofertas

Neste artigo, criaremos duas classes (a do objeto-instantânea do livro de ofertas e a do objeto-série dos instantâneos do livro de ofertas) e testaremos a criação de uma série de dados do livro de ofertas.
preview
Teoria das Categorias em MQL5 (Parte 1)

Teoria das Categorias em MQL5 (Parte 1)

A Teoria das Categorias é um ramo diverso da Matemática e em expansão, sendo uma área relativamente recente na comunidade MQL. Esta série de artigos visa introduzir e examinar alguns de seus conceitos com o objetivo geral de estabelecer uma biblioteca aberta que atraia comentários e discussões enquanto esperamos promover o uso deste campo notável no desenvolvimento da estratégia dos traders.
preview
Melhore seus gráficos de negociação com uma GUI interativa baseada em MQL5 (Parte I): GUI móvel (II)

Melhore seus gráficos de negociação com uma GUI interativa baseada em MQL5 (Parte I): GUI móvel (II)

Libere todo o poder da representação de dados dinâmicos em suas estratégias de negociação ou utilitários com o nosso guia detalhado para desenvolver uma GUI móvel em MQL5. Mergulhe nos princípios fundamentais da programação orientada a objetos e aprenda a desenvolver e usar de forma fácil e eficiente uma ou mais GUIs móveis em um único gráfico.
preview
Tudo o que você precisa saber sobre a estrutura de um programa MQL5

Tudo o que você precisa saber sobre a estrutura de um programa MQL5

Qualquer programa em qualquer linguagem de programação possui uma estrutura específica. Neste artigo, você aprenderá os componentes básicos da estrutura de um programa na linguagem MQL5, o que pode ser extremamente útil ao criar um sistema de negociação ou uma ferramenta de negociação para o MetaTrader 5.
Resultados do MQL5 Market para o segundo trimestre de 2013
Resultados do MQL5 Market para o segundo trimestre de 2013

Resultados do MQL5 Market para o segundo trimestre de 2013

Operando com sucesso a um ano e meio, o MQL5 Market se tornou a maior loja de estratégias de negócios e indicadores técnicos de negociadores. Ele oferece cerca de 800 aplicações fornecidas por 350 desenvolvedores de todo o mundo. Mais de 100.000 programas de negócio já foram comprados e baixados por negociantes para os terminais do MetaTrader 5.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 05): cadeias de Markov

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 05): cadeias de Markov

As cadeias de Markov são uma poderosa ferramenta matemática que pode ser usada para modelar e prever dados de séries temporais em vários campos, incluindo finanças. Na modelagem e previsão de séries temporais financeiras, as cadeias de Markov são frequentemente usadas para modelar a evolução de ativos financeiros ao longo do tempo, ativo esses como preços de ações ou pares de moedas. Uma das principais vantagens dos modelos das cadeias de Markov é sua simplicidade e facilidade de uso.
preview
Trabalhando com séries temporais na biblioteca DoEasy (Parte 50): indicadores padrão multiperíodos multissímbolos com deslocamento

Trabalhando com séries temporais na biblioteca DoEasy (Parte 50): indicadores padrão multiperíodos multissímbolos com deslocamento

Neste artigo, melhoraremos os métodos da biblioteca para exibir corretamente indicadores padrão multissímbolos e multiperíodos, cujas linhas são exibidas no gráfico do símbolo atual com determinado deslocamento definido nas configurações. Também colocaremos as coisas em ordem nos métodos que permitem trabalhar com indicadores padrão e removeremos o código desnecessário no programa-indicador final para a área da biblioteca.
preview
Redes neurais de retropropagação em matrizes MQL5

Redes neurais de retropropagação em matrizes MQL5

Este artigo trata da teoria e prática do uso do algoritmo de retropropagação de erros no MQL5 através de matrizes. Oferecemos classes prontas e exemplos de scripts, indicadores e EAs.
preview
Algoritmos de otimização populacional: Método Nelder-Mead (NM)

Algoritmos de otimização populacional: Método Nelder-Mead (NM)

O artigo apresenta um estudo completo do método Nelder-Mead explicando como o simplex — o espaço dos parâmetros da função — muda e se reestrutura a cada iteração para alcançar a solução ótima, e também descreve como melhorar este método.
Gráficos na biblioteca DoEasy (Parte 73): objeto-forma de um elemento gráfico
Gráficos na biblioteca DoEasy (Parte 73): objeto-forma de um elemento gráfico

Gráficos na biblioteca DoEasy (Parte 73): objeto-forma de um elemento gráfico

Neste artigo, começamos uma nova seção grande sobre a biblioteca para trabalhar com gráficos. Hoje vamos criar um objeto de estados do mouse, um objeto base de todos os elementos gráficos e uma classe do objeto-forma dos elementos gráficos da biblioteca.
Gráficos na biblioteca DoEasy (Parte 89): programando objetos gráficos padrão Funcionalidade básica
Gráficos na biblioteca DoEasy (Parte 89): programando objetos gráficos padrão Funcionalidade básica

Gráficos na biblioteca DoEasy (Parte 89): programando objetos gráficos padrão Funcionalidade básica

Agora nossa biblioteca pode rastrear a remoção, modificação de parâmetros e o surgimento de objetos gráficos padrão no gráfico do terminal do cliente. Mas para ter um "jogo" completo, certamente nos falta a capacidade de criar objetos gráficos padrão a partir de nossos programas.
preview
Desenvolvimento de um sistema de negociação baseado no indicador Ichimoku

Desenvolvimento de um sistema de negociação baseado no indicador Ichimoku

Neste artigo continuamos a série em que aprendemos a construir sistemas de negociação com base nos indicadores mais populares. Desta vez vamos falar sobre o indicador Ichimoku e criar um sistema de negociação baseado nos seus valores.
preview
Desenvolvimento de um indicador Heiken Ashi personalizado usando MQL5

Desenvolvimento de um indicador Heiken Ashi personalizado usando MQL5

Neste artigo, aprenderemos a criar nosso próprio indicador usando MQL5 com base em nossas preferências, que será usado no MetaTrader 5 para interpretar gráficos ou como parte de Expert Advisors.
preview
Como visualizar operações diretamente no gráfico sem se perder no histórico de negociações

Como visualizar operações diretamente no gráfico sem se perder no histórico de negociações

Neste artigo, criaremos uma ferramenta simples para visualização prática de posições e operações diretamente no gráfico, com navegação por teclas. Isso permitirá que traders estudem visualmente operações individuais e obtenham todas as informações sobre os resultados das negociações diretamente no local.
preview
Aprendendo MQL5 do iniciante ao profissional (Parte II): Tipos de dados básicos e uso de variáveis

Aprendendo MQL5 do iniciante ao profissional (Parte II): Tipos de dados básicos e uso de variáveis

Continuação da série para iniciantes. Aqui veremos como criar constantes e variáveis, registrar datas, cores e outros dados úteis. Aprenderemos a criar enumerações como dias da semana ou estilos de linha (contínua, tracejada etc.). Variáveis e expressões são a base da programação. Elas estão em 99% dos programas, portanto é fundamental entendê-las. Se você é novato em programação, este é um bom ponto de partida. Se o nível de conhecimento em programação é muito básico, conforme meu artigo anterior (link no início).
preview
Esperança moral na negociação

Esperança moral na negociação

Este artigo trata da esperança moral. Veremos vários exemplos de como ela é aplicada na negociação e quais resultados podem ser obtidos com ela.
preview
Como desenvolver um sistema de negociação baseado no indicador Acumulação/Distribuição (AD)

Como desenvolver um sistema de negociação baseado no indicador Acumulação/Distribuição (AD)

Bem-vindo ao novo artigo da nossa série sobre como aprender a projetar sistemas de negociação com base nos indicadores técnicos mais populares. Neste artigo, nós aprenderemos sobre um novo indicador técnico chamado Acumulação/Distribuição e descobriremos como desenvolver um sistema de negociação em MQL5 baseado nas estratégias simples com o AD.
preview
Ciência de Dados e Aprendizado de Máquina (Parte 13): Analisando o mercado financeiro usando a análise de componentes principais (PCA)

Ciência de Dados e Aprendizado de Máquina (Parte 13): Analisando o mercado financeiro usando a análise de componentes principais (PCA)

Vamos tentar melhorar qualitativamente nossa análise dos mercados financeiros usando a análise de componentes principais (PCA). Aprenderemos como essa técnica pode ajudar a identificar padrões ocultos nos dados, identificar tendências de mercado ocultas e otimizar estratégias de investimento. Neste artigo, veremos como o PCA oferece uma nova perspectiva para a análise de dados financeiros complexos, ajudando-nos a ver informações que não percebemos usando abordagens tradicionais. Veremos se sua aplicação aos dados do mercado financeiro proporciona uma vantagem sobre a concorrência e nos ajuda a ficar um passo à frente.
preview
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 11): Nascimento do SIMULADOR (I)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 11): Nascimento do SIMULADOR (I)

Para poder usar dados que formam barras, precisamos abandonar o replay e começar a desenvolver um simulador. Não sabemos como ela foi criada. Estaremos utilizando as barras de 1 minuto, justamente pelo motivo, de elas nos darem, um nível de complexidade mínimo.
preview
Pairs Trade

Pairs Trade

Neste artigo, examinaremos o pairs trade, ou negociação de pares, principalmente seus princípios e perspectivas quanto à sua aplicação prática. Além disso, tentaremos criar uma estratégia baseada nele.
preview
Aprendendo a construindo um Expert Advisor que opera de forma automática (Parte 11): Automação (III)

Aprendendo a construindo um Expert Advisor que opera de forma automática (Parte 11): Automação (III)

Um sistema automático sem segurança não irá dar certo. Mas segurança não nasce sem que entendamos adequadamente algumas coisas. Neste artigo vamos entender é tão difícil alcançar a segurança máxima em sistemas automáticos.
preview
Criando um Expert Advisor Integrado MQL5-Telegram (Parte 5): Enviando Comandos do Telegram para o MQL5 e Recebendo Respostas em Tempo Real

Criando um Expert Advisor Integrado MQL5-Telegram (Parte 5): Enviando Comandos do Telegram para o MQL5 e Recebendo Respostas em Tempo Real

Neste artigo, criamos diversas classes para facilitar a comunicação em tempo real entre o MQL5 e o Telegram. Focamos na obtenção de comandos a partir do Telegram, sua decodificação e interpretação, e no envio de respostas adequadas de volta. Ao final, garantimos que essas interações estejam efetivamente testadas e operacionais dentro do ambiente de negociação.
preview
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 18):  Tiquete e mais tiquetes  (II)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 18): Tiquete e mais tiquetes (II)

Neste, fica extremamente claro, que as métricas, estão muito longe, do tempo ideal de confecção das barras de 1 minuto. Assim então, a primeira coisa que de fato iremos corrigir, será justamente isto. Corrigir a questão da temporização, não é algo complicado. Por mais incrível que possa parecer, é na verdade até bem simples de ser feito. Porém não fiz a correção no artigo anterior, por que lá o desejo era explicar, como fazer para jogar os dados de tickets, que estavam sendo usados para gerar as barras de 1 minuto no gráfico, para dentro da janela de observação de mercado.
preview
Experiências com redes neurais (Parte 2): Otimização inteligente de redes neurais

Experiências com redes neurais (Parte 2): Otimização inteligente de redes neurais

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
Biblioteca de análise numérica ALGLIB em MQL5

Biblioteca de análise numérica ALGLIB em MQL5

Neste artigo, vamos brevemente revisar a biblioteca de análise numérica ALGLIB 3.19, suas aplicações e novos algoritmos que aumentam a eficácia da análise de dados financeiros.
preview
Previsão usando modelos ARIMA em MQL5

Previsão usando modelos ARIMA em MQL5

Neste artigo, continuamos a desenvolver a classe CArima para construir modelos ARIMA adicionando métodos de previsão intuitivos.
preview
Relembrando a antiga estratégia de tendência: dois osciladores estocásticos, MA e Fibonacci

Relembrando a antiga estratégia de tendência: dois osciladores estocásticos, MA e Fibonacci

Estratégias de negociação tradicionais. Neste artigo, vamos explorar uma estratégia de acompanhamento de tendências. Essa abordagem é totalmente baseada em análise técnica e faz uso de vários indicadores e ferramentas para gerar sinais e identificar metas de negociação. Os elementos-chave dessa estratégia incluem um oscilador estocástico de 14 períodos, um oscilador estocástico de cinco períodos, uma média móvel de 200 períodos e uma projeção de Fibonacci (para determinar as metas de negociação).
preview
Aprendendo a construindo um EA que opera de forma automática (Parte 07): Tipos de Contas (II)

Aprendendo a construindo um EA que opera de forma automática (Parte 07): Tipos de Contas (II)

Aprenda como criar um EA que opera de forma automática, isto de forma simples e o mais seguro possível. É preciso sempre ficar atento, ao que um EA automatizado, esta fazendo, e se ele sair da linha, removê-lo o mais rápido possível do gráfico, encerrando o que ele estava fazendo, a fim de evitar que as coisas fugam do controle.
Outras classes na biblioteca DoEasy (Parte 66): classe-coleção de Sinais MQL5.com
Outras classes na biblioteca DoEasy (Parte 66): classe-coleção de Sinais MQL5.com

Outras classes na biblioteca DoEasy (Parte 66): classe-coleção de Sinais MQL5.com

Neste artigo, criaremos uma classe-coleção de sinais - do serviço Sinais MQL5.com - com funções para gerenciar sinais assinados e também modificaremos a classe do objeto-instantâneo do livro de ofertas para exibir o volume total de ordens sell e buy.
Gráficos na Biblioteca DoEasy (Parte 78): princípios de animação dentro da biblioteca Corte de imagens
Gráficos na Biblioteca DoEasy (Parte 78): princípios de animação dentro da biblioteca Corte de imagens

Gráficos na Biblioteca DoEasy (Parte 78): princípios de animação dentro da biblioteca Corte de imagens

Neste artigo, definiremos os princípios de animação que usaremos em algumas partes da biblioteca, desenvolveremos uma classe para copiar uma parte de uma imagem e colá-la no local especificado do objeto-forma, preservando e restaurando aquela parte do fundo da forma sobre a qual a imagem será colocada.
preview
Modelos de classificação da biblioteca Scikit-learn e sua exportação para o formato ONNX

Modelos de classificação da biblioteca Scikit-learn e sua exportação para o formato ONNX

Neste artigo, exploraremos o uso de todos os modelos de classificação do pacote Scikit-learn para resolver o problema de classificação dos íris de Fisher, tentaremos convertê-los para o formato ONNX e usaremos os modelos resultantes em programas MQL5. Também compararemos a precisão dos modelos originais e suas versões ONNX no Iris dataset completo.
preview
Indicador CCI. Atualizações e novos recursos

Indicador CCI. Atualizações e novos recursos

Neste artigo, considerarei a possibilidade de atualizar o indicador CCI. Além disso, eu apresentarei uma modificação do indicador.
preview
Testes de permutação de Monte Carlo no MetaTrader 5

Testes de permutação de Monte Carlo no MetaTrader 5

Este artigo explora o uso de testes de permutação, aplicando-os a qualquer Expert Advisor através da reorganização de dados de ticks, recorrendo exclusivamente aos recursos disponíveis no MetaTrader 5.
preview
Força bruta para encontrar padrões (Parte V): uma nova perspectiva

Força bruta para encontrar padrões (Parte V): uma nova perspectiva

Neste artigo, vou apresentar uma abordagem completamente diferente para o algorítmico de negociação, que levei um tempo considerável para desenvolver. Claro, tudo isso está relacionado ao meu programa de força bruta, que passou por várias mudanças, permitindo que ele resolva várias tarefas simultaneamente. No entanto, este artigo é mais geral e extremamente simples, sendo adequado até mesmo para aqueles que não têm conhecimento prévio ou apenas passaram por isso.
preview
Operações baseadas em ângulos para traders

Operações baseadas em ângulos para traders

Este artigo abordará operações baseadas em ângulos. Vamos examinar métodos para construir ângulos e utilizá-los no trading.
preview
Redes neurais de maneira fácil (Parte 83): Transformador espaciotemporal de atenção contínua (Conformer)

Redes neurais de maneira fácil (Parte 83): Transformador espaciotemporal de atenção contínua (Conformer)

O algoritmo Conformer, apresentado aqui, foi desenvolvido para prever o tempo, que, em termos de variabilidade e imprevisibilidade, pode ser comparado aos mercados financeiros. O Conformer é um método complexo que combina as vantagens dos modelos de atenção e das equações diferenciais ordinárias.