Discussão do artigo "Redes neurais em trading: Segmentação guiada (Conclusão)"

 

Novo artigo Redes neurais em trading: Segmentação guiada (Conclusão) foi publicado:

Damos continuidade ao trabalho iniciado no artigo anterior sobre a construção do framework RefMask3D utilizando MQL5. Esse framework foi desenvolvido para um estudo aprofundado da interação multimodal e da análise de características em nuvens de pontos, com posterior identificação do objeto-alvo com base em uma descrição fornecida em linguagem natural.

O treinamento dos modelos é realizado offline. No entanto, para manter a base de dados de treinamento atualizada, realizamos atualizações periódicas da amostra de treinamento, adicionando interações com base na política atual do Ator. As iterações entre treinamento dos modelos e atualização da base de dados são repetidas até que se atinja o desempenho desejado.

Durante a elaboração deste artigo, foi obtida uma política bastante interessante do Ator. Os resultados de seu teste com dados históricos de janeiro de 2024 são apresentados abaixo.

Percebe-se facilmente que o período de teste não faz parte da base de dados utilizada no treinamento. Essa abordagem de teste cria condições muito próximas do uso real do modelo.

Durante o período de teste, o modelo realizou 21 operações de trading, das quais 14 foram encerradas com lucro, o que representa mais de 66%. Vale destacar que a proporção de operações lucrativas supera a de perdas, tanto nas posições vendidas quanto nas compradas. Além disso, o lucro médio por operação vencedora foi duas vezes maior do que a perda média por operação perdedora. Um resultado similar é observado no caso da maior operação lucrativa, cuja rentabilidade se aproxima de três vezes o valor da maior operação com prejuízo. Ao mesmo tempo, o gráfico de balanço apresenta uma tendência claramente positiva.

Autor: Dmitriy Gizlyk

 

Olá, Dmitry. Recebi esse erro durante o treinamento:

2024.10.08 21:28:01.820 Study (EURUSD,H1)       RefMaskAct.nnw
2024.10.08 21:28:01.896 Study (EURUSD,H1)       RefMaskCrt.nnw
2024.10.08 22:48:49.440 Study (EURUSD,H1)       Train -> 294 -> Actor            0.0803357
2024.10.08 22:48:49.440 Study (EURUSD,H1)       Train -> 295 -> Critic           0.0005726
2024.10.08 22:48:49.440 Study (EURUSD,H1)       ExpertRemove() function called
2024.10.08 22:48:49.558 Study (EURUSD,H1)       14 undeleted dynamic objects found:
2024.10.08 22:48:49.558 Study (EURUSD,H1)          14 objects of class 'CBufferFloat'
2024.10.08 22:48:49.558 Study (EURUSD,H1)       19968 bytes of leaked memory found

O que isso significa?

A propósito, ao compilar, esses dois avisos aparecem:

Series.mqh                      
ArrayDouble.mqh                 
'NeuroNet.cl' as 'const string cl_program'                      1
deprecated behavior, hidden method calling will be disabled in a future MQL compiler version    NeuroNet.mqh    30478   22
deprecated behavior, hidden method calling will be disabled in a future MQL compiler version    NeuroNet.mqh    30700   22
code generated                  1
0 errors, 2 warnings, 6344 msec elapsed, cpu='X64 Regular'                      3

Os arquivos do artigo não foram alterados.

 

Excelente artigo. Vou fazer o download e tentar usá-lo neste fim de semana. Há duas coisas que o relatório de backtest não mostra: o par de moedas usado e o período de tempo. Você poderia fornecer essas informações ou fazer referência a um artigo anterior que as tenha identificado? Acabei de encontrar as respostas. É EURUSD e H1


Viktor, tive o mesmo erro de memorando sobre o comportamento obsoleto. No meu caso, eu estava desenvolvendo uma classe e, inadvertidamente, chamei uma função visível que não tinha um parâmetro, mas a classe continha os parâmetros corretos. Adicionar o parâmetro resolveu meu problema. O programa foi executado corretamente usando o comportamento obsoleto, e é por isso que é um erro de memorando.