![Construindo uma rede neural profunda do zero em linguagem MQL](https://c.mql5.com/2/49/Programming-a-Deep-Neural-Network-from-Scratch-using-MQL-Language_600x314.jpg)
Construindo uma rede neural profunda do zero em linguagem MQL
Neste artigo, vou apresentar a vocês uma rede neural profunda implementada em linguagem MQL com suas diferentes funções de ativação, entre elas estão a função tangente hiperbólica para as camadas ocultas e a função Softmax para a camada de saída. Avançaremos do primeiro passo até o final para formar completamente a rede neural profunda.
![Trabalhando com o tempo (Parte 2): funções](https://c.mql5.com/2/49/Dealing-with-Time-bPart-2g-The-Functions_600x314.jpg)
Trabalhando com o tempo (Parte 2): funções
Vamos aprender a reconhecer automaticamente as diferenças de tempo junto à corretora, bem como o Tempo Médio de Greenwich. Em vez de preguntar à corretora, que provavelmente dará uma resposta imprecisa (e quem quer explicar onde está o horário de negociação?), seremos nós mesmos a ver a que horas ela recebe as cotações nas semanas em que os fusos horários são trocados. Mas é claro que não vamos fazer isso manualmente, deixaremos o software fazer o trabalho por nós.
![Conjunto de ferramentas para marcação manual de gráficos e negociação (Parte III). Otimização e novas ferramentas](https://c.mql5.com/2/49/9914_manual_charting_trading_toolkit_003_600x314.jpg)
Conjunto de ferramentas para marcação manual de gráficos e negociação (Parte III). Otimização e novas ferramentas
Desenvolveremos o tema do desenho de objetos gráficos em gráficos usando atalhos de teclado. Foram acrescentadas novas ferramentas à biblioteca, em particular uma linha reta, que atravessa máximos arbitrários, e um conjunto de retângulos que permitem estimar tanto o nível quanto o tempo de reversão. Também veremos a possibilidade de otimizar o código para melhorar o desempenho. O exemplo de implementação será reescrito como um indicador, o que tornará possível definir Shortcuts junto com outros programas de negociação. O nível de proficiência do código está um pouco acima do nível de iniciante.
![Desenvolvendo um EA de negociação do zero](https://c.mql5.com/2/44/Robozinho.png)
![Desenvolvendo um EA de negociação do zero](https://c.mql5.com/i/articles/overlay.png)
Desenvolvendo um EA de negociação do zero
Entenda como se dá o desenvolvimento de um EA para negociação programando o mínimo possível.
![Use canais e bate-papos em grupo da MQL5.community](https://c.mql5.com/2/43/chats.png)
![Use canais e bate-papos em grupo da MQL5.community](https://c.mql5.com/i/articles/overlay.png)
Use canais e bate-papos em grupo da MQL5.community
O site MQL5.com reúne traders de todo o mundo que publicam artigos, códigos e produtos gratuitos no Mercado, desenvolvem projetos para outros usuários no serviço Freelance e copiam sinais de negociação. Você pode se comunicar com eles no fórum, nos bate-papos para traders e nos canais MetaTrader.
![Explorando as possibilidades de criar gráficos de velas multicoloridas](https://c.mql5.com/2/49/Exploring-options-for-creating-multicolored-candlesticks_600x314.jpg)
Explorando as possibilidades de criar gráficos de velas multicoloridas
Neste artigo, veremos as possibilidades de criação de indicadores de velas personalizados, e falaremos sobre suas vantagens e desvantagens.
![Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5](https://c.mql5.com/2/43/Article_image.png)
![Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5](https://c.mql5.com/i/articles/overlay.png)
Como se tornar um bom programador (Parte 2): mais cinco hábitos que devem ser abandonados para programar melhor em MQL5
Este artigo é uma leitura obrigatória destinada a todos que desejam melhorar sua carreira como programadores. O objetivo desta série de artigos é ajudar o leitor, incluindo experientes, a melhorar suas habilidades de programação. As ideias descritas são aplicáveis tanto a programadores iniciantes em MQL5 quanto a profissionais.
![Padrões com exemplos (Parte I): Topo múltiplo](https://c.mql5.com/2/42/gdij.png)
![Padrões com exemplos (Parte I): Topo múltiplo](https://c.mql5.com/i/articles/overlay.png)
Padrões com exemplos (Parte I): Topo múltiplo
Com este artigo começamos um ciclo em que consideraremos padrões de reversão no âmbito da negociação algorítmica. Iniciamos examinando a primeira e mais interessante família de padrões desse tipo que se originam dos chamados topo duplo e fundo duplo.
![Swaps (Parte I): bloqueio e posições sintéticas](https://c.mql5.com/2/42/33201.png)
![Swaps (Parte I): bloqueio e posições sintéticas](https://c.mql5.com/i/articles/overlay.png)
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.
![Scalping combinado: trades do passado ou melhoria do desempenho dos trades futuros](https://c.mql5.com/2/42/logo_01.png)
![Scalping combinado: trades do passado ou melhoria do desempenho dos trades futuros](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/49/Neural_networks_made_easy_003_600x314.jpg)
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.
![Padrão de design MVC e a possibilidade de usá-lo](https://c.mql5.com/2/42/MVC.png)
![Padrão de design MVC e a possibilidade de usá-lo](https://c.mql5.com/i/articles/overlay.png)
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).
![Força bruta para encontrar padrões (Parte IV): funcionalidade mínima](https://c.mql5.com/2/49/Brute_force_approach_to_pattern_search_004_600x314.jpg)
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?](https://c.mql5.com/2/49/8826_ml_grid_martingale_600x314.jpg)
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](https://c.mql5.com/2/49/Neural_networks_made_easy_002_600x314.jpg)
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](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__4.png)
![Outras classes na biblioteca DoEasy (Parte 66): classe-coleção de Sinais MQL5.com](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__3.png)
![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](https://c.mql5.com/i/articles/overlay.png)
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.
![Redes Neurais de Maneira Fácil (Parte 11): Uma visão sobre a GPT](https://c.mql5.com/2/49/Neural_networks_made_easy_001_600x314.jpg)
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](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__2.png)
![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](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/41/50_percents__4.png)
![Algoritmo auto-adaptável (Parte IV): funcionalidade e testes adicionais](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__1.png)
![Trabalhando preços na biblioteca DoEasy (Parte 63): livro de ofertas, classe de ordem abstrata do livro de ofertas](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/49/Practical_application_of_neural_networks_in_trading_001_600x314.jpg)
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](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library.png)
![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](https://c.mql5.com/i/articles/overlay.png)
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.
![Redes neurais de maneira fácil (Parte 10): Atenção Multi-Cabeça](https://c.mql5.com/2/49/Neural_Networks_Easy_009_600x314.jpg)
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](https://c.mql5.com/2/41/MQL5-avatar-doeasy-library__5.png)
![Trabalhando com preços na biblioteca DoEasy (Parte 61): coleção de séries de ticks para símbolos](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/41/50_percents__3.png)
![Algoritmo auto-adaptável (Parte III): evitando a otimização](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/49/finding_seasonal_patterns_catboost_600x314.jpg)
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.
![O mercado e a física de seus padrões globais](https://c.mql5.com/2/40/5a55ed9f370f2c15608b457b.png)
![O mercado e a física de seus padrões globais](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/41/50_percents__2.png)
![Desenvolvendo um algoritmo auto-adaptável (Parte II): melhorando a eficiência](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/41/MQL5-avatar-doeasy-library__3.png)
![Trabalhando com séries temporais na biblioteca DoEasy (Parte 59): objeto para armazenar dados de um tick](https://c.mql5.com/i/articles/overlay.png)
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.
![Desenvolvendo um algoritmo auto-adaptável (Parte I): encontrando um padrão básico](https://c.mql5.com/2/41/50_percents__1.png)
![Desenvolvendo um algoritmo auto-adaptável (Parte I): encontrando um padrão básico](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/49/gradient_boosting_catboost_ml_600x314.jpg)
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).
![Reamostragem avançada e seleção de modelos CatBoost pelo método de força bruta](https://c.mql5.com/2/49/Advanced-resampling-and-selection-of-CatBoost-models-by-brute-force-method_600x314.jpg)
Reamostragem avançada e seleção de modelos CatBoost pelo método de força bruta
Este artigo descreve uma das possíveis abordagens para a transformação de dados com o objetivo de melhorar a generalização do modelo, ele também discute a amostragem e seleção dos modelos CatBoost.
![Algoritmo de aprendizado de máquina CatBoost da Yandex sem conhecimento prévio de Python ou R](https://c.mql5.com/2/49/CatBoost-machine-learning-algorithm-from-Yandex-with-no-Python-or-R-knowledge-required_600x314.jpg)
Algoritmo de aprendizado de máquina CatBoost da Yandex sem conhecimento prévio de Python ou R
O artigo fornece o código e a descrição das principais etapas do processo de aprendizado de máquina usando um exemplo específico. Para obter o modelo, você não precisa de conhecimento prévio em Python ou R. Além disso, um conhecimento básico de MQL5 já é suficiente — este é exatamente o meu nível. Portanto, eu espero que o artigo sirva como um bom tutorial para um público amplo, auxiliando os interessados em avaliar os recursos de aprendizado de máquina e implementá-lo em seus programas.
![Trabalhando com séries temporais na biblioteca DoEasy (Parte 56): objeto de indicador personalizado, obtenção de dados a partir de objetos-indicadores numa coleção](https://c.mql5.com/2/49/doeasy_056_600x314.jpg)
Trabalhando com séries temporais na biblioteca DoEasy (Parte 56): objeto de indicador personalizado, obtenção de dados a partir de objetos-indicadores numa coleção
Neste artigo, veremos a criação de um objeto de indicador personalizado para ser usado em Expert Advisors. Vamos modificar ligeiramente as classes da biblioteca e escrever métodos para receber dados desde objetos-indicadores em Expert Advisors.
![Exemplos de análise de gráficos usando o TD Sequential e os níveis de Murray-Gann](https://c.mql5.com/2/41/steps.png)
![Exemplos de análise de gráficos usando o TD Sequential e os níveis de Murray-Gann](https://c.mql5.com/i/articles/overlay.png)
Exemplos de análise de gráficos usando o TD Sequential e os níveis de Murray-Gann
O TD Sequential mostra perfeitamente as mudanças no equilíbrio durante o movimento do preço. Isso é especialmente evidente se usarmos seus sinais juntamente com um indicador de nível, como com os níveis de Murray. Este artigo falará sobre essa combinação. O texto é destinado principalmente a iniciantes e àqueles que ainda não conseguiram encontrar seu "Graal", embora eu mostre alguns recursos de construção de níveis que não vi em outros fóruns. Sendo assim, algumas partes podem ser úteis também para usuários avançados. Por outra parte, quanto aos gurus, eu os convido ao diálogo e à crítica...
![Aplicação prática de redes neurais no trading. Python (Parte I)](https://c.mql5.com/2/49/Practical_application_of_neural_networks_in_trading_003_600x314.jpg)
Aplicação prática de redes neurais no trading. Python (Parte I)
Neste artigo, analisaremos passo a passo a implementação de um sistema de negociação baseado na programação de redes neurais profundas em Python. Para isso, usaremos a biblioteca de aprendizado de máquina TensorFlow desenvolvida pelo Google. Para descrever as redes neurais, iremos por em uso a biblioteca Keras.
![Abordagem ideal para desenvolver e analisar sistemas de negociação](https://c.mql5.com/2/40/optimal-approach.png)
![Abordagem ideal para desenvolver e analisar sistemas de negociação](https://c.mql5.com/i/articles/overlay.png)
Abordagem ideal para desenvolver e analisar sistemas de negociação
Neste artigo, além de tentar apresentar que critérios usar ao escolher um sistema ou sinal para investir seu dinheiro, aventurar-me-ei a mostrar qual é a melhor abordagem para desenvolver sistemas de negociação, e explicar por que isso é tão importante ao operar moedas.
![Redes Neurais de Maneira Fácil(Parte 7): Métodos de otimização adaptativos](https://c.mql5.com/2/49/Neural_Networks_Easy_007_600x314.jpg)
Redes Neurais de Maneira Fácil(Parte 7): Métodos de otimização adaptativos
Nos artigos anteriores, nós usamos o gradiente descendente estocástico para treinar uma rede neural usando a mesma taxa de aprendizado para todos os neurônios da rede. Neste artigo, eu proponho olhar para os métodos de aprendizagem adaptativos que permitem a mudança da taxa de aprendizagem para cada neurônio. Nós também consideraremos os prós e os contras dessa abordagem.
![Gradient Boosting (CatBoost) no desenvolvimento de sistemas de negociação. Uma abordagem ingênua](https://c.mql5.com/2/49/finding_seasonal_patterns_catboost_600x314.jpg)
Gradient Boosting (CatBoost) no desenvolvimento de sistemas de negociação. Uma abordagem ingênua
Treinamento do classificador CatBoost em Python e exportação do modelo para a mql5, bem como a análise dos parâmetros do modelo e um testador de estratégia customizado. A linguagem Python e a biblioteca MetaTrader 5 são usadas para preparar os dados e treinar o modelo.