Erros, bugs, perguntas - página 1883

 

Teste repetido para velocidade de elevação da cache de gráficos CopyXXX por funções no último lançamento de 1596 em comparação com a discussão anterior: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Descrição da condição
MetaTrader 4 construir 1065
MetaTrader 5 x64 construir 1580
construir 1596
Hardware e Sistema Operacional
Windows 10 Pro x64, Intel Xeon E5-2690 v3 @ 2.60GHz, RAM: 32GB, SSD Disco
Servidor comercial
MetaQuotes-Demo
MetaQuotes-Demo
Barras de limite nos gráficos em cenários
10 000
10 000
Barras de limite na história em cenários 10 000 000
Sem limite
Número real de barras no EURUSD, M1
3,382 milhões
6,538 milhões
Símbolo e período verificados
EURUSD, M1
Gráficos abertos
GBPUSD, M1 apenas, o guião também é atirado sobre ele
Os resultados são frios, após o início do terminal
#0 pass, 1000 records in 680 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 113497 msc
#1 pass, 1000 records in 3 msc
#2 pass, 1000 records in 3 msc
#0 pass, 1000 records in 18288 msc
#1 pass, 1000 records in 7 msc
#2 pass, 1000 records in 2 msc
Os resultados são quentes, segunda corrida imediatamente após a primeira
#0 pass, 1000 records in 13 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 14 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 13 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc

Os guiões de teste estão anexados no comentário da fonte.

O tempo para levantar do disco do gráfico (6,5 milhões de barras no disco, 10.000 barras foram levantadas e 1.000 últimas barras foram solicitadas, arranque a frio) foi reduzido de 113 para 18 milissegundos. Os pedidos subsequentes já foram executados em 2 microssegundos.
 
Renat Fatkhullin:

Teste repetido para velocidade de elevação da cache de gráficos CopyXXX por funções no último lançamento de 1596 em comparação com a discussão anterior: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Descrição da condição
MetaTrader 4 construir 1065
MetaTrader 5 x64 construir 1580
construir 1596
Hardware e Sistema Operacional
Windows 10 Pro x64, Intel Xeon E5-2690 v3 @ 2.60GHz, RAM: 32GB, SSD Disco
Servidor comercial
MetaQuotes-Demo
MetaQuotes-Demo
Barras de limite nos gráficos em cenários
10 000
10 000
Barras de limite na história em cenários 10 000 000
Sem limite
Número real de barras no EURUSD, M1
3,382 milhões
6,538 milhões
Símbolo e período verificados
EURUSD, M1
Gráficos abertos
GBPUSD, M1 apenas, o guião também é atirado sobre ele
Os resultados são frios, após o início do terminal
Os resultados são quentes, segunda corrida imediatamente após a primeira

Os guiões de teste estão anexados no comentário da fonte.

O tempo para levantar do disco do gráfico (6,5 milhões de barras no disco, 10.000 barras foram levantadas e 1.000 últimas barras foram solicitadas, arranque a frio) foi reduzido de 113 para 18 milissegundos. Os pedidos subsequentes já foram executados em 2 microssegundos.

Muito bem!
 
Renat Fatkhullin:

Um re-teste da velocidade da cache de gráficos CopyXXX na última versão de 1596 em comparação com a última discussão: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Melhor refazer no SymbolsTotal.
 
fxsaber:
É melhor mudá-lo para SymbolsTotal.

CopyTicks não é assíncrono em scripts e Expert Advisors. De facto, neste caso, não podemos falar estritamente sobre a assincronia destas funções. Nos indicadores CopyXXX as funções funcionam no modo "produzir o que é ao mesmo tempo sem demora, e em paralelo definir o modo de troca de fundo".

MQL_MEMORY_USED não mente, porque mostra 1 Mb de memória usada. O programa em si tem apenas MqlTick Ticks[] para 2000 elementos, o que dá 52 bytes * 2000 = ~100 kb de dados. Além disso, os restantes pequenos dados somam-se a cerca de um megabyte. E o arredondamento para megabyte não deve ser esquecido.

As caches levantadas pertencem ao terminal, não ao programa MQL5.
 
Renat Fatkhullin:

CopyTicks não é assíncrono em scripts e EAs.

Esse código em SD é parsed, porque nem tudo é liso.

Quis dizer que seria bom verificar as funções de cópia não num só símbolo, mas em todos os símbolos do Market Watch.

 

Servidor comercial Alpari-MT5

Porque é que na história dos símbolos FOREX existem carraças duplicadas (lance e pergunte são iguais)?

O testador persegue EAs por duplicados, e há metade deles. É necessário obter a redução de desempenho correspondente para metade?

 
Por favor adicione também o modo de visualização "Posições" ao relatório de execução única do testador MT5.
 
Comentários não relevantes para este tópico foram movidos para "FAQ sobre o serviço de Sinais".
 

Não sei como reproduzi-la, mas já a encontrei várias vezes em 1598.

Começo a depurar em CTRL+F5. Chego ao DebugBreak e demoro o meu tempo a olhar para valores variáveis, sonhando com algo. E passado algum tempo o Visualizador "Não responde" e depois o editor "Não responde". Tenho de o matar através do TaskManager.

 
fxsaber:

Não sei como reproduzi-la, mas já a encontrei várias vezes em 1598.

Começo a depurar em CTRL+F5. Chego ao DebugBreak e demoro o meu tempo a olhar para valores variáveis, sonhando com algo. E passado algum tempo o Visualizador "Não responde" e depois o editor "Não responde". Tenho de o matar através do TaskManager.

Teremos de resolver o problema.