MetaTrader 5 Strategy Tester: bugs, bugs, sugestões para melhorias - página 66

 
Sergey Golubev:
Ele é de um fórum chinês (também não entende inglês).
Na parte inglesa, nós (muitas vezes mas nem sempre) clicamos em editar no post, fazemos uma tradução automática do post da sua língua para inglês com o tradutor incorporado, depois clicamos em Actualizar post.

Mas isto não deve ser feito categoricamente; é muito prejudicial para os leitores. A iniciativa de mostrar é frequentemente punível.

 
Sergey Golubev:


Obrigado pela sua ajuda!
Vou tentar traduzir o meu post para russo utilizando o tradutor incorporado em mql5.com.
Esperemos que a sua qualidade seja fiável.
Afinal, compreendo um pouco de inglês, mas não compreendo nada de russo.
 
tickfenix :
Obrigado por toda a sua ajuda!
Vou tentar traduzir o meu post para russo utilizando o tradutor incorporado em mql5.com.
Esperemos que a sua qualidade seja fiável.
Afinal, compreendo um pouco de inglês, mas não compreendo nada de russo.

Depois um conselho: escreva-o na sua língua materna e abaixo - a sua tradução para inglês. Dessa forma será mais fácil para o leitor corrigir erros de tradução automática.

Depois conselhos: escreva na sua língua materna e abaixo - a sua tradução para inglês. Isto tornará mais fácil para o leitor corrigir erros de tradução automática.

 

2345 - partiu as caches de teste. O nome da EA (na imagem do ecrã antes dos pontos destacados) já não se encontra no nome dos ficheiros correspondentes.

Por esta razão, não é possível ver os resultados de optimizações anteriores utilizando ferramentas GUI - estão em falta na lista de selecção dropdown.


Há também zeros dentro dos ficheiros, em vez do nome da EA.

optar.


tst.


Cadeia de pesquisa: Oshibka 006.
 
fxsaber :



Z drive?

Também utiliza a ferramenta mklink do Windows para ligar a pasta de teste MT5 a uma pasta na RAM?

Poderá ser esta a causa dos estranhos erros que nos atormentam há tanto tempo?


Conduzir Z?

Está também a utilizar a ferramenta mklink do Windows para ligar a pasta de teste MT5 a uma pasta numa drive ram?

Poderá ser esta a razão dos estranhos erros que nos têm atormentado durante tanto tempo?

 
tickfenix:

Conduzir Z?

Está também a utilizar a ferramenta mklink do Windows para ligar a pasta de teste MT5 a uma pasta numa drive ram?

Poderá ser esta a razão dos estranhos erros que nos têm atormentado durante tanto tempo?

Fórum sobre negociação, sistemas de negociação automatizados e testador de estratégias

MetaTrader 5 Strategy Tester: bugs, bugs, sugestões para melhorias

fxsaber, 2019.09.16 14:11

Executo este ficheiro de lote na pasta Terminal uma vez depois de reiniciar o meu computador.

rem Создали RAM-Drive для Тестера.
imdisk -a -o awe -s 3 G -m Z: -p "/fs:ntfs /q /y /v:MT5Tester"

mkdir z:\Tester
mklink /j Tester z:\Tester

rem Кеш оптимизатора будет сохраняться на диске.
mkdir cache
mklink /j z:\Tester\cache cache

rem Временный RAM-Drive, чтобы на него можно было перенаправить log-папки.
imdisk -a -o awe -s 3 M -m Y: -p "/fs:ntfs /q /y /v:MT5Tester_Logs"

mkdir y:\logs
mklink /j Tester\logs y:\logs

mkdir y:\logs0
mkdir Tester\Agent-127.0.0.1-3000
mklink /j Tester\Agent-127.0.0.1-3000\logs y:\logs0

mkdir y:\logs1
mkdir Tester\Agent-127.0.0.1-3001
mklink /j Tester\Agent-127.0.0.1-3001\logs y:\logs1

mkdir y:\logs2
mkdir Tester\Agent-127.0.0.1-3002
mklink /j Tester\Agent-127.0.0.1-3002\logs y:\logs2

mkdir y:\logs3
mkdir Tester\Agent-127.0.0.1-3003
mklink /j Tester\Agent-127.0.0.1-3003\logs y:\logs3

mkdir y:\logs4
mkdir Tester\Agent-127.0.0.1-3004
mklink /j Tester\Agent-127.0.0.1-3004\logs y:\logs4

mkdir y:\logs5
mkdir Tester\Agent-127.0.0.1-3005
mklink /j Tester\Agent-127.0.0.1-3005\logs y:\logs5

mkdir y:\logs6
mkdir Tester\Agent-127.0.0.1-3006
mklink /j Tester\Agent-127.0.0.1-3006\logs y:\logs6

mkdir y:\logs7
mkdir Tester\Agent-127.0.0.1-3007
mklink /j Tester\Agent-127.0.0.1-3007\logs y:\logs7

rem Убили временный RAM-Drive
imdisk -D -m Y:


Depois disso, os ficheiros de registo não são criados. A olho nu, ainda não reparei em nenhum atraso do Testador. Parece ser uma boa solução.

Fórum sobre comércio, sistemas de comércio automatizados e testes estratégicos

Serviços. Já está a funcionar?

fxsaber, 2019.06.07 06:37

Escreveu um serviço útil
// Сервис проверяет наличие корректной папки Tester.
#property service

input string inFolderName = "Tester";

#include <WinAPI\fileapi.mqh>
#include <WinAPI\handleapi.mqh>

#define  GENERIC_WRITE                    0x40000000
#define  CREATE_ALWAYS                    2
#define  FILE_ATTRIBUTE_NORMAL            0x00000080
#define  FILE_FLAG_OVERLAPPED             0x40000000

bool FileIsInvalid_WinAPI( const string FileName )
{
  const HANDLE hFile = CreateFileW(FileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL);      
  const bool Res = (hFile != INVALID_HANDLE);
  
  if (Res)
  {
    CloseHandle(hFile);
    
    DeleteFileW(FileName);
  }
    
  return(Res);
}

void OnStart()
{
  const string FileName = TerminalInfoString(TERMINAL_PATH) + "\\" + inFolderName;

  if (!FileIsInvalid_WinAPI(FileName + "\\" + __FILE__))
    MessageBox(FileName + " is invalid!");  
}


Ao lançar o Terminal, um aviso aparece imediatamente se a pasta do Testador estiver em falta.


Grande ajuda se o Tester no RAMDrive estiver presente.

 

O seguinte insecto continua a aparecer. Quem tem o mesmo problema?

Depois de executar a genética, os resultados da optimização aparecem.

Poking nos resultados de optimização para cada resultado, executamos uma única execução deste resultado no testador para verificar a suavidade da curva, etc.

Depois de várias corridas de singulares a partir dos "resultados de optimização" exactos, a corrida única cai e só a sobrecarga do terminal ajuda, ou seja, a corrida única não arranca, o botão Start não reage (não há acção quando o pressiono). Ao mesmo tempo, no registo normal escreve algo como - passe (e há "número" por exemplo passe 14, passe 255, etc.) Já são 3 anos que estou farto, quando por vezes depois de 4-8 corridas com 1 resultado genético tenho de reiniciar o terminal, carregar novamente o histórico do resultado do teste e depois reiniciar as corridas a partir dele.

Qualquer pessoa pode reproduzir-se a partir do que eu recebo - Fazer genética, e espreitar os resultados genéticos para corridas únicas. Por vezes o testador falhará rapidamente e outras vezes falhará dezenas de vezes (mas com menos frequência).
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Askr:

Qualquer pessoa pode reproduzir-se a partir do que eu recebo - Fazer genética, e pesquisar os resultados genéticos de uma só corrida. Por vezes o testador falha rapidamente e outras vezes falha dezenas de vezes (mas com menos frequência).

Trabalho muito com o testador. Mas não me lembro de tal comportamento.

 
Askr :


Sou também um utilizador frequente de testadores de estratégias.

Não me deparei com a situação que mencionou.

O problema que encontrei foi que, na maioria dos casos, não consegui obter os resultados correctos dos testes da tarefa de optimização.

No entanto, todos os testes individuais estão correctos.

Isto não tem nada a ver com optimização genética ou optimização total, a maioria das tarefas de optimização apenas devolvem resultados ridículos.

Provavelmente relacionado com algum mecanismo de gestão de cache ou mecanismo de gestão de memória, o testador de estratégia teve um ou mais erros graves na função de optimização a começar antes da versão 2280.



Sou também um utilizador frequente de testadores de estratégias.

Também ainda não me deparei com a situação que mencionou.

O problema com que me deparei foi que, na maioria dos casos, não consegui obter os resultados certos dos testes da tarefa de optimização.

No entanto, todos os testes individuais estão correctos.

Não tem nada a ver com optimização genética ou optimização total, a maioria das tarefas de optimização apenas devolvem resultados ridículos.

Possivelmente relacionado com algum tipo de mecanismo de gestão de cache ou mecanismo de gestão de memória, começando com uma versão anterior a 2280, o testador de estratégia tinha um ou mais bugs sérios na funcionalidade de optimização.

 

Re-teste agora em cima da hora e vou escrever um pouco mais sobre o assunto. Eu próprio não testei grandes volumes durante muito tempo.

Talvez as últimas versões sejam mais estáveis, não consegui encontrá-la, na versão antiga (2085) suficientemente depressa repetida. O verdadeiro início não está completamente parado, apenas em algumas linhas, os resultados do teste não começaram de forma alguma.

Mais uma vez, não é bem o problema que escrevi acima, mas como uma opção.

Por exemplo, obtive as seguintes informações sobre o build 2085.

Alguém consegue decifrar o que está escrito no diário de bordo do agente?

Compreendi que o problema pode estar com agentes.

1 попытка

2020.03.02 21:37:50.947 Core 1  connection closed
2020.03.02 21:37:53.773 Tester  single pass 7043 started
2020.03.02 21:37:53.799 Core 1  connecting to 127.0.0.1:3002
2020.03.02 21:37:53.800 Core 1  connected
2020.03.02 21:37:53.803 Core 1  disconnected
2020.03.02 21:37:53.803 Core 1  connection closed

журнал агента

2020.03.02 21:37:53.802 Network additional connect from 127.0.0.1
2020.03.02 21:37:53.910 Network previous connect context not freed
2020.03.02 21:37:53.910 127.0.0.1       cannot accept connect, agent is busy
2020.03.02 21:37:55.524 127.0.0.1       prepare for shutdown

2 попытка


то же что и в 1 попыткен/убралось/.

журнал агента

2020.03.02 21:40:07.936 Network additional connect from 127.0.0.1
2020.03.02 21:40:08.044 Network previous connect context not freed
2020.03.02 21:40:08.044 127.0.0.1       cannot accept connect, agent is busy
2020.03.02 21:40:09.925 127.0.0.1       prepare for shutdown

Sim, é esse o caso dos registos.

    2020.03.02 21:58:24.589	Core 1	connection closed
2020.03.02 21:58:28.488	Core 1	connecting to 127.0.0.1:3000
2020.03.02 21:58:28.489	Core 1	connected
2020.03.02 21:58:28.491	Core 1	disconnected
2020.03.02 21:58:28.492	Core 1	connection closed
2020.03.02 21:58:30.090	Core 1	connecting to 127.0.0.1:3000
2020.03.02 21:58:30.091	Core 1	connected
2020.03.02 21:58:30.095	Core 1	disconnected
2020.03.02 21:58:30.095	Core 1	connection closed

2020.03.02 21:58:24.503 Tester  EURUSD,H1: 24313 ticks, 6171 bars generated. Test passed in 0:00:00.112.
2020.03.02 21:58:24.503 Tester  242 Mb memory used including 1.41 Mb of history data, 64 Mb of tick data
2020.03.02 21:58:24.503 Tester  log file "C:\***************\20200302.log" written
2020.03.02 21:58:24.503         test Experts\***************.ex5 on EURUSD,H1 thread finished
2020.03.02 21:58:28.491 Network additional connect from 127.0.0.1
2020.03.02 21:58:28.599 Network previous connect context not freed
2020.03.02 21:58:28.599 127.0.0.1       cannot accept connect, agent is busy
2020.03.02 21:58:30.095 Network additional connect from 127.0.0.1
2020.03.02 21:58:30.203 Network previous connect context not freed
2020.03.02 21:58:30.203 127.0.0.1       cannot accept connect, agent is busy
2020.03.02 21:58:30.493 127.0.0.1       prepare for shutdown

Escrevi aqui há pouco sobre o problema:

https://www.mql5.com/ru/forum/1111/page2485#comment_12092720

https://www.mql5.com/ru/forum/1111/page2486#comment_12118579

https://www.mql5.com/ru/forum/315556/page3#comment_12072667

https://www.mql5.com/ru/forum/1111/page2483#comment_12072438

https://www.mql5.com/ru/forum/315556/page12#comment_12342692 por 2093 construir

Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2019.06.17
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы