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
Busca de padrões sazonais no mercado de Forex usando o algoritmo CatBoost

Busca de padrões sazonais no mercado de Forex usando o algoritmo CatBoost

O artigo considera a criação de modelos de aprendizado de máquina com filtros de tempo e discute a eficácia dessa abordagem. O fator humano pode ser eliminado agora simplesmente instruindo o modelo a negociar em uma determinada hora de um determinado dia da semana. A busca de padrões pode ser fornecida por um algoritmo separado.
Modelagem de Apostas como meio de desenvolver "Intuição de Mercado"
Modelagem de Apostas como meio de desenvolver "Intuição de Mercado"

Modelagem de Apostas como meio de desenvolver "Intuição de Mercado"

O artigo trata sobre a noção de “intuição de mercado” e as formas de desenvolvê-la. O método descrito no artigo baseia-se na modelagem de apostas financeira na forma de um simples jogo.
Swaps (Parte I): bloqueio e posições sintéticas
Swaps (Parte I): bloqueio e posições sintéticas

Swaps (Parte I): bloqueio e posições sintéticas

Neste artigo, tentarei expandir o conceito clássico de métodos de negociação de swap, e também explicarei porque cheguei à conclusão de que ele, em minha opinião, merece atenção especial e vale absolutamente a pena ser estudado.
preview
Receitas MQL5: Calendário Econômico

Receitas MQL5: Calendário Econômico

Este artigo se trata das funcionalidades programáticas usadas ao trabalhar usando o calendário econômico. Para implementá-las, criaremos uma classe para facilitar o acesso às propriedades do calendário e receber valores de eventos. Como exemplo prático, programaremos um indicador que utiliza dados da CFTC sobre as posições líquidas de especuladores.
Transferência de um Código Indicador para um Código Expert Advisor. Conclusão
Transferência de um Código Indicador para um Código Expert Advisor. Conclusão

Transferência de um Código Indicador para um Código Expert Advisor. Conclusão

Este é o artigo final, dedicado à Transferência de um Código Indicador para um Código Expert Advisor. Aqui o autor transforma em um determinado exemplo um código de um Expert Advisor para que esta área seja apresentada em um único arquivo sem chamar indicadores personalizados.
Como cortar um Código de EA para uma vida mais fácil e menos erros
Como cortar um Código de EA para uma vida mais fácil e menos erros

Como cortar um Código de EA para uma vida mais fácil e menos erros

Um conceito simples descrito no artigo permite que as pessoas que desenvolvem sistemas de trading automatizados em MQL4 simplifiquem os sistemas de trading existentes, bem como reduzir o tempo necessário para o desenvolvimento de novos sistemas devido a códigos mais curtos.
Padrões disponíveis para negociação de cestas de moedas. Parte II
Padrões disponíveis para negociação de cestas de moedas. Parte II

Padrões disponíveis para negociação de cestas de moedas. Parte II

Continuação da conversa sobre padrões que podem ser detectados pelo trader ao operar pares de moedas. Esta parte descreve os padrões formados durante o uso combinado de indicadores de tendência. Como ferramentas de análise são usados indicadores construídos com base num índice de moeda.
Abordagem do objeto no MQL
Abordagem do objeto no MQL

Abordagem do objeto no MQL

Este artigo vai ser interessante, em primeiro lugar, para programadores novatos e profissionais que trabalham no ambiente MQL. Também seria útil se este artigo fosse lido por desenvolvedores e ideólogos do ambiente MQL pois as questões aqui analisadas podem tornar-se projetos para uma futura implementação do MetaTrader e da MQL.
Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)
Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)

Interfaces Gráficas II: Os Elementos Linha de Separação e o Menu de Contexto (Capítulo 2)

Neste artigo, nós vamos criar o elemento linha de separação. Será possível usá-lo não só como um elemento de interface independentes, mas também como uma parte de diversos outros elementos. Depois disso, nós teremos todos os recursos necessários para o desenvolvimento da classe do menu de contexto, que também serão considerados neste artigo em detalhe. Acrescentando, nós vamos apresentar todos os incrementos necessários à classe, que é a base para armazenar os ponteiros para todos os elementos da interface gráfica da aplicação.
Testando Expert Advisors em períodos de tempo fora do padrão
Testando Expert Advisors em períodos de tempo fora do padrão

Testando Expert Advisors em períodos de tempo fora do padrão

Não é somente simples; é super simples. Testar os Expert Advisors em períodos de tempo fora do padrão é possível! Tudo que precisamos é substituir os dados de período de tempo padrão com dados de período de tempo fora do padrão. Adicionalmente, podemos até mesmo testar os Expert Advisors que usam dados de vários períodos de tempo fora do padrão.
A Mágica dos Filtros
A Mágica dos Filtros

A Mágica dos Filtros

A maioria dos desenvolvedores de sistemas automatizados de negociação usam algum tipo de filtro nos sinais de negociação. Neste artigo, vamos explorar a criação e implementação de filtros passa-faixa e discretos e de cruzamento de bandas para Expert Advisors, com o objetivo de melhorar as características do sistema de negociação automática.
preview
Aprendendo a construindo um EA que opera de forma automática (Parte 08): OnTradeTransaction

Aprendendo a construindo um EA que opera de forma automática (Parte 08): OnTradeTransaction

Neste artigo, mostrei como você pode usar o sistema de tratamento de eventos, a fim de conseguir lidar com mais agilidade, e de uma forma melhor com questões envolvendo o sistema de ordens, a fim de deixar o EA mais rápido. Assim ele não precisará, ficar procurando informações a todo o momento.
Eliminação de DLLs autogeradas
Eliminação de DLLs autogeradas

Eliminação de DLLs autogeradas

Se a linguagem MQL5 funcional não é suficiente para o cumprimento de tarefas, um programador MQL5 tem que usar ferramentas adicionais. Ele \ ela tem que passar para outra linguagem de programação e criar uma DLL intermediária. O MQL5 tenha a possibilidade de apresentar vários tipos de dados e transferí-los à API mas, infelizmente o MQL5 não pode resolver a questão levando em consideração a extração de dados do ponteiro aceito. Neste artigo vamos pontuar todos os "i"s e mostrar mecanismos simples de transferência e trabalho tipos complexos de dados.
Interfaces gráficas X: Seleção de texto na caixa de texto multilinha (build 13)
Interfaces gráficas X: Seleção de texto na caixa de texto multilinha (build 13)

Interfaces gráficas X: Seleção de texto na caixa de texto multilinha (build 13)

Este artigo implementará a possibilidade de selecionar o texto usando várias combinações de teclas e excluir o texto selecionado, da mesma maneira que é feito em outros editores de texto. Além disso, vamos continuar com a otimização do código e prepararemos as classes para avançar para o processo final do segundo estágio da evolução da biblioteca, onde todos os controles serão renderizados como imagens separadas (telas).
Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte IX): Compatibilidade com a MQL4 - Preparação dos dados
Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte IX): Compatibilidade com a MQL4 - Preparação dos dados

Biblioteca para desenvolvimento fácil e rápido de programas para a MetaTrader (parte IX): Compatibilidade com a MQL4 - Preparação dos dados

Nos artigos anteriores, nós começamos a criar uma grande biblioteca multi-plataforma, simplificando o desenvolvimento de programas para as plataformas MetaTrader 5 e MetaTrader 4. Na oitava parte, nós implementamos a classe para monitorar os eventos de modificação de ordens e posições. Aqui, nós melhoraremos a biblioteca tornando-a totalmente compatível com a MQL4.
Escolha automatizada de corretora para um funcionamento eficiente do Expert Advisors
Escolha automatizada de corretora para um funcionamento eficiente do Expert Advisors

Escolha automatizada de corretora para um funcionamento eficiente do Expert Advisors

Não é segredo que, para um funcionamento eficaz do Expert Advisors, precisamos encontrar uma corretora adequada. Este artigo descreve um sistema de abordagem para esta busca. Você vai se familiarizar com o processo de criação de um programa com dll para trabalhar com diferentes terminais.
Expert Advisor MetaTrader 4 para Intercâmbio de Informações com o Mundo Exterior
Expert Advisor MetaTrader 4 para Intercâmbio de Informações com o Mundo Exterior

Expert Advisor MetaTrader 4 para Intercâmbio de Informações com o Mundo Exterior

Uma solução simples, universal e confiável de intercâmbio de informações entre um Expert Advisor МetaТrader 4 e o mundo exterior. Fornecedores e consumidores de informações podem estar localizados em diferentes computadores, a conexão é realizada através dos endereços IPs globais.
O mercado e a física de seus padrões globais
O mercado e a física de seus padrões globais

O mercado e a física de seus padrões globais

Neste artigo, eu tentarei testar a suposição de que qualquer sistema, mesmo com uma pequena compreensão do mercado, pode operar em escala global. Eu não inventarei nenhuma teoria ou padrão, mas apenas usarei de fatos conhecidos, traduzindo gradualmente esses fatos para a linguagem da análise matemática.
Operações de arquivo via WinAPI
Operações de arquivo via WinAPI

Operações de arquivo via WinAPI

O ambiente do MQL4 é baseado no conceito seguro de "sandbox": ler e salvar arquivos usando a linguagem é permitido somente em algumas pastas pré-definidas Isso protege o usuário do MetaTrader 4 do perigo em potencial de danificar dados importantes no HDD. Entretanto, às vezes, é necessário deixar essa área segura. Esse artigo dedica-se ao problema de como fazer isso facilmente e de forma correta.
Outras classes na biblioteca DoEasy (Parte 67): classe de objeto-gráfico
Outras classes na biblioteca DoEasy (Parte 67): classe de objeto-gráfico

Outras classes na biblioteca DoEasy (Parte 67): classe de objeto-gráfico

Neste artigo, vamos criar uma classe de um objeto-gráfico (um gráfico de um instrumento de negociação) e modificar a classe-coleção de objetos de sinal mql5 para que cada objeto-sinal armazenado na coleção também atualize todos os seus parâmetros quando a lista é atualizada.
Como desenvolver um sistema de negociação baseado no indicador MACD
Como desenvolver um sistema de negociação baseado no indicador MACD

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

Neste artigo, nós aprenderemos uma nova ferramenta de nossa série: aprenderemos como projetar um sistema de negociação com base em um dos indicadores técnicos mais populares, o Moving Average Convergence Divergence (MACD).
Teste de expert advisors no terminal do cliente MetaTrader 4: Um olhar para fora
Teste de expert advisors no terminal do cliente MetaTrader 4: Um olhar para fora

Teste de expert advisors no terminal do cliente MetaTrader 4: Um olhar para fora

O que acontece após você clicar no botão "iniciar"? O artigo traz a resposta desta e de várias outras perguntas.
Canais. Modelos avançados. Wolfe Waves
Canais. Modelos avançados. Wolfe Waves

Canais. Modelos avançados. Wolfe Waves

O artigo descreve as regras para marcar padrões de Wolfe Waves. Você encontrará mais detalhes sobre a construção e as regras de marcação precisa, o que ajuda a encontrar as formações corretas de ondas de forma rápida e correta.
Como não cair em armadilhas de otimização?
Como não cair em armadilhas de otimização?

Como não cair em armadilhas de otimização?

O artigo descreve os métodos para se entender melhor os resultados da otimização do provador. Ele também fornece algumas dicas que ajudam a evitar a "otimização prejudicial".
Biblioteca para desenvolvimento fácil e rápido de programas MetaTrader (parte VII): Eventos de ativação da ordem StopLimit, preparação da funcionalidade para os eventos de modificação de ordens e posições
Biblioteca para desenvolvimento fácil e rápido de programas MetaTrader (parte VII): Eventos de ativação da ordem StopLimit, preparação da funcionalidade para os eventos de modificação de ordens e posições

Biblioteca para desenvolvimento fácil e rápido de programas MetaTrader (parte VII): Eventos de ativação da ordem StopLimit, preparação da funcionalidade para os eventos de modificação de ordens e posições

Nos artigos anteriores, nós começamos a criar uma grande biblioteca multi-plataforma, simplificando o desenvolvimento de programas para as plataformas MetaTrader 5 e MetaTrader 4. Na sexta parte, nós treinamos a biblioteca para trabalhar com as posições nas contas netting. Aqui, nós implementaremos o monitoramento da ativação das ordens StopLimit e prepararemos uma funcionalidade para o monitoramento de eventos de modificação de ordens e posições.
preview
Ciência de Dados e Aprendizado de Máquina (Parte 01): Regressão Linear

Ciência de Dados e Aprendizado de Máquina (Parte 01): Regressão Linear

É hora de nós, como traders, treinarmos nossos sistemas e a nós mesmos para tomar decisões com base no que o número diz. Não aos nossos olhos, e o que nossas entranhas nos fazem acreditar, é para onde o mundo está indo, então vamos nos mover perpendicularmente à direção da onda.
Kit do trader: Indicadores de decoração
Kit do trader: Indicadores de decoração

Kit do trader: Indicadores de decoração

Neste artigo, você encontrará tarefas principais ao decorar indicadores, suas soluções e automatização.
Conexão do Expert Advisor com ICQ no MQL5
Conexão do Expert Advisor com ICQ no MQL5

Conexão do Expert Advisor com ICQ no MQL5

Este artigo descreve o método de troca de informação entre o Expert Advisor e os usuários do ICQ, são apresentados vários exemplos. O material fornecido será interessante para aqueles que queiram receber informações de negócio remotamente de um terminal de cliente através de um cliente ICQ em seus celulares ou PDA.
preview
Indicadores múltiplos em um gráfico (Parte 03): Desenvolvendo definições para usuários

Indicadores múltiplos em um gráfico (Parte 03): Desenvolvendo definições para usuários

Primeira atualização nas funcionalidades no sistema indicador. No artigo anterior Indicadores múltiplos em um gráfico eu expliquei o código base para poder usar mais de um indicador dentro de uma sub janela, mas aquilo que foi apresentado foi apenas a base inicial de um sistema muito maior.
preview
Como desenvolver um sistema de negociação baseado no indicador OBV

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

Este é um novo artigo para continuar a nossa série para iniciantes sobre como desenvolver um sistema de negociação com base em alguns dos indicadores populares. Nós aprenderemos um novo indicador que é o On Balance Volume (OBV), e nós aprenderemos como podemos usá-lo e projetar um sistema de negociação baseado nele.
Observações de Layman: ZigZag...
Observações de Layman: ZigZag...

Observações de Layman: ZigZag...

Certamente, um pensamento visionário de trade próximo do extremo visitou o aprendizado de cada trader quando ele viu a polilinha "enigmática" pela primeira vez. Na verdade, é muito simples. Aqui está o máximo. E aqui está o mínimo. Um belo quadro no histórico. E o que é na prática? Um raio é desenhado. Deveria parecer como sendo o pico! É hora de vender. E agora abaixamos. Mas, oh não! O preço traiçoeiramente está se movendo para cima. Ah! É uma brincadeira, não um indicador. E você joga fora!
Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5
Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5

Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5

Este artigo é uma leitura obrigatória destinada a todos que desejam melhorar sua carreira como programadores. O objetivo desta série de artigos é ajudar o leitor, incluindo experientes, a melhorar suas habilidades de programação. As ideias descritas são aplicáveis tanto a programadores iniciantes em MQL5 quanto a profissionais.
Avaliação da eficácia dos sistemas de negociação pela análise de seus componentes
Avaliação da eficácia dos sistemas de negociação pela análise de seus componentes

Avaliação da eficácia dos sistemas de negociação pela análise de seus componentes

Este artigo explora a eficácia dos sistemas de negociação complexos pela análise da eficiência de seus componentes individuais. Qualquer análise é um dos componentes-chave de sucesso em negociação nos mercados financeiros, seja gráfica, com base em indicadores, ou qualquer outro. Portanto, de certa maneira, este arquivo é uma pesquisa sobre alguns sistemas de negociação simples e independentes, no qual podemos analisar a sua eficácia em conjunto com a utilidade da aplicação.
Expert Advisors baseado em sistemas de trading populares e alquimia da otimização de robô de trading
Expert Advisors baseado em sistemas de trading populares e alquimia da otimização de robô de trading

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

Esse artigo trata do algoritmo de implementação dos sistemas de negociação mais simples. O artigo será útil para investidores iniciantes e desenvolvedores de EA.
Kit do Trader: Biblioteca Drag Trade
Kit do Trader: Biblioteca Drag Trade

Kit do Trader: Biblioteca Drag Trade

O artigo descreve a Biblioteca Drag Trade que fornece uma funcionalidade à negociação visual. A biblioteca pode ser facilmente integrado praticamente em qualquer Expert Advisor. Seu Expert Advisor pode ser transformado de semi-automático num sistema de negociação e de informação automatizado quase sem esforço, apenas adicionando algumas linhas de código.
preview
Aprendendo a construindo um Expert Advisor que opera de forma automática (Parte 12): Automação (IV)

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

Se você acha que sistemas automáticos são simples, significa que você ainda não entendeu de fato o que se deve criar. Vamos aqui ver um problema que mata muito Expert Advisor. O disparo indiscriminado de ordens e uma possível solução para este problema.
preview
Matrizes e vetores em MQL5

Matrizes e vetores em MQL5

Os tipos de dados especiais matrix e vector permitem escrever um código que se aproxima da notação matemática. Isto poupa o trabalho de criar laços aninhados e de lembrar de indexar corretamente as matrizes que estão envolvidas no cálculo. Isto aumenta a confiabilidade e a velocidade de desenvolvimento de programas complexos.
Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos
Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos

Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos

Conselhos de um programador profissional sobre métodos, técnicas e ferramentas auxiliares para tornar a programação mais fácil. Hoje falaremos sobre os parâmetros que podem ser restaurados após reiniciar (fechar) o terminal. Na verdade, todos os exemplos apresentados são partes funcionais do código do meu projeto Cayman.
Concurso de Expert Advisors dentro de um Expert Advisor
Concurso de Expert Advisors dentro de um Expert Advisor

Concurso de Expert Advisors dentro de um Expert Advisor

Usando negociação virtual, você pode criar um Expert Advisor adaptativo que vai ligar e desligar as negociações no mercado real. Combine várias estratégias num único Expert Advisor! O sistema múltiplo de Expert Advisor irá escolher automaticamente uma estratégia de negociação, aquela mais apropriada ao mercado real com base na rentabilidade dos negócios virtuais. Este tipo de abordagem permite diminuir o rebaixamento e aumentar a rentabilidade do seu investimento no mercado. Experimente e compartilhe seus resultados com os outros! Eu acho que muitas pessoas vão se interessar em saber sobre o seu portfólio de estratégias.
preview
Como e por que desenvolver seu próprio sistema de negociação algorítmica

Como e por que desenvolver seu próprio sistema de negociação algorítmica

Neste artigo, abordaremos os conceitos básicos da linguagem de programação MQL. O objetivo do artigo é ajudar os programadores iniciantes a desenvolver seu próprio sistema de negociação algorítmico (Expert Advisor).