Discussão do artigo "Otimização paralela pelo método de enxame de partículas (Particle Swarm Optimization)" - página 2

 
Экспериментальный статус MT5Bridge.mqh означает, что его работоспособность широко не проверялась. Это исследование из разряда Proof Of the Concept. Используйте исходный код для отладки и исправления ошибок.
Um dos aplicativos.
Библиотеки: BestInterval
Библиотеки: BestInterval
  • 2020.08.15
  • www.mql5.com
Статьи и техническая библиотека по автоматическому трейдингу: Библиотеки: BestInterval
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Обсуждение статьи "Параллельная оптимизация методом роя частиц (Particle Swarm Optimization)"

Stanislav Korotky, 2020.08.24 10:45

Estou anexando um arquivo de cabeçalho ligeiramente modificado e um exemplo de um EA de teste. A classe Settings, os functores auxiliares e os manipuladores de eventos modelados foram adicionados ao arquivo ParticleSwarmEmbed.mqh. Supõe-se que o usuário esteja satisfeito com a implementação padrão. Então, o código do Expert Advisor ExprBotPSOEmbed.mq5 é bastante simplificado. É suficiente descrever seu cálculo de negociação e encaminhar os manipuladores para a classe PPSO_EventHandlers. As variáveis de entrada também contêm os fatores de ajuste da dinâmica do PSO (inércia, etc.), bem como a desativação dos arquivos de índice.

 

Olá, ótimo tópico, infelizmente, ao tentar conectar todas as peças, o compilador ainda gera erros:

Parece que, devido a alguma atualização, isso não é possível agora? Se você pudesse dar uma olhada nisso, seria ótimo.

 
Tobias Johannes Zimmer #:

Olá, ótimo tópico, infelizmente, ao tentar conectar todas as peças, o compilador ainda gera erros:

O erro de compilação do vetor e da posição pertencem um ao outro, pois a posição é uma matriz das dimensões (graus de liberdade/entradas) que poderia ser inserida no método calculate, mas, devido a alguma atualização, isso não é possível agora? E então a matriz positions[] não pode ser convertida em um positionValue... se você pudesse dar uma olhada nisso, seria ótimo.

Depois, há coisas sobre o worker functor em que não tenho a menor ideia do que parece ser o problema.

Espero que haja uma maneira fácil de corrigir isso. Se não houver, eu entenderia perfeitamente se você preferir não fazer isso.

Basta fazer uma substituição de contexto de "vector" para "_vector" em ParticleSwarmParallel.mqh ou/e ParticleSwarmEmbed.mqh.

A MQL5 introduziu o tipo vector desde a publicação, o que quebrou muitos códigos-fonte em que o identificador vector já havia sido usado.

 
Stanislav Korotky #:

Basta fazer uma substituição de contexto de "vector" para "_vector" em ParticleSwarmParallel.mqh ou/e ParticleSwarmEmbed.mqh.

A MQL5 introduziu o tipo vector desde a publicação, o que quebrou muitos códigos-fonte em que o identificador vector já havia sido usado.

Ah, é claro que vetor não deveria ser um tipo... obrigado, isso funciona.
 
não pode ser convertido em enum
 
dustovshio #:
não é possível converter em enum

MT4Orders e Virtual são bibliotecas de terceiros. Você deve verificar as versões mais recentes em suas páginas na base de código.

 
Stanislav Korotky #:

MT4Orders e Virtual são bibliotecas de terceiros. Você deve verificar as versões mais recentes em suas páginas na base de código.

Fiz o download da última versão do MT4Orders e ela foi compilada, mas agora apresenta esse erro depois que carrego os arquivos de conjunto do PSO. Não há erro no modo de otimização padrão. É possível alterar as datas de otimização para a última barra em vez do último dia?



 
dustovshio #:

Fiz o download do último MT4Orders e ele foi compilado, mas agora apresenta esse erro depois que carrego os arquivos de conjunto do PSO. Não há erro no modo de otimização padrão. É possível alterar as datas de otimização para a última barra em vez do último dia?

Se estiver perguntando sobre o erro "parâmetros de entrada incorretos", você pode clicar duas vezes na tabela de otimização na passagem que apresenta o erro e obter o registro de passagem única para obter uma descrição detalhada do que está errado. Além disso, você não forneceu informações sobre qual EA e com quais configurações tentou executar.

Eu já lhe disse que a limitação do último dia é imposta pelo próprio testador.