Simulação de mercado: Position View (XI)
Neste artigo, mostrarei como você, meu caro e estimado leitor, pode sem muito esforço. Conseguir modificar o indicador de posição a fim de que ele venha a ser capaz de fazer bem mais coisas, do que originalmente era capaz de fazer. Veremos como incluir a capacidade de podermos mover tanto os preços, quanto também criar as linhas de preço. E isto diretamente no gráfico. Algo que muitos imaginariam ser extremamente complicado e de difícil solução. Porém você notará que faremos tudo isto, com muita facilidade e com um mínimo de esforço. Tudo que será preciso fazer é parar e pensar um pouco.
Aplicando Seleção de Recursos Localizada em Python e MQL5
Este artigo explora um algoritmo de seleção de recursos introduzido no artigo 'Local Feature Selection for Data Classification' de Narges Armanfard et al. O algoritmo é implementado em Python para construir modelos de classificação binária que podem ser integrados com aplicativos MetaTrader 5 para inferência.
Criando um Painel Administrador de Trading em MQL5 (Parte IX): Organização de Código (II): Modularização
Nesta discussão, damos um passo adiante ao dividir nosso programa MQL5 em módulos menores e mais gerenciáveis. Esses componentes modulares serão então integrados ao programa principal, melhorando sua organização e capacidade de manutenção. Essa abordagem simplifica a estrutura do programa principal e torna os componentes individuais reutilizáveis em outros Expert Advisors (EAs) e no desenvolvimento de indicadores. Ao adotar esse design modular, criamos uma base sólida para melhorias futuras, beneficiando tanto nosso projeto quanto a comunidade mais ampla de desenvolvedores.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 32): Regularização
A regularização é uma forma de penalizar a função de perda em proporção ao peso discreto aplicado ao longo das várias camadas de uma rede neural. Vamos observar a importância de algumas formas de regularização e o impacto que isso pode ter em testes realizados com um Expert Advisor montado por um assistente.
Funcionalidades do Assistente MQL5 que você precisa conhecer (Parte 31): Escolha da função de perda
A função de perda (Loss Function) é uma métrica fundamental nos algoritmos de aprendizado de máquina, que fornece feedback para o processo de aprendizado ao quantificar o quão bem um determinado conjunto de parâmetros se comporta em comparação com o valor-alvo esperado. Vamos explorar os diferentes formatos dessa função na classe personalizada do Assistente MQL5.
Estratégias de trading de rompimento: análise dos principais métodos
As estratégias de rompimento da faixa de abertura (Opening Range Breakout, ORB) partem da ideia de que a faixa inicial de negociação, formada logo após a abertura do mercado, reflete níveis de preço relevantes, quando compradores e vendedores chegam a um acordo sobre o valor. Ao identificar rompimentos de uma determinada faixa para cima ou para baixo, os traders podem aproveitar o momentum que costuma surgir quando a direção do mercado fica mais clara. Neste artigo, vamos analisar três estratégias ORB adaptadas a partir de materiais da Concretum Group.
Desenvolvimento do Toolkit de Análise de Price Action (Parte 13): Ferramenta RSI Sentinel
A análise de price action pode ser realizada de forma eficaz por meio da identificação de divergências, utilizando indicadores técnicos como o RSI para fornecer sinais cruciais de confirmação. Neste conteúdo, é explicado como a análise automatizada de divergência do RSI pode identificar continuações de tendência e reversões, oferecendo percepções valiosas sobre o sentimento do mercado.
Codificação ordinal de variáveis nominais
Neste artigo, discutiremos e demonstraremos como transformar variáveis nominais em formatos numéricos adequados para algoritmos de aprendizado de máquina, utilizando tanto Python quanto MQL5.
Simulação de mercado: A união faz a força (II)
Até o momento, a aplicação que estava sendo desenvolvida nesta sequência de artigos. Visava apenas e tão somente simular a parte gráfica. Mas para um sistema mais completo, onde temos a possibilidade de experimentar um Expert Advisor dentro do serviço de replay/simulador. Precisamos também fazer a simulação do servidor de negociação. Você notará, que a simulação usará o mínimo do mínimo possível. Mas se você, meu caro leitor, desejar, poderá completar as partes que faltam. Mas como isto não fará diferença para o que estou disposto a mostrar. Já temos mais do que o suficiente para desenvolver o que foi planejado.
Introdução à diversificação (en. diversification) de estruturas fractais de mercado com o auxílio de machine learning
No presente artigo é feita uma tentativa de examinar séries temporais financeiras sob a perspectiva de estruturas fractais autossimilares. Como temos muitas analogias que confirmam a possibilidade de considerar as cotações de mercado como fractais autossimilares, podemos formar uma compreensão sobre os horizontes de previsão dessas estruturas.
Simplificando a negociação com base em notícias (Parte 6): Executando trades (III)
Neste artigo será implementada a ordenação de notícias para eventos econômicos individuais com base em seus identificadores. Além disso, as consultas SQL anteriores serão aprimoradas para fornecer informações adicionais ou reduzir o tempo de execução da consulta. O código criado nos artigos anteriores se tornará funcional.
Implementação do modelo de tabela em MQL5: Aplicação do conto MVC
Neste artigo, analisaremos o desenvolvimento do modelo de tabela na linguagem MQL5, usando o conceito arquitetônico MVC (Model-View-Controller), que separa a lógica dos dados, a apresentação e o controle, o que ajuda a criar um código estruturado, flexível e escalável. Examinaremos a implementação das classes para construir o modelo de tabela, incluindo o uso de listas ligadas para armazenar dados.
Algoritmo de Busca com Retrocesso — Backtracking Search Algorithm (BSA)
E se um algoritmo de otimização pudesse lembrar suas viagens passadas e usar essa memória para buscar soluções melhores? O BSA faz exatamente isso, equilibrando a exploração do novo e o retorno ao que já foi testado. No artigo, revelamos os segredos do algoritmo. Ideia simples, mínimo de parâmetros e resultado estável.
Busca oscilatória determinística — Deterministic Oscillatory Search (DOS)
O algoritmo Deterministic Oscillatory Search (DOS) é um método inovador de otimização global que combina as vantagens dos algoritmos de gradiente e dos algoritmos de enxame sem o uso de números aleatórios. O mecanismo de oscilações e de inclinações de fitness permite ao DOS explorar espaços de busca complexos por meio de um método determinístico.
Integrando MQL5 com pacotes de processamento de dados (Parte 4): Manipulação de Big Data
Explorando técnicas avançadas para integrar o MQL5 com ferramentas poderosas de processamento de dados, esta parte se concentra no tratamento eficiente de big data para aprimorar a análise de negociação e a tomada de decisões.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 35): Regressão por Vetores de Suporte
A Regressão por Vetores de Suporte é uma maneira idealista de encontrar uma função ou 'hiperplano' que melhor descreva a relação entre dois conjuntos de dados. Tentamos explorar isso na previsão de séries temporais dentro das classes personalizadas do MQL5 wizard.
Desenvolvendo um EA multimoeda (Parte 28): Adicionando um gerenciador de fechamento de posições
Ao executar muitas estratégias em paralelo, pode surgir a necessidade de, de tempos em tempos, fechar todas as posições abertas e reiniciar as estratégias. O código já escrito permite implementar esse comportamento apenas em conjunto com manipulações manuais. Vamos tentar automatizar essa parte.
Critério de Independência de Hilbert-Schmidt (HSIC)
O artigo examina o teste estatístico não paramétrico HSIC (Hilbert-Schmidt Independence Criterion) destinado a identificar dependências lineares e não lineares nos dados. São propostas implementações de dois algoritmos para o cálculo do HSIC na linguagem MQL5: o teste exato por permutação e a aproximação gama. A eficácia do método é demonstrada em dados sintéticos que modelam uma relação não linear entre os atributos e a variável-alvo.
Rede neural quântica em MQL5 (Parte I): Criando um arquivo de inclusão
O artigo apresenta uma nova abordagem para criar sistemas de trading com base em princípios quânticos e inteligência artificial. O autor descreve o desenvolvimento de uma rede neural única, que vai além do aprendizado de máquina clássico, unindo a mecânica quântica às arquiteturas modernas de IA.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 34): Embedding de Preços com um RBM Não Convencional
Máquinas de Boltzmann Restritas são uma forma de rede neural que foi desenvolvida no meio da década de 1980, numa época em que os recursos computacionais eram extremamente caros. No início, ela dependia de Gibbs Sampling e Divergência Contrastiva para reduzir a dimensionalidade ou capturar as probabilidades/propriedades ocultas sobre os conjuntos de dados de treinamento de entrada. Examinamos como o Backpropagation pode realizar de forma similar quando o RBM 'embebe' os preços para um Multi-Layer-Perceptron de previsão.
Ciência de Dados e ML (Parte 33): Dataframe do Pandas em MQL5, Coleta de Dados para Uso em ML facilitada
Ao trabalhar com modelos de aprendizado de máquina, é essencial garantir consistência nos dados usados para treinamento, validação e testes. Neste artigo, criaremos nossa própria versão da biblioteca Pandas em MQL5 para garantir uma abordagem unificada para o tratamento de dados de aprendizado de máquina, assegurando que os mesmos dados sejam aplicados dentro e fora do MQL5, onde ocorre a maior parte do treinamento.
Algoritmo do mercado acionário: Exchange Market Algorithm (EMA)
O artigo é dedicado a uma análise detalhada do algoritmo Exchange Market Algorithm (EMA), inspirado no comportamento de traders no mercado acionário. O algoritmo modela o processo de negociação de ações, em que participantes do mercado com diferentes níveis de sucesso aplicam estratégias variadas para maximizar o lucro.
Aplicação de métodos de ensemble para tarefas de classificação em MQL5
Neste artigo, apresentamos a implementação de vários classificadores em ensemble na linguagem MQL5 e analisamos sua eficiência em diferentes situações.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 55): SAC com Prioritized Experience Replay
Buffers de replay em Aprendizado por Reforço são particularmente importantes com algoritmos off-policy como DQN ou SAC. Isso coloca em destaque o processo de amostragem desse buffer de memória. Enquanto as opções padrão com SAC, por exemplo, utilizam seleção aleatória desse buffer, o Prioritized Experience Replay ajusta esse processo ao realizar amostragem com base em um score TD. Revisamos a importância do Aprendizado por Reforço e, como sempre, examinamos apenas essa hipótese (não a validação cruzada) em um Expert Advisor montado com o wizard.
Otimização por Comunidade de Cientistas - Community of Scientist Optimization (CoSO): Teoria
Os segredos da otimização eficiente de estratégias de trading em abordagens metaheurísticas. Community of Scientist Optimization é um novo algoritmo populacional inspirado nos mecanismos de funcionamento da comunidade de cientistas. Diferentemente das metáforas naturais tradicionais, o CoSO modela aspectos únicos da atividade científica humana: a publicação de resultados em periódicos, a competição por financiamentos de pesquisa e a formação de grupos de pesquisa.
Processos gaussianos em machine learning (Parte 1): modelo de classificação em MQL5
Neste artigo, analisaremos o modelo de classificação com processos gaussianos. Iniciaremos com o estudo de seus princípios teóricos e, posteriormente, desenvolveremos uma biblioteca de PG em MQL5.
Ciência de dados e aprendizado de máquina (Parte 44): Previsão de séries OHLC no Forex pelo método de autorregressão vetorial (VAR)
Neste material, veremos como os modelos de autorregressão vetorial (VAR) podem prever séries temporais de valores OHLC (preço de abertura, máxima, mínima e preço de fechamento) no Forex. Falaremos sobre como implementar modelos VAR, treiná-los e gerar previsões em tempo real no MetaTrader 5, analisando movimentos interdependentes das taxas de câmbio para obter melhores resultados no trading.
Introdução às curvas ROC (Receiver Operating Characteristic)
As curvas ROC são representações gráficas utilizadas para avaliar o desempenho de classificadores. Apesar de os gráficos ROC serem relativamente simples, existem equívocos e armadilhas comuns ao utilizá-los na prática. Este artigo tem como objetivo fornecer uma introdução aos gráficos ROC como uma ferramenta para profissionais que buscam compreender a avaliação de desempenho de classificadores.
Criando um Painel de Administração de Trading em MQL5 (Parte IX): Organização de Código (III): Módulo de Comunicação
Junte-se a nós para uma discussão aprofundada sobre os mais recentes avanços no design de interfaces em MQL5 enquanto apresentamos o Painel de Comunicações redesenhado e continuamos nossa série sobre a construção do Novo Painel de Administração utilizando princípios de modularização. Desenvolveremos a classe CommunicationsDialog passo a passo, explicando detalhadamente como herdá-la da classe Dialog. Além disso, utilizaremos arrays e a classe ListView em nosso desenvolvimento. Obtenha insights práticos para elevar suas habilidades em desenvolvimento MQL5 — leia o artigo e participe da discussão na seção de comentários!
Ciência de Dados e ML (Parte 34): Decomposição de séries temporais, desmembrando o mercado de ações até o núcleo
Em um mundo repleto de dados ruidosos e imprevisíveis, identificar padrões significativos pode ser desafiador. Neste artigo, exploraremos a decomposição sazonal, uma poderosa técnica analítica que ajuda a separar os dados em seus principais componentes: tendência, padrões sazonais e ruído. Ao decompor os dados dessa forma, podemos revelar insights ocultos e trabalhar com informações mais limpas e interpretáveis.
Uma Nova Abordagem para Critérios Personalizados em Otimizações (Parte 1): Exemplos de Funções de Ativação
O primeiro de uma série de artigos que analisam a matemática dos Critérios Personalizados com foco específico em funções não lineares usadas em Redes Neurais, código MQL5 para implementação e o uso de offsets direcionados e corretivos.
Do iniciante ao especialista: Sistema de análise autogeométrica
Os padrões geométricos oferecem aos traders uma forma concisa de interpretar o movimento dos preços. Muitos analistas desenham linhas de tendência, retângulos e outras figuras manualmente e, em seguida, baseiam suas decisões de negociação nas formações que enxergam. Neste artigo, examinaremos uma alternativa automatizada: o uso de MQL5 para detectar e analisar os padrões geométricos mais populares. Vamos detalhar a metodologia, discutir os detalhes da implementação e mostrar como o reconhecimento automático de padrões pode aprimorar a compreensão do mercado pelo trader.
Criação de classes Python para trading no MetaTrader 5, análogas às apresentadas em MQL5
O pacote Python MetaTrader 5 oferece uma maneira simples de criar aplicativos de trading para a plataforma MetaTrader 5 na linguagem Python. Embora seja um módulo poderoso e útil, ele não é tão simples quanto a linguagem de programação MQL5 quando se trata de desenvolver soluções para trading algorítmico. Neste artigo, criaremos classes para trading análogas às oferecidas pela linguagem MQL5, a fim de criar uma sintaxe semelhante e tornar o desenvolvimento de robôs de trading em Python tão simples quanto em MQL5.
Análise espectral singular em MQL5
Este artigo serve como guia para quem ainda não conhece o conceito de análise espectral singular e deseja adquirir conhecimento suficiente para aplicar as ferramentas integradas disponíveis em MQL5.
Técnicas de reamostragem para avaliação de previsão e classificação em MQL5
Neste artigo, exploraremos e implementaremos métodos para avaliar a qualidade de modelos que utilizam um único conjunto de dados tanto para treinamento quanto para validação.
Do iniciante ao especialista: Reporting EA - Configuração do fluxo de trabalho
As corretoras frequentemente fornecem relatórios de contas de negociação em intervalos regulares, com base em uma programação predefinida. Essas empresas, por meio de suas APIs, têm acesso à atividade da sua conta e ao histórico de negociação, o que permite que elas criem relatórios de desempenho para você. De modo semelhante, o terminal MetaTrader 5 armazena registros detalhados da sua atividade de negociação, que podem ser aproveitados com MQL5 para criar relatórios totalmente personalizáveis e configurar formas de envio personalizadas.
Transferência de dados de ticks do MetaTrader para Python via sockets usando serviços MQL5
Às vezes, nem tudo pode ser implementado em MQL5. Mesmo que seja possível converter bibliotecas modernas já disponíveis para MQL5, isso levará muito tempo. Neste artigo, tentaremos contornar a dependência do Windows com o uso de serviços MQL5, transmitindo dados de ticks (bid, ask e time) para uma aplicação Python por meio de sockets.