Заметил, что MqlTradeRequest имеет приличный зарезервированный размер (112 байт, что замечательно). Сразу подумал о https://www.mql5.com/ru/forum/90051, никто из компании так и не ответил. Почему бы не вкрутить
ENUM_STOPPRICE_TYPE
ENUM_STOPPRICE_DEFAULT = 0
ENUM_STOPPRICE_BID
ENUM_STOPPRICE_ASK
ENUM_STOPPRICE_LAST
Это не будет ломать обратную совместимость, а для вас - несколько строк кода в серверной части (ну какая разница какую цену брать для проверки активации). sl это также касается.
ЗЫ: для тех, кто кинется называть меня идиотом (а такие наверняка будут) - активация != исполнение.
Поддерживаю. Неоднократно уже об этом говорилось. В ответ только крутили пальцем у виска. В лучшем случае указывали на то, что это можно реализовать программно (при помощи рыночного ордера).
Как Вы это представляете в тестере? Как узнать, важность, если нет информации об истории?
Нет, параметр нужный и важный, который в большей степени нужен для экономии вычислительных ресурсов.
Всё просто: если советник запрашивает исторические данные, то их и нужно загружать в память (за тот период, который запрашивается). Собственно МТ5 так и работает в обычных условиях (не тестере). А данный параметр - это рудимент, доставшийся от МТ4.
Alexey Navoykov: Всё просто: если советник запрашивает исторические данные, то их и нужно загружать в память (за тот период, который запрашивается). Собственно МТ5 так и работает в обычных условиях (не тестере). А данный параметр - это рудимент, доставшийся от МТ4.
История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.
История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.
Речь не только о запросе с сервера, но и с диска. В оперативной памяти хранится только то, что используется. Лишнее выгружается. Поэтому и в тестере надо чтоб работало так же.
Подключен к MQ-Demo. 1978 говорит, что он актуальный
2019.02.0209:02:31.142 Terminal MetaTrader 5 x64 build 1978 started (MetaQuotes Software Corp.)
...
2019.02.0209:02:56.895 LiveUpdate check for beta version2019.02.0209:02:56.953 LiveUpdate you are using the latest version
PH 011:40:35.073 Tester genetic optimization finished on pass 9216 (of 30240000)
FI 011:40:35.563 Statistics optimization done in 1 minutes 51 seconds
JP 011:40:35.563 Statistics shortest pass 0:00:00.014, longest pass 0:00:01.329, average pass 0:00:00.177
II 011:40:35.563 Statistics local 3891 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)
Из 30 миллионов вариантов сделано меньше 4К, что длилось меньше двух минут. Как увеличить точность ГА? Лучше бы 2 часа считал, но выдал более объективный результат.
Заметил, что MqlTradeRequest имеет приличный зарезервированный размер (112 байт, что замечательно). Сразу подумал о https://www.mql5.com/ru/forum/90051, никто из компании так и не ответил. Почему бы не вкрутить
Это не будет ломать обратную совместимость, а для вас - несколько строк кода в серверной части (ну какая разница какую цену брать для проверки активации). sl это также касается.
ЗЫ: для тех, кто кинется называть меня идиотом (а такие наверняка будут) - активация != исполнение.
Поддерживаю. Неоднократно уже об этом говорилось. В ответ только крутили пальцем у виска. В лучшем случае указывали на то, что это можно реализовать программно (при помощи рыночного ордера).
Как Вы это представляете в тестере? Как узнать, важность, если нет информации об истории?
Нет, параметр нужный и важный, который в большей степени нужен для экономии вычислительных ресурсов.
Всё просто: если советник запрашивает исторические данные, то их и нужно загружать в память (за тот период, который запрашивается). Собственно МТ5 так и работает в обычных условиях (не тестере). А данный параметр - это рудимент, доставшийся от МТ4.
История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.
История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.
Отлично. Значит отложу на время свой код. А потом (скоро) он будет сразу работать на новой функции ArrayRemove!
Build 1980. ArrayRemove заработала.
Результат:
Подключен к MQ-Demo. 1978 говорит, что он актуальный
Из 30 миллионов вариантов сделано меньше 4К, что длилось меньше двух минут. Как увеличить точность ГА? Лучше бы 2 часа считал, но выдал более объективный результат.
В MT4 такого же не происходит.