Constrói mais de 660 HD com arquivos de log e velocidade de otimização mais lenta - página 3

 

O diretório de arquivos de log está sempre lá no diretório /tester, pode ser que o seu esteja na pasta UserData já que estou usando o MT4 no modo /portável.

Sim, você pode iniciar o testador via linha de comando, mas isso não ajuda em nada, o registro é feito internamente no programa desde a construção do 670, não há como desligá-lo por uma linha de comando.

Redirecionar a saída para o NUL não tem nada a ver com o registro interno. Tudo o que sua idéia faria é redirecionar a saída de uma caixa de comando para nul (a saída de texto real que é). Para uma aplicação com uma GUI como a MT4 que não faz absolutamente nada.

 

Mais diversão com os troncos!



 

hmm - um dos meus brokes atualizados para b765 - pode ser que esta versão tenha perdido esta 'característica'?

Usar um powerhell script que apaga imediatamente todos os arquivos de log em sua pasta a tempo?

NÃO TESTADO!!

$path = "C:\Program Files\MetaTrader\tester\logs"   #  correct path?
while($true) {                                      #  endless loop switch off manually!!
    $files = Get-ChildItem -Path $path |  Where-Object {-not $_.PsIsContainer -and $_.name -like "*.log"}
    foreach ($file in $files) {                     #  Folder are excluded
       Remove-Item $file.FullName -Force -ErrorAction SilentlyContinue  
    }
    Start-Sleep -s 60                               #  sleep 60 seconds 
}
 
OK, vou dar uma olhada na B765. Como dito, os arquivos de registro são bloqueados pelo metatrader.exe enquanto ele roda, não é possível apagá-los sem primeiro fechar o terminal, o que cancelaria a otimização real.
 

Por isso:

Remove-Item $file.FullName -ErrorAction SilentlyContinue  

Os arquivos que não puderam ser removidos são 'Silenciosamente[...]' contornados e excluídos na próxima vez.

Acho que você pode remover -Force (assim eu fiz).

 
Mas "a próxima vez" é para atrasar, como isso significaria depois de um reinício de terminal (uma vez que os arquivos são desbloqueados), nesse caso o HD já estaria cheio (o que é meu problema real). A "força" também não funciona, eu tentei, mas como eu disse, os arquivos são bloqueados pela Metatrader até que o Terminal seja desligado e seu script falhe.
 

NÃO! da próxima vez significava depois dos 60 segundos de sono! Eu não o escrevi??

A cada minuto o roteiro procura logs a serem apagados!

Como - meu palpite - um teste só bloqueia 1 arquivo de log, o previamente criado pode ser apagado - mas tente você mesmo.

Eu não posso, pois não tenho nada para otimizar agora...

 
mt4user2000:

O que você quer dizer? Estou falando dos logs de cada SL que ocorreram durante a otimização para cada passo da otimização. Eu já os coloquei, então o que é necessário interpretar de forma diferente neles? Ele mostra claramente o que ele registra e que na verdade não é o problema, o problema é que ele registra enquanto não deveria durante a otimização, uma vez que ele desorganiza o disco rígido.

Você não está lendo os posts de outras pessoas.

Eu postei meus logs dos quais você pode ver que estou usando stoploss e que o stoploss está sendo acionado pelo sistema. Também declarei sob o que construí que fiz testes.
Mas vocês estão fazendo as mesmas perguntas já respondidas.

E, ao mesmo tempo, você está publicando grandes logs que não contêm informações.

mt4user2000:

E eu poderia sugerir que você aprendesse como realmente encontrar logs? X postagens longas você está me dizendo "não, não há nada registrado" no build 670 e 745 e agora de repente você diz que ele também registra em seu sistema? LOL

Já lhe disse que este comportamento é de alguma forma desencadeado e que obviamente precisa de algum outro fator além da otimização genética para mostrar.

Mas é mais fácil e conveniente escrever LOL LOL LOL do que ler e tentar entender.

Além disso, qual é o seu problema? Remova o SL e saia das negociações com OrderClose().

Por sua escrita, é óbvio que você está ciente de que a MQ não se importa com este ou qualquer outro bug menor.

 

graziani,

esta não é a solução mais adequada, mas você poderia tentar negar o metatrader.exe de escrever para o diretório de log editando as ACL's no diretório de log.

cuidado: só faça isso quando souber o que está fazendo.

saudações

 

graziani: desculpe, não comentarei mais sobre seus posts.

gooly: sim, eu sei o que você quer dizer, mas ainda não é possível apagar os arquivos de registro, eles estão bloqueados e não funciona assim. Basta tentar você mesmo.

ics-mq4: isto é algo que eu também tentei e funciona, mas, infelizmente, retarda a otimização por um fator de 10. Muito provavelmente porque o Metatrader está sendo bombardeado com erros, pois não consegue escrever no diretório e tenta novamente algumas vezes antes de desistir. Outro truque também é apagar o diretório de "logs" e criar um arquivo com o mesmo nome, neste caso o Metatrader não pode mais criar o diretório de "logs" também. Mas o mesmo acontece nesse caso, uma grande desaceleração da otimização.