Aplicando Seleção de Recursos Localizada em Python e MQL5
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.
Simulação de mercado (Parte 24): Iniciando o SQL (VII)
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.
Simulação de mercado (Parte 23): Iniciando o SQL (VI)
Simulação de mercado (Parte 23): Iniciando o SQL (VI)
Neste artigo exploremos como fazer a visualização, e por consequência entender como um banco de dados está estruturado. Isto foi feito, ao observarmos o diagrama interno do banco de dados. Mesmo que este tipo de coisa, pareça ser algo desnecessário. Pode ser algo bastante valido, se você pretende de fato se tornar um administrador de bancos de dados. E sim, existem pessoas que, vivem de fazer manutenção, e criação de bancos de dados.
Algoritmo do buraco negro — Black Hole Algorithm (BHA)
Algoritmo do buraco negro — Black Hole Algorithm (BHA)
O algoritmo do buraco negro (Black Hole Algorithm, BHA) utiliza os princípios da gravidade dos buracos negros para otimizar soluções. Neste artigo, vamos explorar como o BHA atrai as melhores soluções, evitando mínimos locais, e por que esse algoritmo se tornou uma ferramenta poderosa para resolver problemas complexos. Descubra como ideias simples podem gerar resultados impressionantes no mundo da otimização.
Introdução ao Connexus (Parte 1): Como usar a função WebRequest?
Introdução ao Connexus (Parte 1): Como usar a função WebRequest?
Este artigo é o início de uma série de desenvolvimentos para uma biblioteca chamada “Connexus”, que tem como objetivo facilitar requisições HTTP com MQL5. O objetivo deste projeto é fornecer ao usuário final essa oportunidade e mostrar como usar esta biblioteca auxiliar. Eu procurei torná-lo o mais simples possível para facilitar o estudo e proporcionar a possibilidade de futuros desenvolvimentos.
Criando um Expert Advisor Integrado MQL5-Telegram (Parte 5): Enviando Comandos do Telegram para o MQL5 e Recebendo Respostas em Tempo Real
Criando um Expert Advisor Integrado MQL5-Telegram (Parte 5): Enviando Comandos do Telegram para o MQL5 e Recebendo Respostas em Tempo Real
Neste artigo, criamos diversas classes para facilitar a comunicação em tempo real entre o MQL5 e o Telegram. Focamos na obtenção de comandos a partir do Telegram, sua decodificação e interpretação, e no envio de respostas adequadas de volta. Ao final, garantimos que essas interações estejam efetivamente testadas e operacionais dentro do ambiente de negociação.
Simulação de mercado (Parte 22): Iniciando o SQL (V)
Simulação de mercado (Parte 22): Iniciando o SQL (V)
Antes que você chute o balde, e decida abandonar o estudo sobre como usar o SQL. Deixe-me lembrá-lo, meu caro leitor, que aqui estamos ainda usando apenas o básico do básico. Ainda não exploramos algumas coisas que são possíveis de serem feitas no SQL. Assim que as explorarmos você verá que o SQL é bem mais prático do que parece. Mesmo que muito provavelmente, eu venha a mudar a direção do que estamos criando. Isto por que, o processo de criação é dinâmico. Irei mostrar um pouco mais sobre como fazer as coisas no SQL. Isto por que, ele de fato é algo que você precisa entender e conhecer. Ficar simplesmente achando que é mais capaz, que toda uma comunidade de programadores e desenvolvedores, apenas lhe fará perder tempo e oportunidade. Tenha calma, pois a coisa irá se tornar ainda mais interessante.
Robô de trading multimódulo em Python e MQL5 (Parte I): Criando a arquitetura básica e os primeiros módulos
Robô de trading multimódulo em Python e MQL5 (Parte I): Criando a arquitetura básica e os primeiros módulos
Estamos desenvolvendo um sistema de trading modular que combina Python para análise de dados com MQL5 para execução de ordens. Quatro módulos independentes monitoram paralelamente diferentes aspectos do mercado: volumes, arbitragem, economia e riscos, utilizando RandomForest com 400 árvores para análise. É dado um foco especial no gerenciamento de risco, pois sem uma gestão adequada, até os algoritmos de trading mais avançados tornam-se inúteis.
Otimização de portfólio em Forex: Síntese de VaR e teoria de Markowitz
Otimização de portfólio em Forex: Síntese de VaR e teoria de Markowitz
Como se realiza o trading com portfólio em Forex? Como pode ser feita a síntese entre a teoria de portfólio de Markowitz para otimizar as proporções do portfólio e o modelo VaR para otimizar o risco do portfólio? Vamos criar um código baseado na teoria de portfólio, onde, de um lado, obtemos um risco reduzido e, do outro, uma rentabilidade de longo prazo aceitável.
Negociação algorítmica baseada em padrões de reversão 3D
Negociação algorítmica baseada em padrões de reversão 3D
Estamos abrindo um novo mundo de trading automatizado em barras 3D. Como seria um robô de trading operando em barras multidimensionais de preço, e será que os clusters “amarelos” das barras 3D conseguem prever reversões de tendência? Como é o trading em múltiplas dimensões?
ADAM Populacional (estimativa adaptativa de momentos)
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.
Simulação de mercado (Parte 21): Iniciando o SQL (IV)
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.
Criando barras 3D com base em tempo, preço e volume
Criando barras 3D com base em tempo, preço e volume
O que são gráficos de preços 3D multidimensionais e como eles são construídos. Como as barras 3D preveem reversões de preço e como Python e MetaTrader 5 permitem construir essas barras volumétricas em tempo real.
Modelos de regressão não linear no mercado
Modelos de regressão não linear no mercado
Modelos de regressão não linear no mercado: é realmente possível prever os mercados financeiros? Vamos tentar criar um modelo para prever os preços do euro-dólar e, com base nele, fazer dois robôs: um em Python e outro em MQL5.
Simulação de mercado (Parte 20): Iniciando o SQL (III)
Simulação de mercado (Parte 20): Iniciando o SQL (III)
Apesar de podermos fazer as coisas com um banco de dados, tendo cerca de 10 ou pouco mais registros. A coisa realmente se torna melhor assimilada, quando usamos um arquivo de banco de dados que contenha mais de 15 mil registros. Ou seja, se você for criar isto manualmente irá ser uma bela de uma tarefa. No entanto, dificilmente você irá encontrar algum banco de dados, mesmo para fins didáticos disponível para download. Mas não precisamos de fato recorrer a este tipo de coisa. Podemos usar o MetaTrader 5, para criar um banco de dados para nos. Neste artigo veremos como fazer isto.
Simulação de mercado (Parte 19): Iniciando o SQL (II)
Simulação de mercado (Parte 19): Iniciando o SQL (II)
Como eu disse no primeiro artigo sobre SQL, não faz sentido você perder tempo, programado rotinas e mais rotinas a fim de conseguir, gerar ou produzir algo que o próprio SQL já contém. Porém sem saber o básico do básico, você não conseguirá fazer nada em SQL, a fim de aproveitar de alguma forma o que esta ferramenta tem a nos oferecer. Sendo assim, aqui neste artigo iremos ver como fazer para conseguir executar tarefas primordiais a serem feitas em bancos de dados.
Aplicação de regras associativas para análise de dados no Forex
Aplicação de regras associativas para análise de dados no Forex
Como aplicar as regras preditivas de análise de dados do varejo de supermercados ao mercado real de Forex? Como as compras de biscoitos, leite e pão estão relacionadas às transações na bolsa? Este artigo explora uma abordagem inovadora para o trading algorítmico, baseada no uso de regras associativas.
Simulação de mercado (Parte 18): Iniciando o SQL (I)
Simulação de mercado (Parte 18): Iniciando o SQL (I)
Não importa se vamos usar um ou outro programa de SQL. Seja MySQL, SQL Server, SQLite, OpenSQL ou qualquer outro. Todos tem algo em comum entre si. Este algo em comum é a linguagem SQL. Pois bem, mesmo que você não venha a usar de fato uma Workbench, poderá fazer manipulações ou trabalhar com um banco de dados diretamente no MetaEditor ou via MQL5. Isto pensando em fazer as coisas no MetaTrader 5. Mas para de fato conseguir fazer as coisas assim, você precisará de algum conhecimento sobre SQL. Então aqui vamos aprender pelo menos o básico.
Algoritmo de busca orbital atômica — Atomic Orbital Search (AOS): Modificação
Algoritmo de busca orbital atômica — Atomic Orbital Search (AOS): Modificação
Na segunda parte do artigo, continuaremos o desenvolvimento da versão modificada do algoritmo AOS (Atomic Orbital Search), focando em operadores específicos para aumentar sua eficiência e adaptabilidade. Após analisar as bases e mecânicas do algoritmo, discutiremos ideias para melhorar o desempenho e a capacidade de análise de espaços de soluções complexos, propondo novas abordagens para expandir sua funcionalidade como ferramenta de otimização.
Simulação de mercado (Parte 17): Sockets (XI)
Simulação de mercado (Parte 17): Sockets (XI)
Implementar a parte que será executada aqui no MetaTrader 5, está longe de ser complicado. Mas existem diversos cuidados e pontos de atenção a serem observados. Isto para que você caro leitor, consiga de fato fazer com que o sistema funcione. Lembre-se de uma coisa: Você não executará um único programa. Você estará na verdade, executando três programas ao mesmo tempo. E é importante que cada um seja implementado e construído de forma que trabalhem e conversem entre si. Isto sem que eles fiquem completamente sem saber o que cada um está querendo ou desejando fazer.
Métodos de otimização da biblioteca Alglib (Parte II)
Métodos de otimização da biblioteca Alglib (Parte II)
Neste artigo, continuaremos a análise dos métodos de otimização restantes da biblioteca ALGLIB, com foco especial em seus testes em funções complexas e multidimensionais. Isso nos permitirá não apenas avaliar a eficiência de cada algoritmo, mas também identificar seus pontos fortes e fracos em diferentes condições.
Criando um Painel de Administrador de Negociação em MQL5 (Parte I): Construindo uma Interface de Mensagens
Criando um Painel de Administrador de Negociação em MQL5 (Parte I): Construindo uma Interface de Mensagens
Este artigo discute a criação de uma Interface de Mensagens para o MetaTrader 5, voltada para Administradores de Sistema, para facilitar a comunicação com outros traders diretamente dentro da plataforma. Integrações recentes de plataformas sociais com o MQL5 permitem a transmissão rápida de sinais através de diferentes canais. Imagine ser capaz de validar sinais enviados com apenas um clique—"SIM" ou "NÃO". Continue lendo para saber mais.
Simulação de mercado (Parte 16): Sockets (X)
Simulação de mercado (Parte 16): Sockets (X)
Estamos a um passo de concluir este desafio. Porém, quero que você, caro leitor, procure entender primeiro estes dois artigos. Tanto este como o anterior. Isto para que consiga de fato entender o próximo onde abordarei exclusivamente a parte referente a programação em MQL5. Apesar de que ali a coisa será igualmente voltada a ser fácil de entender. Se você não compreender estes dois últimos artigos. Com toda a certeza terá grandes problemas em entender o próximo. O motivo disto é simples: As coisas vão se acumulando. Quando mais coisas é preciso fazer, mais coisas é preciso criar e entender para poder atingir o objetivo.
Desenvolvendo um EA multimoeda (Parte 19): Criando etapas implementadas em Python
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.
Simulação de mercado (Parte 15): Sockets (IX)
Simulação de mercado (Parte 15): Sockets (IX)
Neste artigo daqui, explicarei uma das soluções possíveis para o que venho tentando mostrar. Ou seja, como permitir que um usuário no Excel, consiga fazer algo no MetaTrader 5. Isto sem que ele de fato, envie ordens, abra ou feche uma posição usando o MetaTrader 5. A ideia, é que o usuário faça uso do Excel a fim de ter um estudo fundamentalista de algum ativo. E fazendo uso, apenas e somente do Excel, ele consiga dizer a um Expert Advisor, que esteja executando no MetaTrader 5, que é para abrir ou fechar uma dada posição.
Análise de Sentimento no Twitter com Sockets
Análise de Sentimento no Twitter com Sockets
Este inovador bot de negociação integra o MetaTrader 5 com Python para aproveitar a análise de sentimento em tempo real nas mídias sociais para decisões automatizadas de negociação. Ao analisar o sentimento no Twitter relacionado a instrumentos financeiros específicos, o bot traduz as tendências das mídias sociais em sinais acionáveis de negociação. Ele utiliza uma arquitetura cliente-servidor com comunicação via socket, permitindo uma interação contínua entre as capacidades de negociação do MT5 e o poder de processamento de dados do Python.
Simulação de mercado (Parte 13): Sockets (VII)
Simulação de mercado (Parte 13): Sockets (VII)
Quando você desenvolve algo, seja no xlwings, ou qualquer outro pacote que nos permita ler e escrever diretamente no Excel. Você na verdade deve notar que todos os programas, funções ou procedimentos. Executam e logo finalizam a sua tarefa. Eles não ficam ali, dentro de um loop. E por mais que você tente fazer as coisas de uma forma diferente.
Simulação de mercado (Parte 12): Sockets (VI)
Simulação de mercado (Parte 12): Sockets (VI)
Neste artigo, vamos ver como resolver algumas questões e ver alguns problemas que temos ao usar código feito em Python dentro de outros programas. No caso o que mostrarei aqui, é um típico problema que existe, quando você vai usar o Excel junto com o MetaTrader 5. Mas para fazer esta comunicação estaremos usando o Python. Porém existe um pequeno problema nesta implementação. Não em todos os casos, mas em alguns casos específicos e quando o problema ocorre você tem que entender por que ele ocorre. Neste artigo iniciarei a explicação de como resolver tal coisa.
EA MQL5 integrado ao Telegram (Parte 2): Envio de sinais do MQL5 para o Telegram
EA MQL5 integrado ao Telegram (Parte 2): Envio de sinais do MQL5 para o Telegram
Nesta parte do artigo, vamos criar um EA MQL5 integrado ao Telegram que envia sinais de cruzamento de médias móveis para o mensageiro. Descreveremos detalhadamente o processo de geração de sinais de negociação com base nesses cruzamentos, implementaremos o código necessário em MQL5 e garantiremos uma integração contínua. Como resultado, teremos um sistema que envia alertas de negociação em tempo real diretamente para um grupo no Telegram.
EA MQL5 integrado ao Telegram (Parte 1): Envio de mensagens do MQL5 para o Telegram
EA MQL5 integrado ao Telegram (Parte 1): Envio de mensagens do MQL5 para o Telegram
Neste artigo, criaremos um EA na linguagem MQL5 que enviará mensagens para o Telegram por meio de um bot. Configuraremos os parâmetros necessários, incluindo o token de API do bot e o identificador do chat, e então realizaremos uma requisição HTTP POST para entregar as mensagens. Em seguida, processaremos a resposta para garantir a entrega bem-sucedida e lidaremos com possíveis erros.