Algoritmo de otimização caótica — Chaos optimization algorithm (COA): Continuação
Continuação do estudo do algoritmo de otimização caótica. A segunda parte do artigo é dedicada aos aspectos práticos da implementação do algoritmo, ao seu teste e às conclusões.
Simulação de mercado: Position View (XX)
Neste artigo iremos ver como modificar o código do indicador de posição a fim de conseguir, criar um tipo de sombra para que possamos visualizar onde o preço se encontra atualmente no servidor de negociação. Tal principio tem como finalidade facilitar o planejamento de operações. Onde temos uma movimentação das linhas de stop loss ou take profit. Porém adicionar tal funcionalidade, ou seja sombras de preço. Pode parecer algo extremamente complexo. Mas neste artigo mostrarei que você conseguirá fazer isto de maneira muito simples e prática.
Algoritmos de otimização populacionais: objetos de busca multissociais artificiais (artificial Multi-Social search Objects, MSO)
Continuação do artigo anterior como desenvolvimento da ideia de grupos sociais. No novo artigo, explora-se a evolução dos grupos sociais utilizando algoritmos de movimentação e memória. Os resultados ajudarão a entender a evolução dos sistemas sociais e aplicá-los na otimização e busca de soluções.
Otimização por herança sanguínea — Blood Inheritance Optimization (BIO)
Apresento a vocês meu novo algoritmo populacional de otimização BIO (Blood Inheritance Optimization), inspirado no sistema de herança dos tipos sanguíneos humanos. Neste algoritmo, cada solução possui seu próprio "tipo sanguíneo", que define a forma de sua evolução. Assim como na natureza, o tipo sanguíneo de uma criança é herdado segundo regras específicas, no BIO as novas soluções recebem suas características através de um sistema de herança e mutações.
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.
Desenvolvendo um EA multimoeda (Parte 26): Informador para instrumentos de negociação
Antes de avançarmos ainda mais no desenvolvimento de EAs multimoeda, vamos tentar mudar o foco para a criação de um novo projeto que utilize a biblioteca já desenvolvida. Com esse exemplo, identificaremos como é melhor organizar o armazenamento do código-fonte e como o novo repositório de código da MetaQuotes pode nos ajudar.
Simulação de mercado: Position View (IV)
Aqui começaremos a unir diversas coisas, ou aplicações que antes estavam complemente isoladas entre si. Apesar de que o Chart Trade, o Indicador de Mouse e o Expert Advisor, já terem algum tipo de relacionamento. Não havia ainda uma forma de podermos observar, posições que estivessem abertas no servidor de negociação, isto diretamente no gráfico. Fazendo muitas das vezes uso de um sistema cross order. Mas a partir deste momento isto começa a se tornar possível. Abrindo diversas portas para novas ideias e implementações futuras. Se bem que estamos apenas começando a fazer as coisas acontecerem. Mas já teremos uma direção na qual seguir.
Simulação de mercado (Parte 24): Iniciando o SQL (VII)
No artigo anterior terminamos de fazer as devidas apresentações sobre o SQL. Então o que eu havia me proposto a mostrar e explicar, sobre SQL, ao meu ver, foi devidamente explicado. Isto para que todos, que vierem a ver o sistema de replay / simulador, sendo construído. Consigam no mínimo terem alguma noção do que pode estar se passando ali. Devido ao fato, de que não faz sentido, programar diversas coisas, que podem ser perfeitamente cobertas pelo SQL.
Algoritmo de Partenogênese Cíclica — Cyclic Parthenogenesis Algorithm (CPA)
Neste artigo, vamos analisar um novo algoritmo populacional de otimização, o CPA (Cyclic Parthenogenesis Algorithm), inspirado na estratégia reprodutiva única dos pulgões. O algoritmo combina dois mecanismos de reprodução — partenogênese e sexual — e utiliza uma estrutura de colônia populacional com possibilidade de migração entre colônias. As principais características do algoritmo são a alternância adaptativa entre diferentes estratégias reprodutivas e o sistema de troca de informação entre colônias por meio do mecanismo de voo.
Desenvolvendo um EA multimoeda (Parte 23): Colocando em ordem o pipeline de etapas da otimização automática de projetos (II)
Estamos buscando criar um sistema de otimização periódica e automática das estratégias de trading utilizadas em um único EA final. À medida que o sistema evolui, ele se torna mais complexo, sendo necessário, periodicamente, analisá-lo como um todo para identificar gargalos e soluções pouco eficientes.
Simulação de mercado: Position View (XIV)
O que vamos fazer agora, só é possível por que o MQL5, utiliza o mesmo princípio de funcionamento de uma programação baseada em eventos. Tal modelo de programação, é bastante usada na criação de DLL. Sei que no primeiro momento a coisa toda parecerá extremamente confusa e sem nenhuma lógica. Mas neste artigo, irei introduzir de maneira um pouco mais sólida tais conceitos, para que você iniciante consiga compreender adequadamente o que está acontecendo. Entender o que irei começar a explicar neste artigo é algo que poderá lhe ajudar muito na vida, como programador.
Técnicas do MQL5 Wizard que você deve conhecer (Parte 23): CNNs
As Redes Neurais Convolucionais são outro algoritmo de aprendizado de máquina que tende a se especializar em decompor conjuntos de dados multidimensionais em partes constituintes principais. Vamos ver como isso é normalmente alcançado e explorar uma possível aplicação para traders em outra classe de sinais do MQL5 Wizard.
Simulação de mercado: Position View (VIII)
No artigo anterior vimos como poderíamos implementar o indicador de posição, para que pudéssemos fechar uma posição aberta diretamente via gráfico. Isto interagindo com um objeto que estaria a nossa disposição no gráfico. Depois que o primeiro mecanismo estava concluído e funcionando. Começamos a fazer algumas modificações para que também fosse possível remover as linhas de take profit e stop loss. Isto de uma posição que estivesse aberta. Porém como as mudanças a serem feitas precisariam de uma explicação adequada. Naquele mesmo artigo, apenas mostrei as mudanças que deveriam ocorrer no âmbito do Expert Advisor. Sendo necessário mostrar ainda as mudanças que deveriam ocorrer no Indicador de posição.
Otimização com neuroboids — Neuroboids Optimization Algorithm 2 (NOA2)
O novo algoritmo autoral de otimização NOA2 (Neuroboids Optimization Algorithm 2) combina os princípios da inteligência de enxame com controle baseado em redes neurais. O NOA2 funde a mecânica do comportamento coletivo dos neuroboids com um sistema neural adaptativo, que permite aos agentes ajustar seu comportamento de forma autônoma durante o processo de busca pelo ótimo. O algoritmo está em fase ativa de desenvolvimento e demonstra potencial para resolver tarefas complexas de otimização.
Simulação de mercado: Position View (VI)
Neste artigo, faremos diversas melhorias, visando obter com que o indicador de posição, venha a refletir o que de fato está ocorrendo no servidor de negociação em termos de posições e seu status atual. Devo lembrar, que estas aplicações que serão mostradas aqui, não visam de maneira alguma substituir qualquer elemento presente no MetaTrader 5. E tal pouco devem ser utilizadas sem os devidos cuidados e critérios. Já que elas tem como objetivo terem um código didático. Ou seja, para fins de aprendizado de como as coisas funcionam. E o motivo para que eu diga que o código é didático. É pelo fato de que o uso de mensagens em alguns casos não é a melhor forma de implementar as coisas.
Simulação de mercado: Position View (X)
Precisamos de fato, de algum meio para conseguir lidar com os objetos gráficos que serão criados. A proposta mostrada no artigo anterior, se encaixa perfeitamente bem, em alguns cenários. No entanto, aqui, precisamos de algo um pouco mais elaborado. Isto devido a natureza do problema com que estamos lidando. Assim sendo, não tentaremos de maneira alguma substituir os mecanismos que estão presentes no MetaTrader 5. Isto para conseguir lidar com o ZOrder, além é claro, verificar qual objeto está em primeiro plano ou encoberto por outro objeto. Vamos fazer algo completamente diferente. Aqui vou mostrar quais as modificações que precisam ser feitas no código a fim de conseguir, tirar de alguma forma, proveito do que o MetaTrader 5, já faz para nos.
Otimização de nuvens atmosféricas — Atmosphere Clouds Model Optimization (ACMO): Teoria
Este artigo é dedicado ao algoritmo meta-heurístico Atmosphere Clouds Model Optimization (ACMO), que modela o comportamento das nuvens para resolver problemas de otimização. O algoritmo utiliza os princípios de geração, movimento e dispersão de nuvens, adaptando-se às "condições climáticas" no espaço de soluções. O artigo explora como a simulação meteorológica do algoritmo encontra soluções ótimas em um espaço complexo de possibilidades e descreve detalhadamente as etapas do ACMO, incluindo a preparação do "céu", o nascimento das nuvens, seu deslocamento e a concentração de chuva.
Algoritmo de busca circular — Circle Search Algorithm (CSA)
Este artigo apresenta um novo algoritmo metaheurístico de otimização, o CSA (Circle Search Algorithm), baseado nas propriedades geométricas do círculo. O algoritmo utiliza o princípio de movimentação de pontos ao longo das tangentes para encontrar a solução ideal, combinando fases de diversificação global e intensificação local.
Algoritmo de comportamento social adaptativo — Adaptive Social Behavior Optimization (ASBO): Método de Schwefel, Box-Muller
Este artigo apresenta uma imersão fascinante no mundo do comportamento social de organismos vivos e sua influência na criação de um novo modelo matemático — ASBO (Adaptive Social Behavior Optimization). Exploramos como os princípios de liderança, vizinhança e cooperação, observados em sociedades de seres vivos, inspiram o desenvolvimento de algoritmos de otimização inovadores.
Simulação de mercado: A união faz a força (I)
Estamos chegando aos finalmente. O desenvolvimento do replay / simulador está quase concluído. É bem verdade que ainda precisaremos fazer algumas poucas coisas. Mas frente a tudo que realmente já foi feito. Implementar o que falta será moleza. Mas como tudo que será mostrado neste artigo, precisará ser adequadamente digerido e compreendido. Quero que você, meu caro leitor e entusiasta.
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.
Simulação de mercado: Position View (XVIII)
Neste artigo, mostrei da forma o mais didática possível. Como você pode conseguir modificar e gerar um código que seja capaz de cumprir alguns objetivos. Isto modificando o mínimo possível um código já existente. Iremos adicionar um indicador de volume, ao mesmo tempo impedir que o usuário ou operador venha a remover objetos criados pelo indicador de posição.
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.
Como simplificar o teste manual de estratégias com MQL5: construindo seu próprio conjunto de ferramentas
Neste artigo, vamos desenvolver um conjunto de ferramentas personalizado em MQL5 para facilitar o teste manual em dados históricos no Testador de Estratégias. Explicaremos sua estrutura e sua implementação, com foco especial nos recursos interativos de controle das operações. Em seguida, mostraremos como usá-lo para testar estratégias com eficiência.
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.
Otimização e ajuste fino do código-fonte para melhorar os resultados do backtesting
Melhore seu código MQL5 otimizando a lógica, aprimorando os cálculos e reduzindo o tempo de execução para aumentar a precisão do backtesting. Ajuste finamente os parâmetros, otimize loops e elimine ineficiências para melhorar o resultado.