Discussão do artigo "Otimização Walk Forward Contínua (parte 5): Panorama do Projeto Otimizador Automático e Criação da Interface Gráfica"
O que fazer e como otimizar?
No artigo nº 4 - instruções sobre como otimizar
- www.mql5.com
Andrei, qual é a maneira correta de preencher os campos "APPEND_BOT_PARAM"? Todos os parâmetros do Expert Advisor devem ser inseridos ali ou somente aqueles que precisam ser otimizados no momento?
Todos os parâmetros do Expert Advisor devem ser inseridos nesse campo.
E por que eles devem ser preenchidos no código do Expert Advisor, quando estão disponíveis na janela principal do "Metatrader Auto Optimiser"?
A questão é que, na janela principal do Metatrader Auto Optimiser, esses parâmetros são retirados do arquivo (*set) gerado pelo terminal. Mas nos relatórios de otimização, onde os parâmetros do robô também são salvos, os parâmetros são gravados pelo próprio robô no momento da geração do relatório. Se você não inserir esses parâmetros, em primeiro lugar, o otimizador automático não poderá executar um teste em otimizações que já tenham sido feitas anteriormente, pois para executar os testes ele usa os parâmetros dos arquivos do relatório de otimização, que, como escrevi acima, são gerados pelo próprio robô no final do processo de otimização. Em segundo lugar, haverá problemas no processo de otimização, pois, depois de selecionar a passagem de acordo com os critérios selecionados, não será possível executar o teste porque ele não encontrará os parâmetros do robô com os quais o teste deve ser executado. Ou melhor, o teste provavelmente será iniciado, mas não será iniciado com os parâmetros esperados.
Provavelmente, é aconselhável usar opções alternativas comprovadas para obter essas informações.
Provavelmente, é aconselhável usar opções alternativas comprovadas para obter essas informações.
Você pode sugerir algumas alternativas? A questão é que o próprio robô gera o relatório, e eu decidi não usar o upload padrão que o terminal faz porque eu queria adicionar mais dados ao relatório. Em princípio, isso é feito uma vez, não a cada otimização, portanto, não acho que deva ser muito difícil, mas se houver uma maneira mais conveniente, estou pronto para ajustar o código.
Você pode sugerir variantes? A questão é que o próprio robô gera o relatório, mas eu decidi não usar o upload padrão que o terminal faz porque eu queria adicionar mais dados ao relatório. Em princípio, isso é feito uma vez, não a cada otimização, portanto, não acho que deva ser muito difícil, mas se houver uma maneira mais conveniente, estou pronto para ajustar o código.
No KB MTTester.mqh, onde você pode obter todas as configurações do EA a qualquer momento. Bem, e extrair conjuntos dos resultados da otimização - também.
Na KB MTTester.mqh, onde você pode obter todas as configurações do EA a qualquer momento. Bem, e também é possível extrair conjuntos dos resultados da otimização.
Bem, eu não preciso extrair conjuntos, ele conta tudo sozinho, mas agradeço pelo mecanismo de automação do recebimento de configurações, vou estudá-lo quando quiser e tentar implementá-lo na nova versão.
Sugerir variantes?
Bem, e como opção: conecte minimamente os quadros ao Expert Advisor e use FrameInputs().
Bem, e como opção: conecte minimamente os quadros ao Expert Advisor e use FrameInputs().
Eu não gostaria de usar quadros, mas agradeço seu conselho. Usando a variante atual, apenas uma classe é conectada ao Expert Advisor, enquanto os quadros são um mecanismo completo com um conjunto de métodos para trabalhar com eles. Além disso, pelo que me lembro, eles suportam apenas tipos de dados primitivos, e eu queria salvar estruturas em arquivos, por isso decidi usar a marcação xml.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Otimização Walk Forward Contínua (parte 5): Panorama do Projeto Otimizador Automático e Criação da Interface Gráfica foi publicado:
Este artigo fornece uma descrição mais detalhada da otimização walk-forward na plataforma MetaTrader 5. Nos artigos anteriores, nós consideramos os métodos para gerar e filtrar o relatório de otimização e começar a analisar a estrutura interna do aplicativo responsável pelo processo de otimização. O Otimizador Automático é implementado como uma aplicação em C# e possui sua própria interface gráfica. O quinto artigo é dedicado à criação dessa interface gráfica.
Vamos para a interface gráfica. Anteriormente, nós consideramos um método para criar um complemento para a MetaTrader 5 na linguagem C# e maneiras de combinar suas funções com um Expert Advisor usando uma DLL e o retorno de chamada da OnTimer. Na implementação atual, o otimizador automático será implementado fora da plataforma. Agora, ele é executado como um gerenciador de otimizações externo e imita o trabalho de um trader que lança as otimizações e processa os resultados. Além disso, evitando otimizações simultâneas em várias plataformas executando no mesmo computador e implementando o otimizador automático como um aplicativo separado, nós podemos acessar absolutamente todos as plataformas que estão instalados no computador, incluindo o computador em que o otimizador está sendo executado. Este computador não pôde ser usado no projeto anterior.
É por isso que o projeto atual não é implementado inteiramente como uma DLL, mas agora ele é dividido em uma DLL e um arquivo executável do projeto otimizador automático.
Como pode ser visto na captura de tela acima, a janela do projeto consiste em um Cabeçalho, um Rodapé e um TabControl com duas guias: Settings e Reports. A parte do cabeçalho e o rodapé da janela não são alterados, independentemente da guia selecionada na parte central, proporcionando fácil acesso a todos os elementos de controle localizados nessas partes.
Autor: Andrey Azatskiy