Discussão do artigo "Desenvolvendo um EA multimoeda (Parte 23): Colocando em ordem o pipeline de etapas da otimização automática de projetos (II)"

 

Novo artigo Desenvolvendo um EA multimoeda (Parte 23): Colocando em ordem o pipeline de etapas da otimização automática de projetos (II) foi publicado:

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.

Vamos começar implementando mudanças há muito necessárias na estrutura de arquivos do projeto. Atualmente, todos eles estão em uma única pasta, o que facilita a transferência e o uso do código em um novo projeto. Porém, durante o desenvolvimento contínuo, acabamos com várias pastas de projetos quase idênticas para diferentes estratégias de trading, e cada uma precisa ser atualizada separadamente.

Por isso, vamos dividir todo o código em uma biblioteca, que será comum a todos os projetos, e em um projeto, que conterá o código específico de cada um. Em seguida, vamos implementar a verificação para que, se durante a execução do EA final surgirem novos grupos de estratégias, ele consiga carregar os parâmetros atualizados corretamente e continuar funcionando. Como de costume, começaremos simulando o comportamento desejado no EA executado no testador de estratégias.

Se os resultados forem satisfatórios, poderemos avançar para usar isso em EAs finais fora do testador. O que precisamos para isso? Na parte anterior, não implementamos o salvamento, no banco de dados do especialista, das informações sobre as datas de término do intervalo de otimização e de finalização da execução do pipeline de otimização.

Agora, precisaremos dessas informações; caso contrário, durante uma execução no testador, o EA final não conseguirá entender se um determinado grupo de estratégias já foi formado em uma data simulada específica ou não. Também será necessário adaptar o EA final para que ele consiga se reiniciar quando houver novos grupos de estratégias em seu banco de dados. Atualmente, essa funcionalidade simplesmente não existe. Seria útil, pelo menos, ter alguma forma de exibir informações sobre o grupo atual de estratégias de trading para verificarmos claramente a troca de um grupo para outro.

O ideal seria visualizar essas informações diretamente no gráfico em que o EA está em execução, mas também é possível usar a saída normal no log do terminal.


Autor: Yuriy Bykov