Estratégia evolutiva de adaptação da matriz de covariância, Covariance Matrix Adaptation Evolution Strategy (CMA-ES)
Estratégia evolutiva de adaptação da matriz de covariância, Covariance Matrix Adaptation Evolution Strategy (CMA-ES)
Vamos explorar um dos algoritmos mais interessantes de otimização sem gradiente, que aprende a compreender a geometria da função objetivo. Consideraremos a implementação clássica do CMA-ES com uma pequena modificação, substituindo a distribuição normal por uma distribuição de potência. Uma análise detalhada da matemática do algoritmo, a implementação prática e uma avaliação honesta, onde o CMA-ES é imbatível e onde é melhor não aplicá-lo.
Rede neural na prática: Grafico da Rectifier
Rede neural na prática: Grafico da Rectifier
Construímos, em MQL5 puro, um indicador para plotar no gráfico uma função de ativação e sua derivada, tomando a ReLU como exemplo. Explicamos o impacto das derivadas na escolha da ativação e os cuidados com pontos não diferenciáveis. O leitor visualiza as curvas de forma interativa e obtém uma base prática para decidir quando usar ou não determinadas ativações.
Do básico ao intermediário: Sub Janelas (III)
Do básico ao intermediário: Sub Janelas (III)
Este texto detalha o uso de sub janelas em indicadores MQL5: criação básica, detecção de instâncias e prevenção de duplicações. Aborda INDICATOR_SHORTNAME, consulta de janelas/indicadores do gráfico e a diferença entre exibição no gráfico principal e em janela separada. Mostra ainda como definir altura e limites da sub janela para padronizar a interface e facilitar a disposição de objetos.
Redes neurais em trading: Pipeline inteligente de previsões (Time-MoE)
Redes neurais em trading: Pipeline inteligente de previsões (Time-MoE)
Propomos conhecer o framework moderno Time-MoE, adaptado para tarefas de previsão de séries temporais. No artigo, implementaremos passo a passo os principais componentes da arquitetura, acompanhando-os com explicações e exemplos práticos. Essa abordagem permitirá não apenas compreender os princípios de funcionamento do modelo, mas também aplicá-los em tarefas reais de trading.
Dominando JSON: Crie Seu Próprio Leitor JSON do Zero em MQL5
Dominando JSON: Crie Seu Próprio Leitor JSON do Zero em MQL5
Experimente um guia passo a passo sobre como criar um parser JSON personalizado em MQL5, completo com manipulação de objetos e arrays, verificação de erros e serialização. Obtenha insights práticos para conectar sua lógica de trading e dados estruturados com esta solução flexível para lidar com JSON no MetaTrader 5.
Desenvolvimento do Kit de Ferramentas de Análise de Ação de Preço (Parte 12): Fluxo Externo (III) Mapa de Tendências
Desenvolvimento do Kit de Ferramentas de Análise de Ação de Preço (Parte 12): Fluxo Externo (III) Mapa de Tendências
O fluxo do mercado é determinado pelas forças entre compradores e vendedores. Existem níveis específicos que o mercado respeita devido às forças que atuam sobre eles. Os níveis de Fibonacci e VWAP são especialmente poderosos na influência do comportamento do mercado. Junte-se a mim neste artigo enquanto exploramos uma estratégia baseada em níveis de VWAP e Fibonacci para geração de sinais.
Rede neural na prática: Surgimento de C_Neuron
Rede neural na prática: Surgimento de C_Neuron
O artigo mostra como encapsular um neurônio em MQL5 usando a classe C_Neuron, com pesos, viés e quantidade de entradas definida por parâmetro. Detalhamos o cálculo do custo por mínimo quadrado e a organização dos dados de treino em arrays. Como resultado, torna-se simples alterar entradas e repetir experimentos sem modificar a implementação.
Do básico ao intermediário: Sub Janelas (II)
Do básico ao intermediário: Sub Janelas (II)
O artigo aprofunda o uso de sub janelas no MetaTrader 5, mostrando como a direção do cálculo em OnCalculate afeta buffers e a plotagem de médias. Explica na prática o encadeamento de indicadores com FIRST INDICATOR’S DATA e PREVIOUS INDICATOR’S DATA, o impacto na remoção em cadeia e o comportamento de indicatorseparatewindow. O leitor aprende a diagnosticar falhas de exibição e a estruturar indicadores que funcionam corretamente em sub janelas.
Testes de Robustez em Expert Advisors
Testes de Robustez em Expert Advisors
No desenvolvimento de estratégias, há muitos detalhes complexos a serem considerados, muitos dos quais não são destacados para traders iniciantes. Como resultado, muitos traders, eu incluído, tiveram de aprender essas lições da maneira mais difícil. Este artigo é baseado em minhas observações sobre armadilhas comuns que a maioria dos traders iniciantes encontra ao desenvolver estratégias em MQL5. Ele oferecerá uma variedade de dicas, truques e exemplos para ajudar a identificar a desqualificação de um EA e testar a robustez dos nossos próprios EAs de uma forma fácil de implementar. O objetivo é educar os leitores, ajudando-os a evitar futuros golpes ao comprar EAs, bem como a prevenir erros no desenvolvimento de suas próprias estratégias.
Rede neural na prática: Quando usar um neurônio artificial e entender sua função em MQL5
Rede neural na prática: Quando usar um neurônio artificial e entender sua função em MQL5
Implementamos em MQL5 um neurônio com Gradiente Descendente Estocástico e comparamos sua função de custo à regressão linear. Mostramos, com código e gráficos, como normalização, escolha de taxa e estrutura do problema afetam a convergência. O artigo oferece um roteiro para depurar treinamento, ler os sinais do erro e selecionar a arquitetura ou função de ativação adequada.
Do básico ao intermediário: Sub Janelas (I)
Do básico ao intermediário: Sub Janelas (I)
Aqui iremos começar a ver como trabalhar com sub janelas no MetaTrader 5. Usando para isto o MQL5. Porém, como este é um assunto bem longo e com diversas coisas mais ou menos complicadas, devido a algumas questões práticas. Sendo assim faremos apenas uma breve a rápida introdução ao assunto. No entanto, apesar disto, é necessário que você entenda o que será mostrado neste artigo, meu caro leitor. Pois isto poderá fazer uma enorme diferença no seu futuro.
Determinação de taxas de câmbio justas com base na PPC usando dados do FMI
Determinação de taxas de câmbio justas com base na PPC usando dados do FMI
Criação, em Python, de um sistema de análise de taxas de câmbio baseado na paridade do poder de compra (PPC). O autor desenvolveu um algoritmo com 5 métodos de cálculo de taxas justas, utilizando dados do FMI. Trata-se de um guia prático de análise fundamentalista de moedas, processamento de dados econômicos e integração com sistemas de trading. Código completo de fonte aberta.
Otimização baseada em biogeografia — Biogeography-Based Optimization (BBO)
Otimização baseada em biogeografia — Biogeography-Based Optimization (BBO)
A otimização baseada em biogeografia (BBO) é um método elegante de otimização global inspirado nos processos naturais de migração de espécies entre ilhas de arquipélagos. A ideia por trás do algoritmo é simples, porém poderosa: soluções de alta qualidade compartilham ativamente suas características, enquanto soluções de baixa qualidade adotam novas características, criando um fluxo natural de informação das melhores soluções para as piores. Um operador adaptativo de mutação exclusivo garante um excelente equilíbrio entre diversificação e intensificação, e o BBO demonstra alta eficiência em diversas tarefas.
Estudando a previsão conformal de séries temporais financeiras
Estudando a previsão conformal de séries temporais financeiras
Neste artigo, você conhecerá as previsões conformais e a biblioteca MAPIE, que as implementa. Essa abordagem é uma das mais modernas em aprendizado de máquina e permite focar no controle de riscos para os já existentes e variados modelos de aprendizado de máquina. As previsões conformais, por si só, não são uma forma de encontrar padrões nos dados. Elas apenas determinam o grau de confiança dos modelos existentes ao preverem exemplos específicos e permitem filtrar previsões confiáveis.
Rede neural na prática: Gradiente Descendente Estocástico
Rede neural na prática: Gradiente Descendente Estocástico
O artigo explica, na prática, como calcular e aplicar os gradientes de peso e viés no neurônio linear em MQL5, além de apresentar a variante estocástica do gradiente descendente. Discutimos critérios de parada, limitação de iterações e efeitos da amostragem parcial. No terminal do MetaTrader 5, são exibidos resultados e uma plotagem simples. O leitor é orientado a alterar o conjunto de treino e analisar o comportamento.
Do básico ao intermediário: Indicadores técnico (II)
Do básico ao intermediário: Indicadores técnico (II)
Neste artigo mostramos como criar um indicador em MQL5 que desenha múltiplas médias móveis no mesmo gráfico, reduzindo código duplicado. São usados iMA, buffers de indicador, CopyBuffer, PlotIndexSetInteger/String e uma estrutura constante que concentra períodos, métodos e cores. O dimensionamento de indicatorbuffers e indicatorplots é derivado de Averange.Size(). O resultado facilita manutenção e permite adicionar ou remover médias alterando apenas uma lista.
Mineração de dados dos balanços dos bancos centrais e obtenção de um panorama da liquidez global
Mineração de dados dos balanços dos bancos centrais e obtenção de um panorama da liquidez global
A mineração de dados dos balanços dos bancos centrais permite obter um panorama da liquidez global do mercado Forex e das principais moedas. Nós unificamos dados do Fed, do BCE, do BOJ e do PBoC em um índice composto e aplicamos aprendizado de máquina para identificar padrões ocultos. Essa abordagem transforma um fluxo bruto de dados em sinais reais de trading, conectando a análise fundamentalista e a análise técnica.
Desenvolvendo um EA multimoeda (Parte 27): Componente para exibição de texto multilinha
Desenvolvendo um EA multimoeda (Parte 27): Componente para exibição de texto multilinha
Quando surge a necessidade de exibir informações textuais no gráfico, podemos utilizar a função Comment(). Porém, suas possibilidades são bastante limitadas. Por isso, no âmbito deste artigo, criaremos nosso próprio componente, uma janela de diálogo em tela cheia, capaz de exibir texto multilinha com configurações flexíveis de fonte e suporte a rolagem.
Indicador do modelo CAPM no mercado Forex
Indicador do modelo CAPM no mercado Forex
Adaptação do modelo clássico CAPM para o mercado cambial Forex em MQL5. O indicador calcula a rentabilidade esperada e o prêmio de risco com base na volatilidade histórica. Os indicadores aumentam nos picos e nas depressões, refletindo os princípios fundamentais de precificação. Aplicação prática para estratégias contra a tendência e de seguimento de tendência, levando em conta a dinâmica da relação entre risco e rentabilidade em tempo real. Inclui o aparato matemático e a implementação técnica.
Componentes View e Controller para tabelas no paradigma MVC em MQL5: Elementos de controle simples
Componentes View e Controller para tabelas no paradigma MVC em MQL5: Elementos de controle simples
No artigo são analisados elementos de controle simples como partes constituintes de elementos gráficos mais complexos do componente View no contexto da implementação de tabelas no paradigma MVC (Model-View-Controller). Foi implementado o funcional básico do componente Controller para a interação interativa dos elementos com o usuário e entre si. Este é o segundo artigo dedicado ao componente View e o quarto da série de artigos sobre a criação de tabelas para o terminal cliente MetaTrader 5.
Indicador de previsão ARIMA em MQL5
Indicador de previsão ARIMA em MQL5
Neste artigo, criamos um indicador de previsão ARIMA em MQL5. É analisado como o modelo ARIMA forma previsões, sua aplicabilidade ao mercado Forex e ao mercado de ações em geral. Também é explicado o que é a autorregressão AR, de que forma os modelos autorregressivos são usados para previsão e como funciona o mecanismo de autorregressão.
Rede neural na prática: Gradiente Descendente
Rede neural na prática: Gradiente Descendente
Neste artigo, tentarei apresentar, de forma o mais simplificada e didática, quanto foi possível fazer, uma das questões mais controvérsias quando o assunto é rede neural. Que é justamente como procurar o melhor ponto possível, ou menor custo de uma função. Mostrarei a diferença que existe entre uma regressão linear e um gradiente descendente. Ambos casos bastante simples e voltados para mostrar que nem sempre o que parece obvio, realmente é o melhor caminho.
Do básico ao intermediário: Indicadores técnicos (I)
Do básico ao intermediário: Indicadores técnicos (I)
Neste artigo veremos o básico sobre como utilizar indicadores técnicos que estão presentes e são mantidos pelo próprio MetaTrader 5. Saber, entender e conhecer este tipo de indicador pode vir a tornar seu trabalho de implementar algo, em uma tarefa muito mais simples, rápida e eficiente. Visto que você não precisa se preocupar com a parte referente aos cálculos a serem efetuados. A própria plataforma se encarrega de fazer isto para nós.
Dominando Registros de Log (Parte 5): Otimizando o Handler com Cache e Rotação
Dominando Registros de Log (Parte 5): Otimizando o Handler com Cache e Rotação
Este artigo aprimora a biblioteca de logging adicionando formatadores nos handlers, a classe CIntervalWatcher para gerenciar ciclos de execução, otimização com cache e rotação de arquivos, testes de desempenho e exemplos práticos. Com essas melhorias, garantimos um sistema de logging eficiente, escalável e adaptável a diferentes cenários de desenvolvimento.
Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (I)
Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (I)
Esta discussão aprofunda-se nos desafios encontrados ao trabalhar com grandes bases de código. Vamos explorar as melhores práticas para organização de código em MQL5 e implementar uma abordagem prática para aprimorar a legibilidade e a escalabilidade do código-fonte do nosso Painel de Administração de Trading. Além disso, buscamos desenvolver componentes de código reutilizáveis que possam potencialmente beneficiar outros desenvolvedores no desenvolvimento de seus algoritmos. Continue lendo e participe da discussão.