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
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 08): Travando o Indicador

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 08): Travando o Indicador

Aqui vou mostrar como travar um indicador, usando pura e simplesmente a linguagem MQL5, de uma forma muito interessante e surpreendente.
preview
Experiências com redes neurais (Parte 3): Uso pratico

Experiências com redes neurais (Parte 3): Uso pratico

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
Algoritmos de otimização populacionais: Algoritmo do morcego

Algoritmos de otimização populacionais: Algoritmo do morcego

Hoje estudaremos o algoritmo do morcego (Bat algorithm, BA), que possui convergência incrível em funções suaves.
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
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 07): Primeiras melhorias (II)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 07): Primeiras melhorias (II)

No artigo anterior fizemos a correção de alguns pontos, e adicionamos alguns testes no nosso sistema de replay, estes tentam garantir a maior estabilidade quanto for possível obter, ao mesmo tempo iniciamos a criação e o uso de um arquivo de configuração para o sistema de replay.
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.
preview
Redes neurais de maneira fácil (Parte 34): Função quantil totalmente parametrizada

Redes neurais de maneira fácil (Parte 34): Função quantil totalmente parametrizada

Continuamos a estudar os algoritmos de aprendizado Q distribuído. Em artigos anteriores, já discutimos os algoritmos de aprendizado Q distribuído e de quantil. No primeiro, aprendemos as probabilidades de determinados intervalos de valores. No segundo, aprendemos intervalos com uma probabilidade específica. Em ambos os algoritmos, utilizamos o conhecimento prévio de uma distribuição e ensinamos a outra. Neste artigo, vamos examinar um algoritmo que permite que o modelo aprenda ambas as distribuições.
preview
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 06): Primeiras melhorias (I)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 06): Primeiras melhorias (I)

Neste artigo vamos começar a estabilizar todo o sistema. Pois sem que o sistema esteja de fato estabilizado, podemos correr risco de não conseguir cumprir os próximos passos.
preview
DoEasy. Controles (Parte 31): Rolando o conteúdo do controle "ScrollBar"

DoEasy. Controles (Parte 31): Rolando o conteúdo do controle "ScrollBar"

Neste artigo, criaremos a funcionalidade para rolar o conteúdo do contêiner usando os botões da barra de rolagem horizontal.
preview
DoEasy. Controles (Parte 30): Animando o controle "ScrollBar"

DoEasy. Controles (Parte 30): Animando o controle "ScrollBar"

Neste artigo continuaremos a desenvolver o controle ScrollBar e começaremos a fazer a funcionalidade de interação com o mouse. Além disso, vamos expandir as listas de bandeiras de status e eventos com o mouse.
preview
DoEasy. Controles (Parte 29): Controle auxiliar "ScrollBar"

DoEasy. Controles (Parte 29): Controle auxiliar "ScrollBar"

Neste artigo, iniciaremos o desenvolvimento do elemento de controle auxiliar ScrollBar e seus objetos derivados, incluindo as barras de rolagem vertical e horizontal. A ScrollBar (barra de rolagem) é utilizada para rolar o conteúdo da forma caso ele ultrapasse o contêiner. As barras de rolagem geralmente são posicionadas na parte inferior e à direita da forma. A barra de rolagem horizontal, localizada na parte inferior, permite rolar o conteúdo para a esquerda e direita, enquanto a barra de rolagem vertical possibilita rolar o conteúdo para cima e para baixo.
preview
Redes neurais de maneira fácil (Parte 35): Módulo de curiosidade intrínseca

Redes neurais de maneira fácil (Parte 35): Módulo de curiosidade intrínseca

Continuamos a explorar algoritmos de aprendizado por reforço. Todos os algoritmos que analisamos até agora exigiam a criação de uma política de recompensa de tal forma que o agente pudesse avaliar cada uma de suas ações em cada transição de um estado do sistema para outro. No entanto, essa abordagem é bastante artificial. Na prática, existe um intervalo de tempo entre a ação e a recompensa. Neste artigo, proponho que você se familiarize com um algoritmo de aprendizado de modelo capaz de lidar com diferentes atrasos temporais entre a ação e a recompensa.
preview
DoEasy. Controles (Parte 28): Estilos de barra no controle ProgressBar

DoEasy. Controles (Parte 28): Estilos de barra no controle ProgressBar

Neste artigo veremos estilos de exibição e texto descritivo para o controle ProgressBar.
preview
Algoritmos de otimização populacionais: Busca por cardume de peixes (FSS - Fish School Search)

Algoritmos de otimização populacionais: Busca por cardume de peixes (FSS - Fish School Search)

O FSS (Fish School Search) é um algoritmo avançado de otimização inspirado no comportamento dos peixes que nadam em cardumes. Aproximadamente 80% desses peixes nadam em comunidades organizadas de parentes, o que tem sido comprovado como uma estratégia importante para melhorar a eficiência de procura por alimento e proteção contra predadores.
preview
Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 05): Adicionando Previas

Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 05): Adicionando Previas

Conseguimos desenvolver, uma forma de fazer com que o replay de mercado, fosse executado dentro de um tempo bastante realista e aceitável. Vamos continuar nosso projeto. Agora iremos adicionar dados de forma a ter um comportamento melhor do replay.
preview
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 04): Ajustando as coisas (II)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 04): Ajustando as coisas (II)

Vamos continuar a criação do sistema e controle. Já que sem uma forma de controlar o serviço, fica muito complicado dar algum outro passo a fim de melhorar algo no sistema.
preview
Teoria das Categorias em MQL5 (Parte 2)

Teoria das Categorias em MQL5 (Parte 2)

A Teoria das Categorias é um ramo diverso da Matemática e em expansão, sendo uma área relativamente recente na comunidade MQL5. 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
Como desenvolver um sistema de negociação baseado no indicador Gator Oscillator

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

Um novo artigo em nossa série sobre como aprender a desenvolver um sistema de negociação baseado nos indicadores técnicos mais populares será sobre o indicador técnico Gator Oscillator e como criar um sistema de negociação por meio de estratégias simples.
preview
Ciência de dados e Aprendizado de Máquina (parte 10): Regressão de Ridge

Ciência de dados e Aprendizado de Máquina (parte 10): Regressão de Ridge

A regressão de Ridge é uma técnica simples para reduzir a complexidade do modelo e evitar o ajuste excessivo que pode resultar da regressão linear simples
preview
Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 03):  Ajustando as coisas (I)

Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 03): Ajustando as coisas (I)

Vamos dar uma ajeitada nas coisas, pois este começo não está sendo um dos melhores. Se não fizermos isto agora, vamos ter problemas logo, logo.
preview
Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 02): Primeiros experimentos (II)

Desenvolvendo um sistema de Replay - Simulação de mercado (Parte 02): Primeiros experimentos (II)

Vamos experimentar uma outra abordagem, desta vez tentando alcançar o objetivo de 1 minuto. Mas isto não é uma tarefa tão simples, como muitos pensam.
preview
Matrix Utils, estendendo as matrizes e a funcionalidade da biblioteca padrão de vetores

Matrix Utils, estendendo as matrizes e a funcionalidade da biblioteca padrão de vetores

As matrizes servem como base para os algoritmos de aprendizado de máquina e computação em geral devido à sua capacidade de lidar efetivamente com grandes operações matemáticas. A biblioteca padrão tem tudo o que é necessário, mas vamos ver como podemos estendê-la introduzindo várias funções no arquivo utils, ainda não disponível na biblioteca
preview
Indicadores não-lineares

Indicadores não-lineares

Neste artigo, vamos considerar algumas formas de construir indicadores não-lineares e seu uso na negociação. Existem alguns indicadores disponíveis na plataforma de negociação MetaTrader que utilizam abordagens não-lineares.
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
Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 01): Primeiros experimentos (I)

Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 01): Primeiros experimentos (I)

Que tal criar um sistema para estudar o mercado quando ele está fechado, ou mesmo simular situações de mercado. Aqui vamos iniciar uma nova sequencia de artigos, a fim de tratar deste tema.
preview
DoEasy. Controles (Parte 27): Continuamos a trabalhar no objeto WinForms "ProgressBar"

DoEasy. Controles (Parte 27): Continuamos a trabalhar no objeto WinForms "ProgressBar"

Neste artigo, continuaremos desenvolvendo o controle ProgressBar. Criaremos a funcionalidade para gerenciar a barra de progresso e os efeitos visuais.
preview
Guia Prático MQL5 — Serviços

Guia Prático MQL5 — Serviços

O artigo descreve os recursos versáteis dos serviços — programas em MQL5 que não necessitam de gráficos para serem anexados. Eu ambém destacarei as diferenças dos serviços de outros programas em MQL5 e enfatizarei as nuances do trabalho do desenvolvedor com os serviços. Como exemplos, são oferecidas ao leitor várias tarefas que abrangem uma ampla gama de funcionalidades que podem ser implementadas como um serviço.
preview
Redes neurais de maneira fácil (Parte 33): regressão quantílica em aprendizado Q distribuído,

Redes neurais de maneira fácil (Parte 33): regressão quantílica em aprendizado Q distribuído,

Continuamos a estudar o aprendizado Q distribuído e hoje veremos essa abordagem de outro ponto de vista. Falaremos sobre a possibilidade de usar regressão quantílica para resolver o problema de previsão de movimentos de preços.
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.
preview
MQL5 — Você também pode se tornar um mestre nesta linguagem

MQL5 — Você também pode se tornar um mestre nesta linguagem

Neste artigo, será algo como uma entrevista comigo, de como comecei no MQL5. Irei lhe mostrar, como você pode se tornar um grande programador de MQL5. Mostrarei as bases necessárias para você conseguir alcançar tal feito. O único requisito é ter vontade de aprender.
preview
Algoritmos de otimização populacionais: Algoritmo de otimização de cuco (COA)

Algoritmos de otimização populacionais: Algoritmo de otimização de cuco (COA)

O próximo algoritmo que abordaremos será a otimização de busca de cuco usando voos Levy. Este é um dos algoritmos de otimização mais recentes e um novo líder na tabela de classificação.
preview
Algoritmos de otimização populacionais: Otimizador lobo-cinzento (GWO)

Algoritmos de otimização populacionais: Otimizador lobo-cinzento (GWO)

Vamos falar sobre um dos algoritmos de otimização mais recentes e modernos: o "Packs of grey wolves" (manada de lobos-cinzentos). Devido ao seu comportamento distinto em funções de teste, este algoritmo se torna um dos mais interessantes em comparação com outros considerados anteriormente. Ele é um dos principais candidatos para treinamento de redes neurais e para otimizar funções suaves com muitas variáveis.
preview
Aprendendo a construindo um Expert Advisor que opera de forma automática (Parte 15): Automação (VII)

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

Para coroar esta sequencia de automação. Vamos complementar o que foi visto no artigo anterior. Este definitivamente mostra como tudo irá se encaixar, fazendo o Expert Advisor, funcionar como um relógio.
preview
Algoritmos de otimização populacionais: Colônia artificial de abelhas (Artificial Bee Colony, ABC)

Algoritmos de otimização populacionais: Colônia artificial de abelhas (Artificial Bee Colony, ABC)

Hoje estudaremos o algoritmo de colônia artificial de abelhas. Complementaremos nosso conhecimento com novos princípios para estudar espaços funcionais. E neste artigo falarei sobre minha interpretação da versão clássica do algoritmo.
preview
DoEasy. Controles (Parte 26): Apurando o objeto WinForms "ToolTip" e desenvolvendo o "ProgressBar".

DoEasy. Controles (Parte 26): Apurando o objeto WinForms "ToolTip" e desenvolvendo o "ProgressBar".

Neste artigo vamos completar o desenvolvimento do controle ToolTip e começar a desenvolver o objeto WinForms ProgressBar. Ao trabalharmos nesses objetos, desenvolveremos uma funcionalidade versátil para animar os controles e seus componentes.
preview
Redes neurais de maneira fácil (Parte 32): Aprendizado Q distribuído

Redes neurais de maneira fácil (Parte 32): Aprendizado Q distribuído

Em um dos artigos desta série, já nos iniciamos no método aprendizado Q, que calcula a média da recompensa para cada ação. Em 2017, foram apresentados 2 trabalhos simultâneos, que tiveram sucesso quanto ao estudo da função de distribuição de recompensas. Vamos considerar a possibilidade de usar essa tecnologia para resolver nossos problemas.
preview
Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 04): Análise discriminante linear

Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 04): Análise discriminante linear

O trader moderno está quase sempre à procura de novas ideias. Para isso, tenta novas estratégias, modifica e descarta aquelas que não funcionam. Nesta série de artigos, tentarei provar que o assistente MQL5 é a verdadeira espinha dorsal de um trader moderno.
preview
DoEasy. Controles (Parte 25): Objeto WinForms Tooltip

DoEasy. Controles (Parte 25): Objeto WinForms Tooltip

Neste artigo, começaremos a desenvolver o controle Tooltip (dica de ferramenta) e começaremos a criar novas primitivas gráficas para a biblioteca. Naturalmente, nem todo elemento tem uma dica de ferramenta, mas todo objeto gráfico pode ter uma.
preview
Aprendendo a construindo um Expert Advisor que opera de forma automática (Parte 14): Automação (VI)

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

Aqui vamos realmente colocar todo o conhecimento desta sequencia em prática. Vamos finalmente construir um sistema 100% automático e funcional. Mas para fazer isto, você terá que aprender uma última coisa.
preview
Ciência de dados e Aprendizado de Máquina (parte 09): O algoritmo K-vizinhos mais próximos (KNN)

Ciência de dados e Aprendizado de Máquina (parte 09): O algoritmo K-vizinhos mais próximos (KNN)

Este é um algoritmo preguiçoso que não aprende com o conjunto de dados de treinamento, ele armazena o conjunto de dados e age imediatamente quando ele recebe uma nova amostra. Por mais simples que ele seja, ele é usado em uma variedade de aplicações do mundo real