Outras classes na biblioteca DoEasy (Parte 72): rastreamento e fixação dos parâmetros de objetos-gráficos numa coleção
Neste artigo, vamos finalizar as classes de objetos-gráficos e de sua coleção. Faremos o rastreamento automático das alterações das propriedades dos gráficos e das suas janelas, bem como o armazenamento de novos parâmetros nas propriedades do objeto. Este aprimoramento nos permitirá gerar uma funcionalidade de evento para toda a coleção de gráficos no futuro.
Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos
Conselhos de um programador profissional sobre métodos, técnicas e ferramentas auxiliares para tornar a programação mais fácil. Hoje falaremos sobre os parâmetros que podem ser restaurados após reiniciar (fechar) o terminal. Na verdade, todos os exemplos apresentados são partes funcionais do código do meu projeto Cayman.
Outras classes na biblioteca DoEasy (Parte 71): eventos da coleção de objetos-gráficos
Neste artigo, criaremos uma funcionalidade para rastrear alguns eventos de objetos-gráficos - adição/remoção de gráficos de símbolos, de subjanelas do gráfico, bem como adição/exclusão/mudança de indicadores presentes em janelas de gráficos.
Outras classes na biblioteca DoEasy (Parte 70): extensão da funcionalidade e atualização automática da coleção de objetos-gráficos
Neste artigo, vamos expandir a funcionalidade dos objetos-gráficos, criaremos a navegação em gráficos, geraremos capturas de tela, salvaremos e aplicaremos modelos aos gráficos. Faremos também uma atualização automática da coleção de objetos-gráficos, suas janelas e indicadores.
Swaps (Parte I): bloqueio e posições sintéticas
Neste artigo, tentarei expandir o conceito clássico de métodos de negociação de swap, e também explicarei porque cheguei à conclusão de que ele, em minha opinião, merece atenção especial e vale absolutamente a pena ser estudado.
Conselhos de um programador profissional (Parte I): Armazenamento, depuração e compilação de códigos Trabalho com projetos e registros
Conselhos de um programador profissional sobre métodos, técnicas e ferramentas auxiliares para tornar a programação mais fácil.
Outras classes na biblioteca DoEasy (Parte 69): classe-coleção de objetos-gráficos
Com este artigo, começaremos o desenvolvimento de uma classe-coleção de objetos-gráficos que armazenará uma lista-coleção de objetos-gráficos com suas subjanelas e indicadores, e tornará possível trabalhar com gráficos selecionados e suas subjanelas, ou com uma lista de vários gráficos ao mesmo tempo.
Scalping combinado: trades do passado ou melhoria do desempenho dos trades futuros
Agora analisaremos uma descrição da abordagem para aumentar a eficácia de qualquer sistema de negociação automatizado. Este artigo mostra resumidamente a ideia, os fundamentos básicos, as possibilidades e as desvantagens do método.
Redes neurais de maneira fácil (Parte 13): normalização em lote
No artigo anterior, começamos a examinar métodos para melhorar a qualidade do treinamento da rede neural. Neste artigo, proponho continuar este tópico e considerar uma outra abordagem, em particular a de normalização de dados em lote.
Outras classes na biblioteca DoEasy (Parte 68): classe de objeto-gráfico e classes de objetos-indicadores na janela do gráfico
Neste artigo, continuaremos a desenvolver a classe do objeto-gráfico. Vamos adicionar uma lista de objetos-janelas, onde, por sua vez, estarão disponíveis as listas de indicadores colocados nestas.
Padrão de design MVC e a possibilidade de usá-lo
Este artigo falará sobre um padrão MVC comum, bem como sobre os prós e os contras de seu uso em programas MQL. Seu propósito é o de "dividir" o código existente em três componentes separados: Modelo (Model), Visualização (View) e Controlador (Controller).
Outras classes na biblioteca DoEasy (Parte 67): classe de objeto-gráfico
Neste artigo, vamos criar uma classe de um objeto-gráfico (um gráfico de um instrumento de negociação) e modificar a classe-coleção de objetos de sinal mql5 para que cada objeto-sinal armazenado na coleção também atualize todos os seus parâmetros quando a lista é atualizada.
Força bruta para encontrar padrões (Parte IV): funcionalidade mínima
Neste artigo, mostrarei uma versão aprimorada da abordagem de força bruta, com base nos objetivos definidos no artigo anterior, e tentarei cobrir este tópico da forma mais ampla possível usando os EAs e as configurações obtidas por meio desse método. Também deixarei que a comunidade experimente a nova versão do programa.
Aprendizado de máquina em sistemas de negociação baseados em grade e martingale. Deveríamos apostar nele?
Este artigo apresentará ao leitor a técnica de aprendizado de máquina para negociação baseada em grade e martingale. Para minha surpresa, essa abordagem, por algum motivo, não é afetada de forma alguma na rede global. Após ler o artigo, podemos criar nossos próprios bots.
Redes Neurais de Maneira Fácil (Parte 12): Dropout
Como a próxima etapa no estudo das redes neurais, eu sugiro considerar os métodos de aumentar a convergência durante o treinamento da rede neural. Existem vários desses métodos. Neste artigo, nós consideraremos um deles intitulado Dropout.
Outras classes na biblioteca DoEasy (Parte 66): classe-coleção de Sinais MQL5.com
Neste artigo, criaremos uma classe-coleção de sinais - do serviço Sinais MQL5.com - com funções para gerenciar sinais assinados e também modificaremos a classe do objeto-instantâneo do livro de ofertas para exibir o volume total de ordens sell e buy.
Trabalhando com preços e sinais na biblioteca DoEasy (Parte 65): coleção de livros de ofertas e classe para trabalhar com sinais MQL5.com
Neste artigo, criaremos uma classe-coleção de livros de ofertas para todos os símbolos e começaremos a desenvolver a funcionalidade para trabalhar com o serviço de sinais MQL5.com - criaremos uma classe objeto-sinal.
Técnicas úteis e exóticas para a negociação automatizada
Neste artigo, eu demonstrarei algumas técnicas muito interessantes e úteis para a negociação automatizada. Algumas delas podem ser familiares para você. Eu tentarei cobrir os métodos mais interessantes e explicarei por que vale a pena usá-los. Além disso, eu mostrarei o que essas técnicas podem fazer na prática. Nós criaremos Expert Advisors e testaremos todas as técnicas descritas usando as cotações históricas.
Redes Neurais de Maneira Fácil (Parte 11): Uma visão sobre a GPT
Talvez um dos modelos mais avançados entre as redes neurais de linguagem atualmente existentes seja a GPT-3, cuja variante máxima contém 175 bilhões de parâmetros. Claro, nós não vamos criar tal monstro em nossos PCs domésticos. No entanto, nós podemos ver quais soluções arquitetônicas podem ser usadas em nosso trabalho e como nós podemos nos beneficiar delas.
Trabalhando com preços na biblioteca DoEasy (Parte 64): livro de ofertas, classes do objeto-instantâneo e objeto-série de instantâneos do livro de ofertas
Neste artigo, criaremos duas classes (a do objeto-instantânea do livro de ofertas e a do objeto-série dos instantâneos do livro de ofertas) e testaremos a criação de uma série de dados do livro de ofertas.
Algoritmo auto-adaptável (Parte IV): funcionalidade e testes adicionais
Continuo a complementar o algoritmo com a funcionalidade mínima necessária, vou fazer testes do que obtivemos como resultado. A lucratividade acabou sendo baixa, mas os artigos mostram um modelo que permite negociar com lucro de modo totalmente automático com base em instrumentos de negociação completamente diferentes, e não apenas diferentes, mas também operados em mercados fundamentalmente diferentes.
Trabalhando preços na biblioteca DoEasy (Parte 63): livro de ofertas, classe de ordem abstrata do livro de ofertas
Neste artigo, começaremos a desenvolver funcionalidades para trabalhar com o livro de ofertas. Criaremos uma classe de objeto para uma ordem abstrata do livro de ofertas e dos seus herdeiros.
Aplicação prática de redes neurais no trading (Parte 2). Visão computacional
O uso da visão computacional permite treinar redes neurais, usando uma representação visual do gráfico de preços e indicadores. Este método nos permite operar mais livremente com todo o conjunto de indicadores técnicos, uma vez que não requer feed digital para a rede neural.
Trabalhando com preços na biblioteca DoEasy (Parte 62): atualização em tempo real da série de ticks, preparação para trabalhar com o livro de ofertas
Neste artigo, atualizaremos em tempo real da coleção de dados de ticks e prepararemos a classe do objeto-símbolo para trabalhar com o livro de ofertas, cujo funcionamento abordaremos no próximo artigo.
Força bruta para encontrar padrões (Parte III): novos horizontes
Este artigo dá continuidade ao tópico sobre força bruta, trazendo novos recursos de análise de mercado para o algoritmo do meu programa e acelerando, assim, a velocidade da análise e a qualidade dos resultados finais, o que fornece a visão da mais alta qualidade de padrões globais dentro da estrutura desta abordagem.
Redes neurais de maneira fácil (Parte 10): Atenção Multi-Cabeça
Nós já consideramos anteriormente o mecanismo de self-attention (autoatenção) em redes neurais. Na prática, as arquiteturas de rede neural modernas usam várias threads de self-attention paralelas para encontrar várias dependências entre os elementos de uma sequência. Vamos considerar a implementação de tal abordagem e avaliar seu impacto no desempenho geral da rede.
Trabalhando com preços na biblioteca DoEasy (Parte 61): coleção de séries de ticks para símbolos
Visto que diferentes símbolos podem ser usados durante a operação do programa, é necessário criar uma lista própria para cada um deles. Hoje vamos combinar essas listas numa coleção de dados de ticks. Na verdade, irá tratar-se de uma lista normal baseada numa classe de array dinâmico de ponteiros para instâncias da classe CObject e seus herdeiros da Biblioteca Padrão.
Algoritmo auto-adaptável (Parte III): evitando a otimização
É impossível obter um algoritmo verdadeiramente estável se para a seleção de parâmetros com base em dados históricos for usada uma otimização. Um algoritmo estável em si deve saber que parâmetros são necessários para trabalhar com qualquer instrumento de negociação a qualquer momento. Ele não deve adivinhar, ele deve saber com certeza.
Busca de padrões sazonais no mercado de Forex usando o algoritmo CatBoost
O artigo considera a criação de modelos de aprendizado de máquina com filtros de tempo e discute a eficácia dessa abordagem. O fator humano pode ser eliminado agora simplesmente instruindo o modelo a negociar em uma determinada hora de um determinado dia da semana. A busca de padrões pode ser fornecida por um algoritmo separado.
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 mercado e a física de seus padrões globais
Neste artigo, eu tentarei testar a suposição de que qualquer sistema, mesmo com uma pequena compreensão do mercado, pode operar em escala global. Eu não inventarei nenhuma teoria ou padrão, mas apenas usarei de fatos conhecidos, traduzindo gradualmente esses fatos para a linguagem da análise matemática.
Desenvolvendo um algoritmo auto-adaptável (Parte II): melhorando a eficiência
Neste artigo, continuarei meu tópico, mas começarei tornando o algoritmo desenvolvido anteriormente mais flexível. Ele se tornou mais estável com o aumento no número de candles na janela de análise ou com o aumento no valor limite da porcentagem a nível de preponderância de candles decrescentes ou crescentes. Tivemos que fazer concessões e definir um tamanho de amostra maior para análise ou uma porcentagem maior de preponderância de candles prevalecentes.
Trabalhando com séries temporais na biblioteca DoEasy (Parte 59): objeto para armazenar dados de um tick
Com este artigo, vamos começar a criar a funcionalidade de biblioteca para trabalhar com dados de preços. Hoje vamos criar uma classe de objeto que armazenará todos os dados de preços recebidos no tick a seguir.
Redes Neurais de Maneira Fácil (Parte 9): Documentação do trabalho
Nós já percorremos um longo caminho e o código em nossa biblioteca está se tornando cada vez maior. Isso torna difícil controlar todas as conexões e dependências. Portanto, eu sugiro criar uma documentação para o código criado anteriormente e mantê-lo atualizado a cada nova etapa. A documentação devidamente preparada nos ajudará a ver a integridade do nosso trabalho.
Usando planilhas para construir estratégias de negociação
O artigo descreve os princípios básicos e abordagens que permitem analisar qualquer estratégia usando planilhas - Excel, Calc, Google. Os resultados também são comparados com os do testador do MetaTrader 5.
Desenvolvendo um algoritmo auto-adaptável (Parte I): encontrando um padrão básico
Numa série de artigos, mostrarei um exemplo de como desenvolver algoritmos auto-adaptativos que levam em consideração a maioria de fatores que surgem nos mercados, apresentarei como sistematizar essas situações, como descrevê-las de forma lógica e como considerá-las na hora de negociar. Vou começar com um algoritmo muito simples, que com o tempo irá ganhar teoria e evoluir para um projeto muito complexo.
Gradient boosting no aprendizado de máquina transdutivo e ativo
Neste artigo, nós consideraremos os métodos de aprendizado de máquina ativo que se baseiam em dados reais e discutiremos seus prós e contras. Talvez você considere esses métodos úteis e os inclua em seu arsenal de modelos de aprendizado de máquina. A transdução foi introduzida por Vladimir Vapnik, que é o coinventor da Support-Vector Machine (SVM).
Redes Neurais de Maneira Fácil (Parte 8): Mecanismos de Atenção
Nos artigos anteriores, nós já testamos várias opções para organizar as redes neurais. Nós também estudamos as redes convolucionais emprestadas dos algoritmos de processamento de imagem. Neste artigo, eu sugiro estudarmos os Mecanismos de Atenção, cujo surgimento deu impulso ao desenvolvimento dos modelos de linguagem.
Trabalhando com séries temporais na biblioteca DoEasy (Parte 58): séries temporais de dados de buffers de indicadores
No final do tópico sobre trabalho com séries temporais, realizaremos o armazenamento, a pesquisa e a classificação dos dados armazenados em buffers de indicadores, o que nos permitirá realizar análises posteriores com base nos valores dos indicadores criados assentes na biblioteca para nossos programas. O conceito geral por trás de todas as classes-coleções da biblioteca torna mais fácil encontrar os dados necessários na coleção correspondente, assim, o mesmo será possível na classe que será criada hoje.
WebSocket para MetaTrader 5
Antes do aparecimento das funções de rede na API MQL5 atualizada, os aplicativos MetaTrader eram limitados em sua capacidade de se conectar e interagir com serviços baseados no protocolo WebSocket. Agora a situação mudou. Neste artigo, veremos a implementação da biblioteca WebSocket em MQL5 puro. Uma breve descrição do protocolo WebSocket e um guia passo a passo sobre como usar a biblioteca resultante serão apresentados.