Criação de uma estratégia de retorno à média com base em aprendizado de máquina
Neste artigo, é proposto um novo método para criar sistemas de trading baseados em aprendizado de máquina, utilizando clusterização e anotação de trades para estratégias de retorno à média.
Teoria das Categorias em MQL5 (Parte 20): autoatenção e transformador
Vamos nos afastar um pouco de nossos tópicos mais comuns e analisar uma parte do algoritmo do ChatGPT. Ele possui algumas semelhanças ou conceitos emprestados das transformações naturais? Vamos tentar responder a essas e outras perguntas usando nosso código no formato de classe de sinal.
Simplificando a negociação com base em notícias (Parte 2): Gerenciando riscos
Neste artigo, adicionaremos herança ao código anterior e ao novo. Implementaremos uma nova estrutura de banco de dados para garantir um bom desempenho. Além disso, criaremos uma classe de gerenciamento de risco para calcular volumes.
Desenvolvendo um sistema de Replay (Parte 73): Uma comunicação inusitada (II)
Neste artigo, veremos como transferir informações em tempo real entre o indicador e o serviço, entender por que podem surgir problemas ao modificar o tempo gráfico e como resolvê-los corretamente. Como bônus, você terá acesso à última versão da aplicação de replay/simulador. O conteúdo é exclusivamente didático e não deve ser considerado como uma aplicação para outros fins.
O Problema da Discordância: Mergulhando Mais Fundo na Complexidade da Explicabilidade em IA
Neste artigo, exploramos o desafio de entender como a IA funciona. Modelos de IA frequentemente tomam decisões de maneiras que são difíceis de explicar, levando ao que é conhecido como o "problema da discordância". Esta questão é fundamental para tornar a IA mais transparente e confiável.
Desenvolvendo um EA multimoeda (Parte 19): Criando etapas implementadas em Python
Até agora, analisamos a automação da execução de procedimentos sequenciais de otimização de EAs exclusivamente no testador de estratégias padrão. Mas o que fazer se, entre essas execuções, quisermos processar alguns dados já obtidos por outros meios? Vamos tentar adicionar a possibilidade de criar novas etapas de otimização, executadas por programas escritos em Python.
ADAM Populacional (estimativa adaptativa de momentos)
Este artigo apresenta a transformação do conhecido e popular método de otimização por gradiente ADAM em um algoritmo populacional e sua modificação com a introdução de indivíduos híbridos. A nova abordagem permite criar agentes que combinam elementos de soluções bem-sucedidas usando uma distribuição probabilística. A principal inovação é a formação de indivíduos híbridos populacionais, que acumulam de forma adaptativa informações das soluções mais promissoras, aumentando a eficácia da busca em espaços multidimensionais complexos.
DoEasy. Controles (Parte 10): Objetos WinForms, dando vida à interface
Chegou a hora de dar vida à interface gráfica e criar funcionalidades para a interação de objetos com o usuário e outros objetos. E para que objetos mais complexos funcionem corretamente, já precisamos que os objetos interajam entre si e interajam com o usuário.
DoEasy. Controles (Parte 11): Objetos WinForms - grupos, objeto WinForms CheckedListBox
Neste artigo, consideraremos como agrupar objetos WinForms e criar um objeto-lista de objetos CheckBox.
Inferência causal em problemas de classificação de séries temporais
Neste artigo, examinaremos a teoria da inferência causal usando aprendizado de máquina, bem como a implementação de uma abordagem personalizada em Python. A inferência causal e o pensamento causal têm suas raízes na filosofia e psicologia e desempenham um papel importante na nossa compreensão da realidade.
Simplificando a negociação com base em notícias (Parte 1): Criando um Banco de Dados
A negociação de notícias pode ser complicada e esmagadora. Neste artigo, passaremos pelos passos para obter dados de notícias. Além disso, aprenderemos sobre o Calendário Econômico do MQL5 e o que ele tem a oferecer.
Construa Consultores Especialistas Autossustentáveis com MQL5 e Python
Neste artigo, discutiremos como podemos construir Consultores Especialistas capazes de selecionar e mudar autonomamente as estratégias de negociação com base nas condições prevalentes do mercado. Vamos aprender sobre Cadeias de Markov e como elas podem ser úteis para nós, como traders algorítmicos.
Algoritmo de Otimização Aritmética (AOA): O caminho do AOA até o SOA (Simple Optimization Algorithm)
Neste artigo, apresentamos o Algoritmo de Otimização Aritmética (Arithmetic Optimization Algorithm, AOA), que se baseia em operações aritméticas simples: adição, subtração, multiplicação e divisão. Essas operações matemáticas básicas são fundamentais para a busca de soluções ótimas em diversas tarefas.
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.
Simulação de mercado (Parte 21): Iniciando o SQL (IV)
Muitos de vocês, caros leitores, podem ter um nível de experiência muito superior ao meu, no que rege trabalhar com bancos de dados. Tendo assim uma visão diferente da minha. Porém, como era preciso definir, e desenvolver alguma forma de explicar o motivo pelo qual os bancos de dados, são criados da forma como são criados. Explicar o por que o SQL tem o formato que tem. Mas principalmente, por que as chaves primárias e chaves estrangeiras vieram a surgir. Foi preciso deixar as coisas um pouco abstratas.
Balanceando riscos ao negociar múltiplos instrumentos simultaneamente
Este artigo permitirá que um iniciante escreva uma implementação de um script do zero para balancear riscos ao negociar múltiplos instrumentos simultaneamente. Além disso, pode dar aos usuários experientes novas ideias para implementar suas soluções em relação às opções propostas neste artigo.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 33): Kernels de Processos Gaussianos
Os Kernels de Processos Gaussianos são a função de covariância da Distribuição Normal que pode desempenhar um papel em previsões. Exploramos esse algoritmo único em uma classe de sinal personalizada em MQL5 para ver se pode ser utilizado como um sinal principal de entrada e saída.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 44): Indicador técnico Average True Range (ATR)
O oscilador ATR é um indicador muito popular para atuar como um proxy de volatilidade, especialmente nos mercados de forex onde os dados de volume são escassos. Nós o examinamos com base em padrões, assim como fizemos com indicadores anteriores, e compartilhamos estratégias e relatórios de testes graças às classes da biblioteca MQL5 wizard e sua montagem.
Aprendendo MQL5 do iniciante ao profissional (Parte IV): Sobre Arrays, Funções e Variáveis Globais do Terminal
Este artigo é uma continuação do ciclo para iniciantes. Ele descreve em detalhes arrays de dados, a interação entre dados e funções, bem como variáveis globais do terminal que permitem a troca de dados entre diferentes programas MQL5.
Do básico ao intermediário: Indicador (I)
Neste artigo criaremos o nosso primeiro indicador totalmente prático e funcional. O objetivo aqui, não é e não será mostrar como se cria de fato uma aplicação. Mas ajudar a você, meu caro leitor, a entender como você pode por conta própria, desenvolver suas próprias ideias. As colocando em prática, de forma segura, simples e prática.
Reimaginando Estratégias Clássicas (Parte XI): Cruzamento de Médias Móveis (II)
As médias móveis e o oscilador estocástico podem ser usados para gerar sinais de negociação de tendência. No entanto, esses sinais só serão observados após a ação do preço ter ocorrido. Podemos superar efetivamente essa defasagem inerente dos indicadores técnicos usando IA. Este artigo ensinará como criar um Expert Advisor totalmente autônomo com IA, de forma a melhorar qualquer uma de suas estratégias de negociação existentes. Até mesmo a estratégia de negociação mais antiga possível pode ser aprimorada.
Redes neurais de maneira fácil (Parte 67): Aprendendo com experiências passadas para resolver novos problemas
Neste artigo, continuaremos a falar sobre métodos de coleta de dados em uma amostra de treinamento. É claro que o processo de aprendizado requer constante interação com o ambiente. Mas as situações podem variar.
Agrupamento de séries temporais na inferência causal
Os algoritmos de agrupamento em aprendizado de máquina são ferramentas importantes de aprendizado não supervisionado que permitem dividir os dados brutos em grupos com características semelhantes. Com esses grupos, é possível, por exemplo, realizar análise de mercado para um cluster específico, identificar os clusters mais resilientes em novos conjuntos de dados e também realizar inferências causais. Este artigo apresenta um método original para o agrupamento de séries temporais, utilizando a linguagem Python.
Desenvolvendo um EA multimoeda (Parte 14): Alteração adaptativa dos volumes no gerenciador de risco
O gerenciador de risco anteriormente desenvolvido continha apenas funcionalidades básicas. Vamos explorar caminhos para aprimorá-lo, buscando melhorar os resultados de negociação sem alterar a lógica das estratégias de trading.
Redes neurais em trading: Aprendizado multitarefa baseado no modelo ResNeXt
O framework de aprendizado multitarefa baseado no ResNeXt otimiza a análise de dados financeiros ao considerar sua alta dimensionalidade, não linearidade e dependências temporais. O uso de convolução em grupo e cabeças especializadas permite que o modelo extraia de forma eficiente as principais características dos dados brutos.
Redes neurais em trading: Framework híbrido de negociação com codificação preditiva (Conclusão)
Damos continuidade à análise do StockFormer, um sistema híbrido de negociação que combina codificação preditiva e algoritmos de aprendizado por reforço para análise de séries temporais financeiras. O sistema se baseia em três ramificações Transformer com o mecanismo Diversified Multi-Head Attention (DMH-Attn), que permite identificar padrões complexos e interrelações entre ativos. Anteriormente, aprendemos os aspectos teóricos do framework e implementamos os mecanismos do DMH-Attn; hoje vamos abordar a arquitetura dos modelos e seu treinamento.
Redes neurais de maneira fácil (Parte 41): Modelos Hierárquicos
Este artigo descreve modelos hierárquicos de aprendizado que propõem uma abordagem eficaz para resolver tarefas complexas de aprendizado de máquina. Os modelos hierárquicos consistem em vários níveis, cada um responsável por aspectos diferentes da tarefa.
Simulação de mercado (Parte 11): Sockets (V)
Vamos começar a implementar a comunicação entre o Excel e o MetaTrader 5. Mas antes é preciso entender algumas coisas importantes. Isto para que não venha a ficar coçando a cabeça tentando entender por que as coisas funcionam ou não. Mas antes que você venha a torcer o nariz para a integração entre o Python e o Excel. Vamos ver como podemos usar o xlwings, a fim de poder controlar de alguma forma o MetaTrader 5. Isto através do Excel. O que irei mostrar aqui será como foco principal a didática. Não ache que podemos fazer apenas o que mostrarei.
Rede neural na prática: Função de reta
Neste artigo, vamos passar rapidamente, por alguns métodos para conseguir a função que poderá representar os nossos dados no banco. Não irei me aprofundar em detalhes relacionados ao como usar estatísticas e estudos de probabilidade para interpretar os resultados. Deixo isto como dever de casa, para cada um que realmente deseja se aprofundar, na parte matemática da coisa. De qualquer forma, estudar tais coisas será primordial para que você de fato consiga compreender tudo que envolve estudos de redes neurais. Aqui irei pegar bem leve no tema.
Desenvolvendo um EA multimoeda (Parte 11): Início da automação do processo de otimização
Para obter um bom EA, precisamos selecionar muitos bons conjuntos de parâmetros para as instâncias das estratégias de trading. Isso pode ser feito manualmente, executando a otimização em diferentes símbolos e, em seguida, escolhendo os melhores resultados. Mas é melhor delegar esse trabalho para um programa e se concentrar em atividades mais produtivas.
Data Science e Machine Learning (Parte 22): Aproveitando Redes Neurais Autoencoders para Operações Mais Inteligentes, Movendo-se do Ruído para o Sinal
No mundo acelerado dos mercados financeiros, separar sinais significativos do ruído é crucial para o sucesso nas operações de trading. Ao empregar arquiteturas sofisticadas de redes neurais, os autoencoders se destacam ao descobrir padrões ocultos dentro dos dados de mercado, transformando entradas ruidosas em insights acionáveis. Neste artigo, exploramos como os autoencoders estão revolucionando as práticas de trading, oferecendo aos traders uma ferramenta poderosa para melhorar a tomada de decisões e ganhar uma vantagem competitiva nos mercados dinâmicos de hoje.
Criando um Expert Advisor Integrado ao Telegram em MQL5 (Parte 6): Adicionando Botões Inline Interativos
Neste artigo, integramos botões inline interativos em um Expert Advisor MQL5, permitindo controle em tempo real via Telegram. Cada clique em um botão dispara ações específicas e envia respostas de volta ao usuário. Também modularizamos funções para lidar com mensagens do Telegram e consultas de callback de forma eficiente.
Desenvolvendo um EA multimoeda (Parte 22): Início da transição para substituição dinâmica de configurações
Se decidimos automatizar a execução da otimização periódica, também precisamos cuidar da atualização automática das configurações dos EAs que já estão operando na conta de negociação. Isso também deve permitir rodar o EA no testador de estratégias e alterar suas configurações dentro de uma única execução.
Teoria das Categorias em MQL5 (Parte 19): Indução do quadrado de naturalidade
Continuamos a análise das transformações naturais, examinando a indução do quadrado de naturalidade. Por causa das limitações na implementação de várias moedas para os Expert Advisors desenvolvidos com o assistente MQL5, temos de buscar soluções criativas e eficientes para a classificação de dados usando scripts. As principais áreas de aplicação consideradas são a classificação de variações de preço e, consequentemente, sua previsão.
Do básico ao intermediário: Estruturas (VII)
Neste artigo, será mostrado como podemos lidar com problemas de forma a estruturar as coisas, a fim de criar uma solução mais fácil e atrativa. Apesar do conteúdo ser voltado para a didática, não representando assim um código real. Os conceitos e conhecimento vistos aqui, precisam de fato ser muito bem assimilados. Isto para que no futuro, você consiga acompanhar os códigos que iremos mostrar.
Gerente de risco profissional remoto para Forex em Python
Criamos um gerente de risco profissional remoto para Forex em Python e o implantamos em um servidor, passo a passo. Ao longo do artigo, veremos como gerenciar riscos no Forex de maneira programada e como evitar a perda total do depósito.
Otimização de Portfólio em Python e MQL5
Este artigo explora técnicas avançadas de otimização de portfólio usando Python e MQL5 com o MetaTrader 5. Ele demonstra como desenvolver algoritmos para análise de dados, alocação de ativos e geração de sinais de negociação, enfatizando a importância da tomada de decisões orientada por dados na gestão financeira moderna e na mitigação de riscos.
Redes neurais em trading: Superpoint Transformer (SPFormer)
Neste artigo, apresentamos um método de segmentação de objetos 3D baseado no Superpoint Transformer (SPFormer), que elimina a necessidade de agregação intermediária de dados. Isso acelera o processo de segmentação e melhora o desempenho do modelo.
Redes neurais de maneira fácil (Parte 53): decomposição de recompensa
Já falamos várias vezes sobre a importância de escolher corretamente a função de recompensa que usamos para incentivar o comportamento desejável do Agente, adicionando recompensas ou penalidades por ações específicas. Mas a questão de como o Agente interpreta nossos sinais permanece em aberto. Neste artigo, discutiremos a decomposição da recompensa em termos de transmissão de sinais individuais ao Agente a ser treinado.
Teoria das Categorias em MQL5 (Parte 18): Quadrado de naturalidade
Este artigo dá continuidade à série sobre a teoria das categorias, abordando as transformações naturais, que são um elemento fundamental da teoria. Vamos examinar a definição que parece complexa à primeira vista, depois mergulhar em exemplos e formas de aplicar as transformações na previsão de volatilidade.