MQL5: Стоит ли добавить новую функцию, для ограничение загрузки истории по символам.

 
  • 40% (22)
  • 24% (13)
  • 13% (7)
  • 24% (13)
Всего проголосовало: 55
 

Немного поясню.

Если запустить экспертов на график и включить автоматическую торговлю, то подгружается довольно большой размер истории тиков (например MetaQuotes-Demo с 2011 года, где то с 2006 и т.д.). Это занимает 200-400 Мб. Это не критично если валютных пар мало. А если их больше 20 - то размер папки history больше 5 гиг. Если в дополнение тестами заняться, то гигабайты (!!!!!) вылетают пачками. А если мне этого не надо, не надо столько истории. Допустим достаточно последнего месяца.

Я предлагаю добавить новую функцию, которая устанавливает лимит глубины загрузки истории.

Например, при инициализации советник запрашивает загрузку истории только за последние полгода (допустим для торговой логики больше не требуется), а не 10 лет. 

В любой момент можно запросить историю большей глубины. 

Для совместимости со старыми советниками можно использовать текущий режим работы (история запрашивается по мере запроса), а при первом же вызове новой функции запрашивается только указанный период истории (а лишнюю можно и удалять)

 

в МТ5 такого нет чтоли?


 
Renat Akhtyamov:

в МТ5 такого нет чтоли?


Макс. баров в окне есть. В истории - сколько запросили, столько (чуть больше) и получили. Т.е., функции запроса истории уже наделены таким функционалом.

 

Ставлю в окошке 1000 (таймфрейм H1) - не помогает, все равно загружается 6 лет в MetaQuotes-Demo.

PS: Вопрос про MQL5, в четверке размеры истории как то поменьше и вроде работает.

 
Renat Akhtyamov:

в МТ5 такого нет чтоли?


с MT4 окошко, а пишете про MT5 ))))))

 
Uladzimir Kirychenka:

с MT4 окошко, а пишете про MT5 ))))))

странный вопрос. разве не должен тестер самостоятельно подгружать необходимую историю?А вотлишнее грузить конечно никакого смысла... ну разве что для устрашения) мол во, смари какая я могучая платформа
 
Andrey Ziablytsev:
странный вопрос. разве не должен тестер самостоятельно подгружать необходимую историю?А вотлишнее грузить конечно никакого смысла... ну разве что для устрашения) мол во, смари какая я могучая платформа

В тестере указывается обычно интервал тестирования.

Например если мы тестируем с 01.01.2018 до 15.05.2019 то обратите внимание с какого числа будет закачиваться история.

И это даже не на год раньше, а побольше )))))))))) 

 
Uladzimir Kirychenka:

В тестере указывается обычно интервал тестирования.

Например если мы тестируем с 01.01.2018 до 15.05.2019 то обратите внимание с какого числа будет закачиваться история.

И это даже не на год раньше, а побольше )))))))))) 

У меня ровно год кеширует. Запустил советник, интервал 2019.01.01-2019.05.15 на все тики, М1

2019.05.16 04:15:18.520 Core 1 EURUSD,M1: history cached from 2018.01.02 00:00

2019.05.16 04:15:18.520 Core 1 323 Mb memory used including 29 Mb of history data, 128 Mb of tick data


А это на реальных тиках, сервер MQ Demo, печалько, EURUSD

2019.05.16 04:19:42.105 Core 1 EURUSD : real ticks begin from 2018.08.27 00:00:00

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks absent for 19941 minutes of 136169 total minute bars, every tick generation used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks discarded for 1 minutes of 136169 total minute bars, every tick generation used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks absent for 13 whole days

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  tick prices of 30 ticks not matched for 1 minute bars

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  last prices absent for 1644 minute bars, bid prices used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  last prices absent for 2 whole days, bars built by bid prices



 
Alexey Volchanskiy:

У меня ровно год кеширует. Запустил советник, интервал 2019.01.01-2019.05.15 на все тики, М1

2019.05.16 04:15:18.520 Core 1 EURUSD,M1: history cached from 2018.01.02 00:00

2019.05.16 04:15:18.520 Core 1 323 Mb memory used including 29 Mb of history data, 128 Mb of tick data


А это на реальных тиках, сервер MQ Demo, печалько, EURUSD

2019.05.16 04:19:42.105 Core 1 EURUSD : real ticks begin from 2018.08.27 00:00:00

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks absent for 19941 minutes of 136169 total minute bars, every tick generation used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks discarded for 1 minutes of 136169 total minute bars, every tick generation used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  real ticks absent for 13 whole days

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  tick prices of 30 ticks not matched for 1 minute bars

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  last prices absent for 1644 minute bars, bid prices used

2019.05.16 04:19:42.105 Core 1 EURUSD : 2019.01.01 00:00 - 2019.05.15 00:00  last prices absent for 2 whole days, bars built by bid prices



Так вы хотите сказать, что это проблема отдельных брокеров (настроек их серверов), а не общая проблема ?

 
Uladzimir Kirychenka:

Так вы хотите сказать, что это проблема отдельных брокеров (настроек их серверов), а не общая проблема ?

Ну, вы писали:

Например если мы тестируем с 01.01.2018 до 15.05.2019 то обратите внимание с какого числа будет закачиваться история.
И это даже не на год раньше, а побольше )))))))))) 

Я решил проверить, сервер MQ Demo, кеширует ровно на год раньше. Получается да, от брокера зависит. И что-то количество пропущенных тиков убивает, я про последнюю часть поста.



Причина обращения: