Terminal MT5 atualizado hoje e a janela "Otimização" não aparece durante o teste - página 21

 

O Service Desk admitiu um erro de desligamento de uma otimização antecipada.

Eles disseram que iriam consertá-lo.

Aguardando.

 
Сергей Таболин:

Observo que os negócios são marcados em cores diferentes.

Talvez fosse melhor colorir os negócios lucrativos e perdedores para torná-los mais claros.


Não, não devemos. É claro a partir do vetor e da cor se é lucrativo ou não.

 
Сергей Таболин:

Não, o que o ***???

Por que porra alguém decidiria que com esta relação, a otimização deveria ser interrompida?

Por favor, observe seu vocabulário.

 
Сергей Таболин:

Sinto muito.

Bem, o que mais você chamaria isso?

É como aquela piada: "Bem, então OH... ** **** **** "

 
Сергей Таболин:

Não, o que o ***???

Por que diabos alguém decidiria que a otimização deveria ser abortada a esta proporção?

Eu lhe chamei a atenção para o fato de que os jogos com saída maciça de INIT_PARAMETERS_INCORRECT em genética são perigosos .

Você apenas mata a própria idéia de seleção genética, dá 502 falhas em 512 tentativas e nemsabe o que está fazendo. Você quer continuar com a genética deixando 10 indivíduos para procriar??

Leia artigos sobre algoritmos genéticos e pare de usar INIT_PARAMETERS_INCORRECT em genética:

 
Сергей Таболин:

Então, o que você quer fazer?

Eu o recomendo para a genética:

  1. Leia mais sobre a mecânica da enumeração genética
  2. Escolha uma função de alvo suficientemente suave para permitir que o algoritmo veja melhorias em gerações e siga em frente. Não engane o algoritmo com resultados falsos. O algoritmo genético é uma coisa bastante delicada e sensível.
  3. Não mate mais de um quarto da população por passagem pelo INIT_PARAMETERS_INCORRECT (uso em casos críticos, ou melhor, não usar em absoluto). Um quarto é uma estimativa aproximada e de forma alguma uma recomendação ou permissão para fazê-lo.
  4. Os parâmetros a serem executados devem estar operacionais ao longo de todo o intervalo. Não faça furos intencionalmente nos parâmetros pesquisados, para que você não gere INIT_PARAMETERS_INCORRETO. Você está fazendo isso apenas para sua própria conveniência, não para pensar no processo de força bruta
Sim, você precisa reorganizar a lógica de parâmetros para adequá-la ao processo de força bruta e ao método de busca utilizado, não à sua própria conveniência.
 
Renat Fatkhullin:

Eu o recomendo para a genética:

  1. Leia sobre a mecânica da enumeração genética
  2. Escolha uma função de alvo suficientemente suave para permitir que o algoritmo veja melhorias em gerações e siga em frente. Não engane o algoritmo com resultados falsos. O algoritmo genético é uma coisa bastante delicada e sensível.
  3. Não mate mais de um quarto da população por passagem pelo INIT_PARAMETERS_INCORRECT (use em casos críticos, ou melhor, não use em absoluto). Um quarto é uma estimativa aproximada e de forma alguma uma recomendação ou permissão para fazê-lo.
  4. Os parâmetros a serem executados devem estar funcionando durante todo o intervalo. Não faça furos intencionalmente nos parâmetros pesquisados, para que você não gere INIT_PARAMETERS_INCORRETO. Você está fazendo isso apenas para sua própria conveniência, e não pense no processo de força bruta.
Sim, você precisa reorganizar a lógica de parâmetros para adequá-la ao processo de força bruta e ao método de busca utilizado, não à sua própria conveniência.

A genética não precisa de lógica variável? Quero dizer, podemos pegar 100 variáveis (com uma faixa de valores diferente) e fazer 4 delas e dá-lo à genética? Sim, poderíamos, mas o princípio seria violado, teríamos total aleatoriedade e genética não funcional. Então, como você se propõe a fazer sem INIT_PARAMETERS_INCORRECT, quando a verificação da variável é usada apenas para excluir valores ilógicos de variáveis em conjunto com outros valores de variáveis ou para excluir intervalos de enumeração? Estou realmente curioso, você pode fazer muito trabalho manual para numerar valores, excluindo variáveis, mas não é eficiente! Como fazer isso de forma eficiente?

 
Aleksey Vyazmikin:

A genética não precisa de lógica variável? Quero dizer, podemos pegar 100 variáveis (com uma faixa de valores diferente) e fazer 4 delas e dá-lo à genética? Sim, podemos, mas o princípio seria violado, obteríamos completa aleatoriedade e genética não-funcional. Então, como você se propõe a fazer sem INIT_PARAMETERS_INCORRECT, quando a verificação da variável é usada apenas para excluir valores ilógicos de variáveis em conjunto com outros valores de variáveis ou para excluir intervalos de enumeração? Estou realmente curioso, você pode fazer muito trabalho manual para numerar valores, excluindo variáveis, mas não é eficiente! Como torná-lo eficiente?

Eu não sei de onde você tirou sua pergunta.

Eu disse sensata e deliberadamente escolha seus parâmetros e não use INIT_PARAMETERS_INCORRECT quando você tiver pegado um instrumento muito delicado. Você deve lavar as mãos antes de usar um microscópio, e não lutar pelo direito de fazer o que quiser quando entrar em um ambiente estéril. O poder da genética não pode ser arruinado por uma atitude descuidada - você simplesmente não terá os resultados que deseja. Você acha que a magia de reduzir a área de busca por ordens NN de magnitude é dada para nada? Nos mesmos termos que um excesso total de sujeira?

Um completo mal-entendido dos princípios foi demonstrado acima. Matar 502 indivíduos em uma população de 512 e depois culpar a colônia por estar morta e não querer reproduzir-se mais.

O que e como você escolhe como parâmetros é seu próprio negócio. Mas meu negócio é apontar a pureza mínima dos experimentos, se você cometer erros deliberados.

Leia a teoria, finalmente.

 
Сергей Таболин:

Não há nada que você possa fazer para reconfigurá-lo. Serão necessários meses de trabalho para prescrever manualmente todos os parâmetros admissíveis. E você tem que descobrir como passar tudo isso para o otimizador. É mais fácil se matar.

Mas se a primeira população deu resultado zero, quão difícil é construir um novo? É claro que é mais fácil cortar a otimização e dizer que não há nada para reproduzir, do que responder por parâmetros não trabalhistas e reconstruir uma população que seja viável...

Você não deveria ter removido o mais importante: você acha que a magia de reduzir a área de busca por ordens NN de magnitude é dada para nada? Nos mesmos termos que um completo excesso de sujeira?

Recomendo aprender e ouvir aqueles que gastam seu tempo ajudando você.

Especialmente quando se trata de um dos desenvolvedores diretos.

 
Renat Fatkhullin:

Eu não sei de onde você tirou sua pergunta.

Eu disse: escolha os parâmetros com sabedoria e deliberadamente e não use INIT_PARAMETERS_INCORRECT quando você tiver pegado uma ferramenta muito delicada. As mãos devem ser lavadas antes de usar um microscópio, e para lutar pelo direito de fazer o que quiser quando se entra em um ambiente estéril. O poder da genética não pode ser arruinado por uma atitude descuidada - você simplesmente não terá o resultado que deseja. Você acha que a magia de reduzir a área de busca por ordens NN de magnitude é dada para nada? Nas mesmas condições que um excesso total?

Um completo mal-entendido dos princípios foi demonstrado acima. Matar 502 indivíduos em uma população de 512 e depois culpar a colônia por estar morta e não querer reproduzir-se mais.

O que e como você escolhe como parâmetros é seu próprio negócio. Mas meu negócio é apontar que um mínimo de pureza de experimentação deve ser observado se você cometer erros deliberados.

Leia a teoria, finalmente.

A questão é que o INIT_PARAMETERS_INCORRECT é freqüentemente usado para restringir a área de busca eliminando valores ilógicos/desnecessários, o que acelera significativamente a otimização quando se usa força bruta total. Se não houvesse INIT_PARAMETERS_INCORRECT, então a genética simplesmente se depararia com variantes desnecessárias e mexeria com elas, portanto não excluir valores de variáveis não é uma opção. Então é isso que eu estou perguntando, como você sugere, como profissional, resolver este problema sem muito esforço. Enumerar manualmente todas as variáveis corretas, para enumeração sem lacunas e excluir conscientemente os valores INIT_PARAMETERS_INCORRECT não é uma opção - muito longa. O uso de contadores inteligentes não é para todos e também pode prejudicar a genética.

Então o que fazer, passar todos os parâmetros em 1 dia e escrever seus valores corretos em código, atribuir um número ordinal, e assim selecioná-los para a genética?

Razão: