O modelo de movimento dos preços e suas principais disposições (Parte 1): A versão do modelo mais simples e suas aplicações
O artigo fornece os fundamentos de um movimento de preços matematicamente rigoroso e a teoria do funcionamento do mercado. Até o presente, nós não tivemos nenhuma teoria de movimento de preços matematicamente rigorosa. Em vez disso, nós tivemos que lidar com as suposições baseadas na experiência, afirmando que o preço se move de uma certa maneira após um determinado padrão. É claro que essas suposições não foram apoiadas nem pela estatística e nem pela teoria.
Trailing-stop no trading
Neste artigo, vamos analisar o uso do trailing-stop no trading, sua utilidade e praticidade, e como pode ser utilizado. A praticidade do trailing-stop depende muito da volatilidade do preço e da escolha do nível de stop-loss. Para a configuração do stop-loss, podem ser utilizados vários métodos.
Implementando o fator Janus em MQL5
Gary Anderson desenvolveu um método de análise de mercado baseado em uma teoria que chamou de fator Janus. Essa teoria descreve um conjunto de indicadores que podem ser usados para identificar tendências e avaliar o risco de mercado. Neste artigo, vamos implementar essas ferramentas no MQL5.
Conselhos de um programador profissional (Parte III): Registro de Logs. Conectando-se ao sistema Seq de coleta e análise de logs
Implementação da classe Logger para unificar e estruturar as mensagens que são impressas no log da guia Experts na caixa de ferramentas. Conexão com o sistema Seq de coleta e análise de logs. Monitoramento de mensagens de log online.
Testando o conteúdo informativo de diferentes tipos de médias móveis
Todos conhecemos a importância da média móvel para muitos traders. Existem diferentes tipos de médias móveis que podem ser úteis no trading. Vamos examiná-las e realizar uma simples comparação para ver qual delas pode apresentar os melhores resultados.
Trabalhando com preços na biblioteca DoEasy (Parte 60): lista-série de dados de dados de tick do símbolo
Neste artigo, criaremos uma lista para armazenar dados de tick de um símbolo e verificaremos tal criação e respectiva recepção de dados a partir dela no EA. Essas listas de dados de tick - separadamente para cada símbolo usado - formarão uma coleção de dados de tick.
O padrão de design MVC e suas possibilidades de uso (Parte 2): Esquema de interação entre três componentes
Este artigo dá continuação e complemento ao tópico que vimos no artigo anterior, isto é, ao padrão MVC em programas escritos em MQL. Neste artigo, estudaremos um possível esquema de interação entre esses três componentes.
Como criar um Canal Donchian personalizado usando o MQL5
Há muitas ferramentas técnicas que podem ser usadas para visualizar o canal do preço. Uma dessas ferramentas é o Canal Donchian. Neste artigo, aprenderemos a criar um Canal Donchian e a usá-lo como um indicador personalizado como parte de um Expert Advisor.
Negociações com o uso do Linux
O artigo descreve como usar indicadores para monitorar a situação dos mercados financeiros online.
Como desenvolver um sistema de negociação baseado no indicador Alligator
Neste artigo, completaremos nossa série sobre como projetar um sistema de negociação baseado no indicador técnico mais popular. Nós aprenderemos como criar um sistema de negociação baseado no indicador Alligator.
Como se tornar um bom programador (Parte 6): 9 hábitos para desenvolver de maneira produtiva
O resultado final do projeto não tem a ver apenas com a escrita de código. A minha experiência me ensinou a identificar certos hábitos que ajudam a melhorar a produtividade na hora de desenvolver. Mais tarde, falaremos sobre alguns deles neste artigo. Este artigo é uma leitura obrigatória destinada a todos que desejam melhorar suas habilidades na escrita de algoritmos complexos.
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.
Aprendendo PrintFormat() e obtendo exemplos prontos para uso
Este artigo será útil tanto para iniciantes quanto para desenvolvedores experientes. Nele, analisaremos a função PrintFormat(), veremos exemplos de formatação de strings e escreveremos modelos para a exibição de diferentes informações no log do terminal.
Redes neurais de maneira fácil (Parte 17): Redução de dimensionalidade
Continuamos a estudar modelos de inteligência artificial, em particular, algoritmos de aprendizado não supervisionados. Já nos encontramos com um dos algoritmos de agrupamento. E neste artigo quero compartilhar com vocês outra maneira de resolver os problemas de redução de dimensionalidade.
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
Visão de Análise técnica no contexto de sistemas de controle automático (ACS) ou "Visão reversa"
O artigo demonstra uma visão alternativa de análise técnica, que é baseada nos princípios da teoria de controle automático moderna e da própria teoria de análise técnica. O artigo é introdutório, representando a teoria com algumas aplicações práticas da mesma.
Redes neurais de maneira fácil (Parte 26): aprendizado por reforço
Continuamos a estudar métodos de aprendizado de máquina. Com este artigo, começamos outro grande tópico chamado aprendizado por reforço. Essa abordagem permite que os modelos estabeleçam certas estratégias para resolver as tarefas. E esperamos que essa propriedade inerente ao aprendizado de reforço abra novos horizontes para a construção de estratégias de negociação.
Algoritmos de otimização populacionais: Otimização de colônia de formigas (ACO)
Desta vez, vamos dar uma olhada no algoritmo de otimização de colônia de formigas ("Ant Colony optimization algorithm", em inglês). O algoritmo é muito interessante e ambíguo. Trata-se de uma tentativa de criar um novo tipo de ACO.
Experimentos com redes neurais (Parte 5): Normalização de parâmetros de entrada para alimentar a rede neural
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.
Um assistente de investidores com base em análise MACD estendida
O script 'Trader's Assistant' (assistente de investidores) ajuda você a tomar uma decisão sobre posições de abertura, com base na análise estendida do estado MACD para as últimas três barras na negociação em tempo real, em qualquer período de tempo. Ele também pode ser usado para testes de fundo.
Como criar um indicador personalizado True Strength Index usando MQL5
Apresento um novo artigo sobre como criar um indicador personalizado. Desta vez, trabalharemos com o True Strength Index (TSI) e criaremos um Expert Advisor com base nele.
Como escrever ZigZags rápidos que não são redesenhados
É proposta uma abordagem um tanto universal para escrever indicadores do tipo ZigZag. O método inclui uma parte significativa de ZigZags já descritos e permite que você crie novos de forma relativamente fácil.
Gráficos na biblioteca do DoEasy (Parte 92): classe de memória de objetos gráficos padrão. Histórico de mudanças de propriedades do objeto
Neste artigo, criaremos uma classe de memória de objeto gráfico padrão. Com ela conseguiremos salvar os estados do objeto quando modificado, o que, por sua vez, nós permite retornar a estados anteriores do objeto gráfico a qualquer momento.
Usando a API de Dados JSON em seus projetos MQL
Imagine que você pode usar dados que não estão disponíveis no MetaTrader, você só obtém dados de indicadores por análise de preços e análise técnica. Agora imagine que você pode acessar dados que levarão seu poder de negociação a um novo nível. Você pode multiplicar o poder do software MetaTrader se misturar a saída de outros softwares, métodos de análise macroeconômica e ferramentas ultra-avançadas por meio da API de dados. Neste artigo, vamos ensinar como usar APIs e apresentar serviços de dados API úteis e valiosos.
Usando o MetaTrader 4 para análise de padrões baseados em tempo
A análise de padrões baseados em tempo pode ser usada no mercado financeiro para determinar o melhor momento para entrar em uma negociação ou momento no qual uma negociação deve ser totalmente evitada. Aqui usamos o MetaTrader 4 para analisar os dados históricos de mercado e produzir resultados otimizados que podem ser úteis para aplicação em sistemas de negociações mecânicas.
Mais sobre o sistema Murray
Os sistemas gráficos de análise de preços são amplamente reconhecidos e apreciados pelos traders. Neste artigo, irei abordar o sistema Murray em sua totalidade, que engloba não apenas os renomados níveis, mas também outras técnicas úteis para avaliar a posição atual do preço e tomar decisões de negociação.
Desenvolvendo um agente de Aprendizado por Reforço em MQL5 com Integração RestAPI (Parte 5): Escolhendo o Algoritmo do agente
Este capítulo da série aborda algoritmos de aprendizado por reforço, focando em Q-Learning, Deep Q-Network (DQN), e Proximal Policy Optimization (PPO). Explora como essas técnicas podem ser integradas para melhorar a automação de tarefas, detalhando suas características, vantagens, e aplicabilidades práticas. A seleção do algoritmo mais adequado é vista como crucial para otimizar a eficiência operacional em ambientes dinâmicos e incertos, prometendo discussões futuras sobre a implementação prática e teórica desses métodos.
Redes neurais de maneira fácil (Parte 88): Codificador denso de séries temporais (TiDE)
O desejo de obter previsões mais precisas leva os pesquisadores a complicar os modelos de previsão. Isso, por sua vez, aumenta os custos de treinamento e manutenção do modelo. Mas será que isso sempre é justificado? Neste artigo, proponho que você conheça um algoritmo que utiliza a simplicidade e a velocidade dos modelos lineares, e demonstra resultados no nível dos melhores com uma arquitetura mais complexa.
Modificação de dois estágios de posições abertas
A abordagem de dois estágios permite que você evite o fechamento e reabertura desnecessários de posições em situações próximas à tendência e em casos de possível ocorrência de divergência.
Desenvolvendo um agente de Aprendizado por Reforço em MQL5.com Integração RestAPI(Parte 2): Funções MQL5 para Interação HTTP com API REST do Jogo da Velha
O artigo detalha como MQL5 pode interagir com Python e FastAPI, usando chamadas HTTP em MQL5 para se comunicar com um jogo da velha em Python. Discute a criação de uma API com FastAPI para essa integração e inclui um script de teste em MQL5, destacando a versatilidade do MQL5, a simplicidade do Python e a eficiência do FastAPI na conexão de diferentes tecnologias para soluções inovadoras.
Desenvolvendo um EA de negociação do zero (Parte 27): Em direção ao futuro (II)
Vamos continuar indo em direção a um sistema mais completo de ordens direto no gráfico. Então neste artigo irei mostrar uma forma de você corrigir, ou melhor dizendo fazer com que o sistema de ordens fique mais intuitivo.
Como desenvolver um sistema de negociação baseado no indicador MFI
O novo artigo de nossa série sobre como projetar um sistema de negociação baseado nos indicadores técnicos mais populares considera um novo indicador técnico - o Índice de Fluxo de Dinheiro (MFI). Estudaremos este indicador em detalhes e aprenderemos a desenvolver um sistema de negociação simples utilizando a linguagem MQL5 para, posteriormente, executá-lo na MetaTrader 5.
Desenvolvendo um agente de Aprendizado por Reforço em MQL5 com Integração RestAPI(Parte 1): Usando RestAPIs em MQL5
Este artigo aborda a importância das APIs (Interfaces de Programação de Aplicativos) na comunicação entre diferentes aplicativos e sistemas de software. Ele destaca o papel das APIs na simplificação da interação entre aplicativos, permitindo que eles compartilhem dados e funcionalidades de maneira eficiente.
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.
Algoritmos de otimização populacional: algoritmos de estratégias evolutivas (Evolution Strategies, (μ,λ)-ES e (μ+λ)-ES)
Neste artigo, vamos falar sobre um grupo de algoritmos de otimização conhecidos como "Estratégias Evolutivas" (Evolution Strategies ou ES). Eles são alguns dos primeiros algoritmos que usam princípios de evolução para encontrar soluções ótimas. Vamos mostrar as mudanças feitas nas versões clássicas das ES, além de revisar a função de teste e a metodologia de avaliação dos algoritmos.
Operações de arquivo agrupadas
Às vezes é necessário realizar operações idênticas com um grupo de arquivos. Se você tem uma lista de arquivos incluída em um grupo, então isso não é problema. Entretanto, se você precisar fazer essa lista, então surge uma questão: "Como posso fazer isso?" O artigo propõe fazer isso usando funções FindFirstFile() e FindNextFile() incluídas no kernel32.dll.
Fatorando Matrizes — O Básico
Como o intuito aqui é ser didático. Vou manter a coisa no seu padrão mais simples. Ou seja, iremos implementar apenas e somente o que será preciso. A multiplicação de matrizes. E você verá que isto será o suficiente para simular a multiplicação de uma matriz por um escalar. A grande dificuldade que muita gente tem em implementar um código usando fatoração de matrizes, é que diferente de uma fatoração escalar, onde em quase todos os casos a ordem dos fatores não altera o resultado. Quando se usa matrizes, a coisa não é bem assim.
Desenvolvendo um sistema de Replay (Parte 66): Dando play no serviço (VII)
Aqui neste artigo, vamos implementar uma primeira solução, para que possamos saber o momento em que uma nova barra poderá vim a surgir no gráfico. Esta solução se adequa a diversas situações. Porém entender como a mesma foi desenvolvida pode lhe ajudar a entender diversas questões. O conteúdo exposto aqui, visa e tem como objetivo, pura e simplesmente a didática. De modo algum deve ser encarado como sendo, uma aplicação cuja finalidade não venha a ser o aprendizado e estudo dos conceitos mostrados.
Dominando o ONNX: Ponto de virada para traders MQL5
Mergulhe no mundo do ONNX, um poderoso formato aberto para compartilhar modelos de aprendizado de máquina. Descubra como o uso do ONNX pode revolucionar a negociação algorítmica em MQL5, permitindo que os traders integrem sem obstáculos modelos avançados de inteligência artificial e elevem suas estratégias a um novo patamar. Desvende os segredos da compatibilidade entre plataformas e aprenda a desbloquear todo o potencial do ONNX em sua negociação no MQL5. Melhore sua negociação com este guia detalhado sobre ONNX.
Desenvolvendo um agente de Aprendizado por Reforço em MQL5 com Integração RestAPI (Parte 3): Criando jogadas automáticas e Scripts de Teste em MQL5
Este artigo explora a implementação de jogadas automáticas no jogo da velha Python, integrado com funções MQL5 e testes unitários. O objetivo é aprimorar a interatividade do jogo e garantir a robustez do sistema através de testes MQL5. Ele aborda desde o desenvolvimento da lógica de jogo até a integração e testes práticos, culminando na criação de um ambiente de jogo dinâmico e um sistema integrado confiável.