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
Floresta de Decisão Aleatória na Aprendizagem por Reforço
Floresta de Decisão Aleatória na Aprendizagem por Reforço

Floresta de Decisão Aleatória na Aprendizagem por Reforço

A Floresta Aleatória (RF), com o uso de bagging, é um dos métodos mais poderosos de aprendizado de máquina, o que é ligeiramente inferior ao gradient boosting. Este artigo tenta desenvolver um sistema de negociação de autoaprendizagem que toma decisões com base na experiência adquirida com a interação com o mercado.
EA com interface gráfica: Criação do painel (Parte I)
EA com interface gráfica: Criação do painel (Parte I)

EA com interface gráfica: Criação do painel (Parte I)

Apesar de muitos traders ainda preferirem negociar manualmente, há poucas hipóteses de fazer o trabalho sem automatizar as operações de rotina. O artigo mostra um exemplo em que é criado um EA multissímbolo de sinal para negociação manual.
Como analisar os trades do Sinal selecionado no gráfico
Como analisar os trades do Sinal selecionado no gráfico

Como analisar os trades do Sinal selecionado no gráfico

O serviço Sinais de negociação se desenvolve rapidamente. E como você está confiando seu dinheiro a um provedor do sinais, seria bom minimizar o risco de perder o depósito. Como lidar com essa selva de sinais de negociação? Como encontrar esse sinal que trará o lucro para você? O artigo propõe a criação de uma ferramenta para analisar visualmente o histórico de trades de sinais de negociação no gráfico do instrumento.
Como transferir a parte de cálculo de qualquer indicador para o código do EA
Como transferir a parte de cálculo de qualquer indicador para o código do EA

Como transferir a parte de cálculo de qualquer indicador para o código do EA

Existem vários motivos que justificam a transferência do código do indicador para o EA. Mas como avaliar os prós e contras desta abordagem? Este artigo propõe uma maneira de transferir o código do indicador para um EA. Além disso, são realizados vários experimentos para avaliar a velocidade de funcionamento do EA.
Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient
Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient

Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient

Continuamos a estudar o trabalho com a CAppDialog. Agora, aprenderemos a como definir a cor de fundo, de borda e de barra de título para o painel gráfico. Consideraremos passo a passo como adicionar transparência à janela do aplicativo ao movê-la no gráfico. Em seguida, analisaremos a criação de descendentes da CAppDialog ou da CWndClient e veremos novas sutilezas ao trabalhar com controles. Finalmente, olharemos de uma nova perspectiva os novos Projetos.
Visualização dos resultados de otimização pelo critério selecionado
Visualização dos resultados de otimização pelo critério selecionado

Visualização dos resultados de otimização pelo critério selecionado

No artigo, continuamos a desenvolver o aplicativo MQL para trabalhar com resultados de otimização que foi iniciado em artigos anteriores. Desta vez, veremos um exemplo em que podemos gerar uma tabela de melhores resultados após a otimização de parâmetros, especificando através da interface gráfica outro critério.
Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência
Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência

Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência

O artigo apresenta a criação do indicador ZigZag de acordo com os termos de referência para um dos exercícios descritos no artigo "Como criar uma especificação de requisitos para solicitar um indicador". O indicador é construído com base em extremos determinados com a ajuda de um oscilador. O indicador suporta o uso de um dos seguintes osciladores: WPR, CCI, Chaikin, RSI, Stochastic Oscillator.
preview
Como criar um painel gráfico de qualquer nível de complexidade

Como criar um painel gráfico de qualquer nível de complexidade

O artigo apresenta uma explicação detalhada de como criar um painel com base na classe CAppDialog e como adicionar controles ao painel. Ele fornece a descrição da estrutura do painel e um esquema, que exibe a herança de objetos. Neste artigo, você também aprenderá como os eventos são tratados e como eles são entregues aos controles dependentes. Exemplos adicionais mostram como editar os parâmetros do painel, como o tamanho e a cor do plano de fundo.
Redes Neurais Profundas (Parte V). Otimização Bayesiana de hiperparâmetros de uma DNN
Redes Neurais Profundas (Parte V). Otimização Bayesiana de hiperparâmetros de uma DNN

Redes Neurais Profundas (Parte V). Otimização Bayesiana de hiperparâmetros de uma DNN

O artigo considera a possibilidade de aplicar a otimização Bayesiana para os hiperparâmetros das redes neurais profundas, obtidas por diversas variantes de treinamento. É realizado a comparação da qualidade de classificação de uma DNN com os hiperparâmetros ótimos em diferentes variantes de treinamento. O nível de eficácia dos hiperparâmetros ótimos da DNN foi verificado nos testes fora da amostra (forward tests). As direções possíveis para melhorar a qualidade da classificação foram determinadas.
Trabalhemos com os resultados da otimização através da interface gráfica do usuário
Trabalhemos com os resultados da otimização através da interface gráfica do usuário

Trabalhemos com os resultados da otimização através da interface gráfica do usuário

Continuamos a desenvolver o tópico sobre o processamento e análise de resultados de otimização. Desta vez, a tarefa é selecionar os 100 melhores resultados de otimização e exibi-los na tabela da GUI. Vamos fazer com que o usuário, selecionando uma série na tabela de resultados de otimização, receba um gráfico multissímbolo de saldo e rebaixamento, em gráficos separados.
Gráfico de saldo multissímbolo no MetaTrader 5
Gráfico de saldo multissímbolo no MetaTrader 5

Gráfico de saldo multissímbolo no MetaTrader 5

O artigo mostra um aplicativo MQL de exemplo com uma interface gráfica em que gráficos multissímbolos de saldo e rebaixamento do depósito são exibidos com base nos resultados do último teste.
Visualizando a otimização de uma estratégia de negociação na MetaTrader 5
Visualizando a otimização de uma estratégia de negociação na MetaTrader 5

Visualizando a otimização de uma estratégia de negociação na MetaTrader 5

O artigo implementa um aplicativo MQL com uma interface gráfica para a visualização estendida do processo de otimização. A interface gráfica utiliza a última versão da biblioteca EasyAndFast. Muitos usuários podem questionar-se sobre a necessidade de utilizar interfaces gráficas em aplicativos MQL. Este artigo demonstra um dos vários casos em que eles podem ser úteis para os traders.
Criando EAs multimódulo
Criando EAs multimódulo

Criando EAs multimódulo

A linguagem de programação MQL permite concretizar o conceito de design modular de estratégias de negociação. O artigo mostra um exemplo de criação de um Expert Advisor multimodular que consiste em módulos de arquivo compilados separadamente.
Sincronização de vários gráficos num instrumento em diferentes timeframes
Sincronização de vários gráficos num instrumento em diferentes timeframes

Sincronização de vários gráficos num instrumento em diferentes timeframes

Muitas vezes, para tomar decisões, no processo de negociação, é necessário analisar simultaneamente gráficos em vários timeframes. Ao mesmo tempo, há objetos de análise gráfica nos gráficos. Implementar os mesmos objetos em todos os gráficos é incômodo. Neste artigo, proponho automatizar a clonagem de objetos em gráficos.
Comparamos a velocidade de indicadores de armazenamento automático em cache
Comparamos a velocidade de indicadores de armazenamento automático em cache

Comparamos a velocidade de indicadores de armazenamento automático em cache

O artigo compara o acesso MQL5 clássico a indicadores com métodos alternativos em estilo MQL4. São consideradas algumas variações de acesso - em estilo MQL4 - a indicadores, nomeadamente, o acesso com cache de identificadores e sem ele. É estudada a contabilização de identificadores de indicadores dentro do kernel MQL5.
Como criar uma Especificação de Requisitos para solicitar um indicador
Como criar uma Especificação de Requisitos para solicitar um indicador

Como criar uma Especificação de Requisitos para solicitar um indicador

Na maioria das vezes, a primeira etapa no desenvolvimento de um sistema de negociação é a criação de um indicador técnico, que pode identificar padrões favoráveis ​​de comportamento do mercado. Um indicador desenvolvido de forma profissional pode ser encomendado no serviço Freelance. Neste artigo você aprenderá a criar uma Especificação de Requisitos apropriada, que o ajudará a obter o indicador desejado mais rapidamente.
Otimização Controlada: Recozimento Simulado
Otimização Controlada: Recozimento Simulado

Otimização Controlada: Recozimento Simulado

O Testador de Estratégia da plataforma de negociação MetaTrader 5 fornece apenas duas opções de otimização: otimização completa dos parâmetros e o algoritmo genético. Este artigo propõe um novo método para otimizar as estratégias de negociação — Recozimento Simulado (Simulated Annealing). Será introduzido o algoritmo do método, sua implementação e integração em qualquer Expert Advisor. O algoritmo desenvolvido é testado no EA Moving Average (Média Móvel).
Criando um feed de notícias personalizado para o MetaTrader 5
Criando um feed de notícias personalizado para o MetaTrader 5

Criando um feed de notícias personalizado para o MetaTrader 5

O artigo examina a possibilidade de criar um feed de notícias flexível, que oferece muitas opções para escolher o tipo de notícias e sua fonte. Além disso, ele mostra como você pode integrar uma API da Web ao terminal MetaTrader 5.
ZUP - ZigZag universal com padrões Pesavento. Pesquisa de padrões
ZUP - ZigZag universal com padrões Pesavento. Pesquisa de padrões

ZUP - ZigZag universal com padrões Pesavento. Pesquisa de padrões

A plataforma-indicador do ZUP permite pesquisar padrões populares com parâmetros já definidos. Embora eles estejam definidos, você também pode ajustá-los de acordo com suas necessidades. Há também a possibilidade de criar novos padrões usando a interface gráfica do ZUP e salvar seus parâmetros num arquivo. Depois disso, você pode verificar rapidamente se há novos padrões nos gráficos.
Teste de padrões que surgem ao negociar cestas de pares de moedas. Parte III
Teste de padrões que surgem ao negociar cestas de pares de moedas. Parte III

Teste de padrões que surgem ao negociar cestas de pares de moedas. Parte III

Neste artigo, nós terminamos de testar os padrões que podem ser detectados ao negociar cestas de par de moedas. Aqui nós apresentamos os resultados do teste dos padrões que rastreiam o movimento das moedas dos pares em relação uns aos outros.
LifeHack para traders: "amassando" ForEach com os define (#define)
LifeHack para traders: "amassando" ForEach com os define (#define)

LifeHack para traders: "amassando" ForEach com os define (#define)

Passo intermediário para aqueles que ainda escrevem em MQL4, mas não conseguem migrar para MQL5. Continuamos a procurar oportunidades para escrever código em estilo MQL4. Desta vez, examinaremos a substituição de macros do pré-processador - #define.
Gerenciamento de capital de Vince. Realização como módulo de Assistente MQL5
Gerenciamento de capital de Vince. Realização como módulo de Assistente MQL5

Gerenciamento de capital de Vince. Realização como módulo de Assistente MQL5

O artigo foi escrito com base no livro de Ralph Vince, “The Mathematics of Money Management”. Nele, são discutidos os métodos empíricos e paramétricos, a fim de encontrar o tamanho ideal de lotes de negociação, em cuja base estão escritos os módulos de gerenciamento de capital para o assistente MLQ5.
O padrão Rompimento de Canal
O padrão Rompimento de Canal

O padrão Rompimento de Canal

As tendências de preços formam canais de preços que podem ser observados nos gráficos dos instrumentos financeiros. O rompimento do canal atual é um forte sinal de reversão de tendência. Neste artigo, eu sugiro uma maneira de automatizar o processo de encontrar esses sinais e ver se o padrão de rompimento de canal pode ser usado para criar uma estratégia de negociação.
LifeHack para traders: preparemos "fast-food" de indicadores
LifeHack para traders: preparemos "fast-food" de indicadores

LifeHack para traders: preparemos "fast-food" de indicadores

Se você estiver mudando para MQL5 agora, você vai precisar deste artigo, porque, por um lado, o acesso aos dados dos indicadores e às séries é realizado na nossa conhecida linguagem MQL4, por outro lado, toda a realização é escrita em MQL5. Todas as funções são o mais claras quanto possível e são perfeitamente adequadas para a depuração passo a passo.
Geração automática de linhas de suporte e resistência
Geração automática de linhas de suporte e resistência

Geração automática de linhas de suporte e resistência

O artigo fala sobre a construção automática de linhas de suporte e resistência atravessando máximos e mínimos locais, nos gráficos de preços. Para determinar estes extremos, é aplicado o popularmente conhecido ZigZag.
Testador de estratégia personalizada com base em cálculos matemáticos rápido
Testador de estratégia personalizada com base em cálculos matemáticos rápido

Testador de estratégia personalizada com base em cálculos matemáticos rápido

O artigo descreve como criar um testador de estratégias personalizado e um analisador de corridas de otimização próprio. Depois de lê-lo, você vai entender como funciona o modo de cálculos matemáticos e o mecanismo de quadros, como preparar e fazer upload de seus próprios dados para cálculos e usar algoritmos eficientes para comprimi-los. Além disso, este artigo será de interesse para quem deseje saber maneiras de armazenar informações personalizadas num EA.
Como reduzir os riscos trader
Como reduzir os riscos trader

Como reduzir os riscos trader

A negociação nos mercados financeiros está associada a um conjunto de riscos que deve ser considerado nos algoritmos dos sistemas de negociação. A redução desses riscos é uma tarefa importante, quando se quer tirar lucro da negociação.
Criando uma nova estratégia de negociação usando uma tecnologia de resolução de entradas em indicadores
Criando uma nova estratégia de negociação usando uma tecnologia de resolução de entradas em indicadores

Criando uma nova estratégia de negociação usando uma tecnologia de resolução de entradas em indicadores

O artigo sugere uma tecnologia que ajuda todos a criar estratégias de negociação personalizadas, montando um conjunto de indicadores individuais, além de desenvolver sinais personalizados de entrada no mercado.
Seleção automática de sinais promissores
Seleção automática de sinais promissores

Seleção automática de sinais promissores

O artigo analisa os sinais de negociação, para o MetaTrader 5, com execução automática, nas contas dos assinantes. Também é estudado o desenvolvimento de ferramentas para procurar sinais de negociação promissores diretamente no terminal.
Avaliação do risco numa sequência de trades com um ativo. Continuação
Avaliação do risco numa sequência de trades com um ativo. Continuação

Avaliação do risco numa sequência de trades com um ativo. Continuação

O artigo desenvolve as idéias propostas, na seção anterior, e continua a examiná-las. Além disso, discute questões sobre a alocação da rentabilidade, a construção e o estudo de padrões estatísticos.
Estratégia de negociação "Momentum Pinball"
Estratégia de negociação "Momentum Pinball"

Estratégia de negociação "Momentum Pinball"

Neste artigo, continuamos a falar sobre a programação das estratégias de negociação descritas no livro de L. Raschke e L. Connors "Street Smarts: High Probability Short-Term Trading Strategies, devoted to testing of range limits by price". Desta vez, estudamos o sistema "Momentum Pinball": é descrita a criação de dois indicadores, um robô de negociação e um bloco de sinal com base nele.
Negociação pelos níveis de DiNapoli
Negociação pelos níveis de DiNapoli

Negociação pelos níveis de DiNapoli

O artigo considera uma das variantes da implementação prática do Expert Advisor para negociar com os níveis de DiNapoli usando as ferramentas padrão da MQL5. São realizados o teste de desempenho e suas conclusões.
Negociação noturna na sessão asiática: como continuar tendo lucro
Negociação noturna na sessão asiática: como continuar tendo lucro

Negociação noturna na sessão asiática: como continuar tendo lucro

O artigo discute o conceito de negociação em horário noturno, estratégias de trading e sua implementação em MQL5. É realizado um teste e são feitas conclusões.
Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5
Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5

Indicador NRTR e módulos de negociação baseados nele para o Assistente MQL5

Este artigo descreve o indicador NRTR e módulos de negociação criados com sua ajuda. Para estes fins, é criado um módulo de sinais de negociação que permite criar estratégias baseadas nas combinações do NRTR e indicadores adicionais que confirmam a tendência.
Decompondo as entradas em indicadores
Decompondo as entradas em indicadores

Decompondo as entradas em indicadores

Diferentes situações acontecem na vida do trader. Muitas vezes, tentamos restaurar uma estratégia por meio do histórico de trades bem-sucedidos, no entanto, ao observar o histórico de perdas procuramos aperfeiçoar e melhorá-la. E, de fato, em ambos os casos, comparamos as transações com indicadores conhecidos. Este artigo sugere métodos de comparação de lotes de trades com uma série de indicadores.
Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II
Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II

Teste de padrões que surgem ao negociar cestas de pares de moedas Parte II

Continuamos a testar padrões e métodos descritos nos artigos sobre negociação de cestas de pares de moedas. Consideraremos, na prática, se é possível usar os padrões de cruzamento entre o gráfico do WPR combinado e o da média móvel.
R quadrado como uma estimativa da qualidade da curva de saldo da estratégia
R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

Este artigo descreve a construção do R² - critério de otimização personalizado. Esse critério pode ser usado para estimar a qualidade da curva de saldo de uma estratégia e para selecionar as estratégias mais consistentes e lucrativas. O trabalho discute os princípios de sua construção e os métodos estatísticos utilizados na estimativa de propriedades e qualidade desta métrica.
Mini-emulador do mercado ou Testador de estratégias manual
Mini-emulador do mercado ou Testador de estratégias manual

Mini-emulador do mercado ou Testador de estratégias manual

O mini-emulador do mercado é um indicador projetado para emulação parcial do trabalho no terminal. Presumivelmente, ele pode ser usado no teste de estratégias "manuais" de análise e negociação no mercado.
Expert Advisor Multiplataforma: As classes CExpertAdvisor e CExpertAdvisors
Expert Advisor Multiplataforma: As classes CExpertAdvisor e CExpertAdvisors

Expert Advisor Multiplataforma: As classes CExpertAdvisor e CExpertAdvisors

Este artigo aborda principalmente as classes CExpertAdvisor e CExpertAdvisors, que servem como contêiner para todos os outros componentes descritos nesta série de artigos sobre expert advisors multiplataforma.
Uso do filtro de Kalman na previsão da tendência
Uso do filtro de Kalman na previsão da tendência

Uso do filtro de Kalman na previsão da tendência

Para o sucesso na negociação, quase sempre são necessários indicadores, cujo objetivo é a separação entre o movimento principal do preço e as flutuações ruidosas. Neste artigo, é examinado um dos filtros digitais mais promissores, o filtro de Kalman. Além disso, são descritos tanto sua construção como uso na prática.