Otimizar vários ativos ao mesmo tempo

 
Olá! Fiz um robô que opera até 30 ativos (olhando a janela de observação), contudo, só consigo otimizá-lo em um ativo por vez... Alguém sabe tem idéia de como fazer o rodar vários ativos no mesmo teste?
 
igorlpmartins:
Olá! Fiz um robô que opera até 30 ativos (olhando a janela de observação), contudo, só consigo otimizá-lo em um ativo por vez... Alguém sabe tem idéia de como fazer o rodar vários ativos no mesmo teste?

Sim Igor,

rodar ao mesmo tempo eu não sei, mas rodar 30 vezes otimizador (obviamente um para cada ativo) é possível, basta escrever .BAT (processamento em lote do DOS) para executar o MT5.



 
Olá Igor, 
As versões mais antigas do MT5 realmente não permitiam otimizar vários ativos em paralelo.
Mas se você selecionar corretamente o tipo de otimização na janela de opções de backtesting para ser com múltiplos instrumentos, definidos na janela de observação se mercado, irá conseguir fazer isso.
Porém recomendo selecionar poucos ativos para fazer testes pois isso irá sobrecarregar o processamento da plataforma, e seu custo, se estiver utilizando os recursos de otimização em cloud.
Sds.
Rogério Figurelli
 
Rogerio Figurelli:
Olá Igor, 
As versões mais antigas do MT5 realmente não permitiam otimizar vários ativos em paralelo.
Mas se você selecionar corretamente o tipo de otimização na janela de opções de backtesting para ser com múltiplos instrumentos, definidos na janela de observação se mercado, irá conseguir fazer isso.
Porém recomendo selecionar poucos ativos para fazer testes pois isso irá sobrecarregar o processamento da plataforma, e seu custo, se estiver utilizando os recursos de otimização em cloud.
Sds.
Rogério Figurelli

Rogério,

A versão atual permite o backtest de vários ativos ao mesmo tempo, não a otimização (Testar uma configuração em vários papéis não me basta! Preciso achar a configuração ótima para vários papéis...).  

 
igorlpmartins:

Rogério,

A versão atual permite o backtest de vários ativos ao mesmo tempo, não a otimização (Testar uma configuração em vários papéis não me basta! Preciso achar a configuração ótima para vários papéis...).  

Olá Igor,
Na verdade, se levarmos ao pé da letra da palavra otimização, a não ser que você utilize a opção de "Algoritmo Completo Lento", provavelmente nem mesmo a otimização com um único ativo levará você ao resultado ótimo.
Dessa forma, pelo entendimento de sua pergunta inicial, considerei apenas que a otimização seria feita através de seleção de parâmetros de entrada entre os 30 backtestings, um para cada ativo, que na prática também é um processo de otimização, uma vez que você pode comparar a perfomance de todos ativos na janela de Resultados de Otimização.
Note que o MetaTrader nomeia todas essas opções de Otimização, como título do campo de seleção.
Mas se essa otimização não é suficiente para você, e já tinha descartado essa opção, como está mais claro agora, e deseja obter múltiplas configurações para múltiplos ativos, nesse caso o que recomendo é alterar seu EA para ter um campo de entrada com o ativo a ser selecionado, usando com uma lista compatível com a janela de observação de mercado.
Dessa forma, o efeito será similar, porém com múltiplos backtestings, de múltiplos ativos, e não apenas um backtesting por ativo, levando a uma otimização mais completa.
E, o mais importante, sem ter que fazer isso ativo a ativo, o que para 30 deles, seria um esforço muito grande, sujeito a diversos riscos de automação por comandos/lote, e ainda perdendo o recurso de usar a própria plataforma para comparar a performance entre eles.
Sds.,
Rogério Figurelli

 
Igor Martins:

Rogério,

A versão atual permite o backtest de vários ativos ao mesmo tempo, não a otimização (Testar uma configuração em vários papéis não me basta! Preciso achar a configuração ótima para vários papéis...).  

To precisando exatamente disso, você conseguiu, igor?

 

Boa tarde!

Dentro do ambiente de backtest, utilizado na otimização, a janela de "observação de mercado" exibe apenas um símbolo: o símbolo selecionado no início do procedimento. Por isso não é possível coletar os nomes dos ativos através desse recurso dentro desse ambiente. 

Contudo é possível acessar os dados de outros ativos se você inserir o nome deles dentro do código. Por exemplo num array que armazenará o nome dos 30 ativos e, em vez de monitorar a janela de observação, utilizar o array.

Espero ter contribuído,

Daniela Reis.

Razão: