Новая версия платформы MetaTrader 5 build 3390: Float в OpenCL и математических функциях, методы активации и потерь для машинного обучения - страница 15

 

спасибо но вообще-то если уж вы оформляете символы двумя кавычками "0" то логичнее и заполнитель так оформлять

а вот почему

timeFST=m_ticks[i].time_msc; StringOut=TimeToString(timeFST,TIME_SECONDS);    StringOut= "" ;   не нравятся микросекунды и все тут?

а вот если TimeToString((datetime) (timeFST/1000),TIME_SECONDS) то все секунды появляются

 
IuriiPrugov #:
спасибо но вообще-то если уж вы оформляете символы двумя кавычками "0" то логичнее и заполнитель так оформлять

В двойных кавычках - строка. В одинарных кавычках - одиночный символ.

"0" и '0' - это разные типы данных. У них даже длина различается.

 
IuriiPrugov #:

спасибо но вообще-то если уж вы оформляете символы двумя кавычками "0" то логичнее и заполнитель так оформлять

а вот почему

timeFST=m_ticks[i].time_msc; StringOut=TimeToString(timeFST,TIME_SECONDS);    StringOut= "" ;   не нравятся микросекунды и все тут?

а вот если TimeToString((datetime) (timeFST/1000),TIME_SECONDS) то все секунды появляются

//+------------------------------------------------------------------+
//| Возвращает время с миллисекундами                                |
//+------------------------------------------------------------------+
string TimeMSCtoString(const long time_msc,int flags=TIME_DATE|TIME_MINUTES|TIME_SECONDS)
  {
   return TimeToString(time_msc/1000,flags)+"."+IntegerToString(time_msc%1000,3,'0');
  }
//+------------------------------------------------------------------+
 
Artyom Trishkin #:

да это давно известно,спасибо,а вот почему если напрямую TimeToString( m_ticks[i].time_msc ,TIME_SECONDS);  то StringOut= "" ;

должна быть какая-то ошибка тогда. и если заполнитель оформлять   "0" то тоже компилятор что-то выдавать должен(ошибку видимо) а он хавает

 

IuriiPrugov #:

и если заполнитель оформлять   "0" то тоже компилятор что-то выдавать должен(ошибку видимо) а он хавает

Не хавает. Выдает предупреждение: "implicit conversion from 'string' to 'number' "

 
Текущий билд работает медленнее древнего.

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

Оцениваем ядра CPU для оптимизации

Aleksey Vyazmikin, 2022.09.03 00:52

Всё подтвердилось:

Tree_Brut_TestPL
=========Bild 3391=============
2022.09.02 14:54:28.854 Core 7  pass 0 returned result 1001000.000000 in 0:02:07.655
2022.09.02 14:54:30.138 Core 1  pass 3 returned result 1001000.000000 in 0:02:08.747
2022.09.02 14:54:32.681 Core 8  pass 2 returned result 1001000.000000 in 0:02:11.375
2022.09.02 14:54:32.873 Core 5  pass 7 returned result 1001000.000000 in 0:02:11.345
2022.09.02 14:54:35.063 Core 4  pass 5 returned result 1001000.000000 in 0:02:13.573
2022.09.02 14:54:36.126 Core 3  pass 1 returned result 1001000.000000 in 0:02:14.866
2022.09.02 14:54:36.540 Core 2  pass 4 returned result 1001000.000000 in 0:02:15.169
2022.09.02 14:54:36.973 Core 6  pass 6 returned result 1001000.000000 in 0:02:15.449
2022.09.02 14:54:36.973 Tester  optimization finished, total passes 8
2022.09.02 14:54:36.983 Statistics      optimization done in 2 minutes 16 seconds
2022.09.02 14:54:36.983 Statistics      shortest pass 0:02:07.655, longest pass 0:02:15.449, average pass 0:02:12.272
2022.09.02 14:54:36.983 Statistics      8000 frames (3.14 Mb total, 412 bytes per frame) received
2022.09.02 14:54:36.983 Statistics      local 8 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)
2022.09.02 14:54:37.033 Tester  8 new records saved to cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt'

=========Bild 2097=============
2022.09.03 01:37:53.989 Tester  optimization finished, total passes 8
2022.09.03 01:37:53.999 Statistics      optimization done in 2 minutes 12 seconds
2022.09.03 01:37:53.999 Statistics      shortest pass 0:02:09.669, longest pass 0:02:11.374, average pass 0:02:10.513
2022.09.03 01:37:53.999 Statistics      8000 frames (3.14 Mb total, 412 bytes per frame) received
2022.09.03 01:37:53.999 Statistics      local 8 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)
2022.09.03 01:37:54.004 Tester  8 new records saved to cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt'
 
fxsaber #:
Текущий билд работает медленнее древнего.

Еще на тему производительности. Сильное замедление при включении Hyper-Threading.

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

Оцениваем ядра CPU для оптимизации

Dmitriy Shal, 2022.09.03 01:19

R9 32 прохода на 2 тесте на 16 агентах делает в среднем за 35 сек за проход, а на 32 агентах за 183 сек, я перепроверил, могу логи выложить, кто не верит.

Исходники для воспроизведения в ветке.

 

Недавно хвалил, что наконец стали хорошо раздавать задачи агентам, и вот опять - остается у меня 10 проходов, каждый пусть по минуте (чуть больше, но для лучшего счета), их обрабатывает два агента, а остальные - пусть, сто, стоят без дала. Получается, что мы ждем лишние 4 минуты, в сутки у меня 200 таких запусков оптимизации, получается 4*200=800 минут простоя, что составляет 55% потери времени в сутки! Ну куда это годиться, почему нельзя отдать эти задания другим агентам, ведь логируется время прохода, известно среднее время - и если ждать больше минуты лишней - ну дайте другим агентам работу!

Всё это в режиме полного  перебора - не генетика.

 
MetaQuotes #:

Спасибо, проверим и исправим.

Обязательно отключите в Windows Defender каталог с исполнимыми файлами терминала в таком случае. Он постоянно тормозит запуск и может из-за таймаутов привести к повторному запуску процессов.

Исправили таймауты и контроль большого количества процессов тестера в билде 3419. Обновитесь на бету, пожалуйста.

Совет про исключение проверки тестера в Windows Defender тоже в силе. Иначе скорость запуска процессов тестера резко замедляется.

 

В инвест-режиме недоступен просмотр Сигналов из Терминала.

Наверное, так не должно быть. Смотреть и подписываться - разные вещи.