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
O envio do sinal de trade via feed RSS
O envio do sinal de trade via feed RSS

O envio do sinal de trade via feed RSS

Essa é minha ideia sobre como enviar sinal de trade como FEEDS RSS, um modo famoso de se comunicar com os membros da sua comunidade agora mesmo.
Expert Advisors baseado em sistemas de trading populares e alquimia da otimização de robô de trading (Parte V)
Expert Advisors baseado em sistemas de trading populares e alquimia da otimização de robô de trading (Parte V)

Expert Advisors baseado em sistemas de trading populares e alquimia da otimização de robô de trading (Parte V)

Nesse artigo o autor oferece formas para melhorar os sistemas de trading descritos nos artigos anteriores. O artigo será interessante para traders que já tem alguma experiência em escrever Expert Advisors.
preview
Algoritmos de otimização populacionais: algoritmo de vaga-lumes

Algoritmos de otimização populacionais: algoritmo de vaga-lumes

Vamos considerar o método de otimização de vaga-lumes (Firefly Algorithm, FA). Esse algoritmo evoluiu de um método desconhecido por meio de modificações para se tornar um líder real na tabela de classificação.
Trabalhando com preços e sinais na biblioteca DoEasy (Parte 65): coleção de livros de ofertas e classe para trabalhar com sinais MQL5.com
Trabalhando com preços e sinais na biblioteca DoEasy (Parte 65): coleção de livros de ofertas e classe para trabalhar com sinais MQL5.com

Trabalhando com preços e sinais na biblioteca DoEasy (Parte 65): coleção de livros de ofertas e classe para trabalhar com sinais MQL5.com

Neste artigo, criaremos uma classe-coleção de livros de ofertas para todos os símbolos e começaremos a desenvolver a funcionalidade para trabalhar com o serviço de sinais MQL5.com - criaremos uma classe objeto-sinal.
Luta pela velocidade: QLUA vs MQL5 - por que o MQL5 é 50 a 600 vezes mais rápido?
Luta pela velocidade: QLUA vs MQL5 - por que o MQL5 é 50 a 600 vezes mais rápido?

Luta pela velocidade: QLUA vs MQL5 - por que o MQL5 é 50 a 600 vezes mais rápido?

Para comparar as linguagens MQL5 e QLUA, escrevemos vários testes que medem a velocidade de execução de operações básicas. Nos testes, usamos um computador com Windows 7 Professional 64 bits, MetaTrader 5 build 1340 e QUIK versão 7.2.0.45.
Princípios de transformação de tempo em negociações intraday
Princípios de transformação de tempo em negociações intraday

Princípios de transformação de tempo em negociações intraday

Este artigo contém o conceito de tempo de operação que permite receber mais até com fluxo de preço. Ele também contém o código de mudança de média móvel com auxílio para essa transformação de tempo.
Especulação confortável
Especulação confortável

Especulação confortável

Esse artigo descreve o método para criar uma ferramenta para a especulação (scalping) confortável. Entretanto, tal abordagem a uma abertura de negócios pode ser aplicada a qualquer negociação.
Verificar o Mito: O Dia de Negociação Depende de Como Foi as Operações na Sessão Asiática
Verificar o Mito: O Dia de Negociação Depende de Como Foi as Operações na Sessão Asiática

Verificar o Mito: O Dia de Negociação Depende de Como Foi as Operações na Sessão Asiática

Neste artigo vamos verificar a afirmação bem conhecida de que "O Dia de Negociação Depende de Como Foi as Operações na Sessão Asiática".
Modelo de regressão universal para previsão de preços do mercado (Parte 2): funções de processos transitórios naturais, sociais e de origem tecnológica
Modelo de regressão universal para previsão de preços do mercado (Parte 2): funções de processos transitórios naturais, sociais e de origem tecnológica

Modelo de regressão universal para previsão de preços do mercado (Parte 2): funções de processos transitórios naturais, sociais e de origem tecnológica

Este artigo é uma continuação lógica do anterior e é escrito para destacar suas conclusões ao longo da década seguinte à sua publicação, no que diz respeito às três funções de processos dinâmicos transitórios que descrevem os padrões de mudança de preços de mercado.
preview
Integrando modelos de ML ao Testador de estratégias  (Parte 3): Gerenciamento de Arquivos CSV(II)

Integrando modelos de ML ao Testador de estratégias (Parte 3): Gerenciamento de Arquivos CSV(II)

Este artigo fornece uma visão detalhada sobre como construir uma classe em MQL5 para gerenciamento eficiente de arquivos CSV. Ele explica como os métodos de abertura, escrita, leitura e conversão de dados são implementados e como eles podem ser utilizados para armazenar e carregar dados. Além disso, o artigo também discute as limitações e considerações importantes ao usar essa classe. É uma leitura valiosa para aqueles interessados em aprender a trabalhar com arquivos CSV em MQL5.
MT4TerminalSync - Sistema para sincronização de terminais MetaTrader 4
MT4TerminalSync - Sistema para sincronização de terminais MetaTrader 4

MT4TerminalSync - Sistema para sincronização de terminais MetaTrader 4

Este artigo é dedicado ao tema "Ampliando as possibilidades de programas MQL4 utilizando funções de sistemas operacionais e outros meios de desenvolvimento do programa". O artigo descreve um exemplo de um sistema de programa que implementa a tarefa da sincronização de várias cópias de terminais com base num único molde de origem.
preview
Melhore os gráficos de negociação com uma interface gráfica interativa baseada em MQL5 (Parte III): Interface de negociação simples e móvel

Melhore os gráficos de negociação com uma interface gráfica interativa baseada em MQL5 (Parte III): Interface de negociação simples e móvel

Nesta série de artigos, exploramos a integração de interfaces gráficas interativas em painéis de negociação móveis no MQL5. Na terceira parte, usamos os desenvolvimentos das partes anteriores para transformar painéis de negociação estáticos em dinâmicos.
Criação de um sistema de comércio automatizado
Criação de um sistema de comércio automatizado

Criação de um sistema de comércio automatizado

Você deve admitir que isso soa fascinante - tornar-se um proprietário privilegiado de um programa que pode desenvolver um sistema de comércio automatizado e lucrativo (ATC) em poucos minutos. Tudo que você precisa fazer é inserir os dados necessários e pressionar Enter. E - aqui está, pegue seu ATC testado e obtenha o retorno desejado. Onde milhares de pessoas passam milhares de horas desenvolvendo aquele ATC super original que irá "fazer chover", essas demonstrações soam, no mínimo, muito vazias. Por um lado, isso parece realmente maior que sua vida... No entanto, na minha opinião, este problema pode ser resolvido.
preview
Como desenvolver um sistema de negociação baseado no indicador Desvio Padrão

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

Aqui está um novo artigo em nossa série sobre como desenvolver um sistema de negociação pelos indicadores técnicos mais populares na plataforma de negociação MetaTrader 5. Neste novo artigo, nós aprenderemos como desenvolver um sistema de negociação pelo indicador Desvio Padrão.
preview
Redes neurais de maneira fácil (Parte 43): Dominando habilidades sem função de recompensa

Redes neurais de maneira fácil (Parte 43): Dominando habilidades sem função de recompensa

O problema com o aprendizado por reforço é a necessidade de definir uma função de recompensa, que pode ser complexa ou difícil de formular, porém abordagens baseadas no tipo de ação e na exploração do ambiente que permitem que as habilidades sejam aprendidas sem uma função de recompensa explícita estão sendo exploradas para resolver esse problema.
preview
Indicadores baseados na classe CCanvas: Preenchendo canais com transparência

Indicadores baseados na classe CCanvas: Preenchendo canais com transparência

Neste artigo, abordaremos os métodos de criação de indicadores personalizados que são desenhados usando a classe CCanvas da Biblioteca Padrão no MetaTrader 5. Também discutiremos as propriedades dos gráficos para a transformação de coordenadas. Daremos especial atenção aos indicadores que preenchem a área entre duas linhas usando transparência.
preview
Criação de Previsões de Séries Temporais Usando Redes Neurais LSTM: Normalizando Preço e Tokenizando o Tempo

Criação de Previsões de Séries Temporais Usando Redes Neurais LSTM: Normalizando Preço e Tokenizando o Tempo

Este artigo descreve uma estratégia simples para normalizar os dados de mercado usando o intervalo diário e treinar uma rede neural para aprimorar as previsões de mercado. Os modelos desenvolvidos podem ser utilizados em conjunto com estruturas de análise técnica existentes ou de forma independente para auxiliar na previsão da direção geral do mercado. A estrutura delineada neste artigo pode ser ainda mais refinada por qualquer analista técnico para desenvolver modelos adequados para estratégias de negociação manuais e automatizadas.
preview
Desenvolvendo um EA de negociação do zero (Parte 20): Um novo sistema de ordens (III)

Desenvolvendo um EA de negociação do zero (Parte 20): Um novo sistema de ordens (III)

Vamos continuar a implementação do novo sistema de ordens . A criação deste sistema é algo que demanda um bom domínio do MQL5, além de entender como de fato a plataforma MetaTrader 5 funciona e os recursos que ela nos fornece.
Dez "erros" cometidos por novatos em transações comerciais?
Dez "erros" cometidos por novatos em transações comerciais?

Dez "erros" cometidos por novatos em transações comerciais?

O artigo justifica a abordagem que consiste em construir um sistema de transações como uma sequência de pedidos inter-relacionados de abertura e fechamento em relação às condições existentes: os preços e os valores atuais do lucro/prejuízo de todos os pedidos, e não apenas em relação aos "alertas" convencionais. Nós apresentamos uma realização exemplar de um sistema de transações elementar do tipo.
preview
Explorando a magia dos períodos de negociação com o auxílio do Frames Analyzer

Explorando a magia dos períodos de negociação com o auxílio do Frames Analyzer

Bem, o Frames Analyzer é uma ferramenta para analisar quadros de otimização durante o processo de otimização de parâmetros quer seja no testador de estratégia ou fora do mesmo. Ele permite ler arquivos MQD ou bancos de dados criados após a otimização de parâmetros e compartilhar esses resultados com outros usuários da ferramenta. Ele é projetado para auxiliar a melhorar estratégias de negociação conjuntamente. Adicionalmente, é bom mencionar que quadro de otimização é um conjunto de dados que contém informações sobre as condições de mercado em um determinado momento, como preços, volumes, indicadores técnicos, entre outros, que são usados para avaliar e comparar a eficácia de diferentes estratégias de negociação.
Gráficos na biblioteca DoEasy (Parte 83): classe abstrata de objetos gráficos padrão
Gráficos na biblioteca DoEasy (Parte 83): classe abstrata de objetos gráficos padrão

Gráficos na biblioteca DoEasy (Parte 83): classe abstrata de objetos gráficos padrão

Neste artigo, criaremos uma classe para um objeto gráfico abstrato. Este objeto será a base para a criação de classes de objetos gráficos padrão. Os objetos gráficos têm muitas propriedades, e hoje, antes de criarmos uma classe de objetos gráficos abstratos, precisamos realizar um intenso trabalho preliminar, especificando ditas propriedades nas enumerações da biblioteca.
Teste visual da rentabilidade de indicadores e alertas
Teste visual da rentabilidade de indicadores e alertas

Teste visual da rentabilidade de indicadores e alertas

Normalmente, decide-se qual indicador de alerta de negociação ou apenas quais métodos do seu cálculo usar ao se testar EAs usando esses alertas. No entanto, não é sempre possível/necessário/razoável escrever um EA para cada indicador. Você pode calcular rapidamente a rentabilidade de negociação de alertas a partir de outros indicadores, usando um indicador especial que coleta seus alertas sozinho e desenha uma figura de negociação com ela. Isso pode ajudar a fazer uma estimativa visual dos resultados obtidos e escolher rapidamente os parâmetros mais adequados.
O show deve continuar, ou Mais uma vez sobre o ZigZag
O show deve continuar, ou Mais uma vez sobre o ZigZag

O show deve continuar, ou Mais uma vez sobre o ZigZag

Sobre um método óbvio, mas ainda subpadrão de composição do ZigZag e no que ele resulta: o indicador Multiframe Fractal ZigZag que representa ZigZags construídos em três maiores, em um único timeframe (TF) de trabalho. Na vez deles, os TFs maiores podem ser também não padrão e variar de M5 a MN1.
Indicadores tricolores e algumas oportunidades para a simplificação máxima de indicadores de escrita
Indicadores tricolores e algumas oportunidades para a simplificação máxima de indicadores de escrita

Indicadores tricolores e algumas oportunidades para a simplificação máxima de indicadores de escrita

Neste artigo o autor se debruça sobre algumas maneiras de aumentar o valor informacional dos indicadores para negociações visuais. O autor analisa a realização de indicadores tricolores, indicadores, para descobrir quais dados de outros períodos de tempo são usados, e continua a se debruçar na biblioteca de indicadores, descrita no artigo "Cálculo efetivo da média com atraso mínimo: Uso em indicadores"
Trabalhando com séries temporais na biblioteca DoEasy (Parte 44): classe-coleção de objetos de buffers de indicador
Trabalhando com séries temporais na biblioteca DoEasy (Parte 44): classe-coleção de objetos de buffers de indicador

Trabalhando com séries temporais na biblioteca DoEasy (Parte 44): classe-coleção de objetos de buffers de indicador

Neste artigo, veremos a criação de uma classe-coleção de objetos de buffers de indicador, testaremos tanto as possibilidades de criar qualquer quantidade de buffers para programas-indicadores quanto as de trabalhar com eles (o número máximo de buffers que podem ser criados em indicadores MQL é de 512 buffers).
Psicologia individual de um trader
Psicologia individual de um trader

Psicologia individual de um trader

Um retrato do comportamento de um trader no mercado financeiro. O menu do próprio autor, do livro "Как играть и выигрывать на бирже" ("Como especular e lucrar na bolsa de valores"), de A. Elder.
Resultados da MetaTrader AppStore para o terceiro trimestre de 2013
Resultados da MetaTrader AppStore para o terceiro trimestre de 2013

Resultados da MetaTrader AppStore para o terceiro trimestre de 2013

Outro trimestre do ano se passou e nós decidimos resumir seus resultados para a MetaTrader AppStore - a maior loja de robôs comerciais e indicadores técnicos para plataformas MetaTrader. Mais de 500 desenvolvedores colocaram mais de 200 produtos no mercado até o final do trimestre reportado.
preview
Ciência de Dados e Aprendizado de Máquina (Parte 04): Previsão de um crash no mercado de ações

Ciência de Dados e Aprendizado de Máquina (Parte 04): Previsão de um crash no mercado de ações

Neste artigo, eu tentarei usar nosso modelo logístico para prever o crash do mercado de ações com base nos fundamentos da economia dos EUA, nos concentraremos nas ações do NETFLIX e da APPLE, usando os crashes anteriores do mercado de 2019 e 2020, vamos ver como nosso modelo se comportará nas atuais desgraças e tristezas.
preview
Estruturas em MQL5 e formas de imprimir seus dados

Estruturas em MQL5 e formas de imprimir seus dados

Neste artigo, examinaremos as estruturas MqlDateTime, MqlTick, MqlRates, MqlBookInfo e as maneiras de imprimir os dados dessas estruturas. Para imprimir todos os campos de uma estrutura, existe a função padrão ArrayPrint(), que exibe os dados contidos em um array com o tipo da estrutura processada em um formato de tabela conveniente.
preview
Como desenvolver um sistema de negociação baseado no indicador Fractais

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

Aqui está um novo artigo da nossa série sobre como projetar um sistema de negociação com base nos indicadores técnicos mais populares. Nós aprenderemos um novo indicador que é o indicador Fractais e aprenderemos como desenvolver um sistema de negociação baseado nele para ser executado na plataforma MetaTrader 5.
Outras classes na biblioteca DoEasy (Parte 71): eventos da coleção de objetos-gráficos
Outras classes na biblioteca DoEasy (Parte 71): eventos da coleção de objetos-gráficos

Outras classes na biblioteca DoEasy (Parte 71): eventos da coleção de objetos-gráficos

Neste artigo, criaremos uma funcionalidade para rastrear alguns eventos de objetos-gráficos - adição/remoção de gráficos de símbolos, de subjanelas do gráfico, bem como adição/exclusão/mudança de indicadores presentes em janelas de gráficos.
preview
Modelos prontos para integrar indicadores nos Expert Advisors (Parte 3): Indicadores de tendência

Modelos prontos para integrar indicadores nos Expert Advisors (Parte 3): Indicadores de tendência

Neste artigo de referência, vamos dar uma olhada nos indicadores padrão da categoria Indicadores de tendência. Criaremos modelos prontos a serem usados em Expert Advisors, modelos esses que incluirão: declaração e configuração de parâmetros, inicialização/desinicialização de indicadores e recuperação de dados/sinais a partir de buffers de indicador em EAs.
Consideração de pedidos em um programa amplo
Consideração de pedidos em um programa amplo

Consideração de pedidos em um programa amplo

São discutidos princípios gerais de consideração de pedidos em um programa amplo e complexo.
Gráficos na biblioteca DoEasy (Parte 76): objeto forma e temas de cores predefinidos
Gráficos na biblioteca DoEasy (Parte 76): objeto forma e temas de cores predefinidos

Gráficos na biblioteca DoEasy (Parte 76): objeto forma e temas de cores predefinidos

Neste artigo, descreveremos o conceito de criação de temas de GUI na biblioteca, criaremos um objeto forma que será descendente de um objeto da classe do elemento gráfico, prepararemos dados para criar as sombras dos objetos gráficos da biblioteca e para continuar desenvolvendo a funcionalidade no futuro.
preview
Desenvolvendo um EA de negociação do zero (Parte 26): Em direção ao futuro (I)

Desenvolvendo um EA de negociação do zero (Parte 26): Em direção ao futuro (I)

Vamos levar nosso sistema de ordens para um outro patamar, mas antes temos algumas coisas a resolver. O problema é que existem questões que são dependentes de como você deseja operar e que tipo de coisa você estará fazendo no momento em que estiver operando.
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.
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.
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.