MT5 и скорость в боевом исполнении - страница 55

 
fxsaber:

Задача заставить Терминал принудительно освободить память.

проверил свои предположения

не освобождает память, вернее не освобождает полностью сразу память - освободит память под локальную переменную - класс/структура , а в памяти терминала будет копия тиков 


запускал распринтовку памяти через каждые Sleep(1000) - ВСЕГДА после 9-го слипа память освобождается, т.е. это искусственное ограничение на хранение тиков в терминале, а не в ЕА

судя по всему никак - только если разработчики логику хранения этих данных переделают

 
fxsaber:
Пример советника, который убьет большинство VPS.

Запустил на MetaQuotes-Demo на Атомном планшете с 4Gb памяти - результат:

2020.10.13 22:43:51.219 0018 (USDJPY,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 1747129
2020.10.13 22:43:51.294 0018 (USDJPY,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 913
2020.10.13 22:43:51.995 0018 (EURUSD,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 1976814
2020.10.13 22:43:52.071 0018 (EURUSD,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 1335
2020.10.13 22:43:53.415 0018 (AUDUSD,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 1964168
2020.10.13 22:43:53.452 0018 (AUDUSD,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 1465
2020.10.13 22:43:54.554 0018 (CHFJPY,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 1784317
2020.10.13 22:43:54.607 0018 (CHFJPY,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 1483
2020.10.13 22:43:56.546 0018 (EURNZD,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 2729847
2020.10.13 22:43:56.611 0018 (EURNZD,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 1483
2020.10.13 22:43:58.199 0018 (EURJPY,H1)        CopyTicksRange(_Symbol,Ticks,COPY_TICKS_ALL,(long)inFrom*1000) = 2288326
2020.10.13 22:43:58.278 0018 (EURJPY,H1)        TerminalInfoInteger(TERMINAL_MEMORY_USED) = 1484

Никакой катастрофы не произошло - Opera с несколькими вкладками и то дольше дольше загружается.

Что я делаю не так?

 
A100:

Запустил на MetaQuotes-Demo на Атомном планшете с 4Gb памяти - результат:

Никакой катастрофы не произошло - Opera с несколькими вкладками и то дольше дольше загружается.

Что я делаю не так?

Мало тиков. Посмотрите на количество в моих логах.

 
fxsaber:

Мало тиков. Посмотрите на количество в моих логах.

Какая то странная функция CopyTicksRange - увеличил в разы период запроса, а тиков не прибавляется и ошибки не возвращает, GetLastError ноль после запроса

 

Поставил период запроса с 01.06.20 - в итоге после перезагрузки планшета и соответственно терминала получился такой результат (оставил для вывода только значимую информацию):

2020.10.14 04:03:31.203 0018 (EURGBP,H1)        Тиков=6855538, Памяти=2202
2020.10.14 04:03:35.271 0018 (EURCHF,H1)        Тиков=6385392, Памяти=2225
2020.10.14 04:03:41.031 0018 (EURAUD,H1)        Тиков=9317261, Памяти=2916
2020.10.14 04:03:44.068 0018 (CHFJPY,H1)        Тиков=6586851, Памяти=2528
2020.10.14 04:03:47.109 0018 (AUDUSD,H1)        Тиков=6214303, Памяти=2157
2020.10.14 04:03:50.634 0018 (EURUSD,H1)        Тиков=6946988, Памяти=2157
Число тиков сопоставимо
 
Поставил период с 01.01.20, Sleep(15000). Результат:
2020.10.14 04:21:30.297 0018 (EURGBP,H1)        Тиков=17354722, Памяти=6523
2020.10.14 04:21:40.916 0018 (AUDUSD,H1)        Тиков=13644101, Памяти=6525
2020.10.14 04:21:57.025 0018 (EURAUD,H1)        Тиков=21763832, Памяти=5520
2020.10.14 04:22:08.628 0018 (CHFJPY,H1)        Тиков=16150733, Памяти=4729
2020.10.14 04:22:19.463 0018 (EURUSD,H1)        Тиков=18471813, Памяти=3462
2020.10.14 04:22:29.411 0018 (EURCHF,H1)        Тиков=16227930, Памяти=2514

Напомню - памяти у меня 4Gb всего включая видеопамять, т.е. реально свободно только 3.9-1.7        а тут требуется 6.5 только на задачу - и все медленно, но работает!

 

Для массовой работы с тиками ставьте больше памяти.

4 гб (цена 20 евро) - это никуда не годится в 2020 году, если речь идет об аналитике и исследованиях.

 

Выпустили бету 2652, из важного:

  • исправления в Watch List выражениях отладчика
  • улучшено прерывание компиляции (на 22%)
  • кардинальное ускорение доступа к SymbolInfoTick 
  • улучшения в отчете профайлера
  • запрет торговли при запуске в тестере экспертов, основанных на фреймах
  • починили сброс параметров при нажатии кнопки "Сброс" в параметрах индикатора "Ichimoku Kinko Hyo"

 
Renat Fatkhullin:

Выпустили бету 2652, из важного:

  • исправления в Watch List выражениях отладчика
  • улучшено прерывание компиляции (на 22%)
  • кардинальное ускорение доступа к SymbolInfoTick 
  • улучшения в отчете профайлера
  • запрет торговли при запуске в тестере экспертов, основанных на фреймах
  • починили сброс параметров при нажатии кнопки "Сброс" в параметрах индикатора "Ichimoku Kinko Hyo"

Предопределённые переменные, для текущего тика, наверно было бы лучше.


 
Господа прогеры...
Почитайте сначала про распределение памяти в компе, затем как и какими средствами осуществляется, затем как чистить и читать от и до не составит труда. По кр. мере возможны более обоснованные предложения разработчикам
Причина обращения: