Ошибки, баги, вопросы - страница 3565

 
Ivan Titov #:

Как именно проверяли?  Заменяли существующие бары и тики? И какая может быть ошибка на моей стороне?

Вы писали, что " при работе с пользовательским символом: CustomTicksReplace(), CustomRatesUpdate(), CustomRatesDelete()." выводят в лог запись которой там быть не должно.

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

Вы хотите, чтоб вам сказали откуда берутся записи в лог, но минимальный код для воспроизведения не предоставили.

Поэтому я запустил свой код. У моего кода всё гуд. Значит проблема с вашим кодом. Логично?

 

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

Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite

Renat Fatkhullin, 2020.05.17 12:17

OnInit это именно точка входа.

Она нужна, так как не всем нужно четко ждать готовности рыночного окружения, а нужно стартовать сразу. И еще неизвестно какое окружение нужно этой программе.

Если нужного окружения нет, надо отложить инициализацию на следующие события, а не зацикливаться на «я знаю только OnInit, логика моей работы прямолинейна, я не готов думать».

_Point и _Digits гарантированно готовы в OnInit или нет?

 
Vladislav Boyko #:

_Point и _Digits гарантированно готовы в OnInit или нет?

Судя по следующему, они должны гарантированно содержать корректные значения в OnInit

https://www.mql5.com/ru/docs/predefined

Для каждой выполняющейся mql5-программы поддерживается ряд предопределенных переменных, которые отражают состояние текущего ценового графика на момент запуска программы - эксперта, скрипта или пользовательского индикатора.

Значение предопределенным переменным устанавливает клиентский терминал перед запуском mql5-программы на выполнение.

Но все-таки...

 
Vladislav Boyko #:

_Point и _Digits гарантированно готовы в OnInit или нет?

_Point и _Digits гарантированно готовы в OnInit и в любом другом месте программы. Главное помнить, что в этих предопределённых переменных хранятся значения по ТЕКУЩЕМУ ИНСТРУМЕНТУ (символу, валютной паре).

С уважением, Владимир.

 
Aleksandr Slavskii #:
Поэтому я запустил свой код.

В Вашем коде существующие бары и тики заменялись? Свой код предоставить нет возможности - более 10 модулей и 10000 строк.

 
MrBrooklin #:

_Point и _Digits гарантированно готовы в OnInit и в любом другом месте программы.

Проверяли в терминале, который никогда не подключался к счету (например, перенесенный с другого компьютера без файлов кэша)?

 
Aleksandr Slavskii #:


Александр, а у вас при активном использовании CustomTicksReplace и CustomTicksAdd не разрастается кэш баров, который сам терминал создает для кастумных инструментов?

У меня прям беда с этим, промучался с разными экспериментами, но все безрезультатно. Думал, что это история тиков, но нет, они занимают десятки мегабайт, а этот кэш разрастается до сотен мегабайт. Интересно, что при закрытии терминала, бары сжимаются до жалких десятков килобайт, но в процессе работы этот кэш сам не чистится.

Буду благодарен за подсказку или краткое описание best practices по использованию этих функций.

 
Andrey Khatimlianskii #:

Александр, а у вас при активном использовании CustomTicksReplace и CustomTicksAdd не разрастается кэш баров, который сам терминал создает для кастумных инструментов?

У меня прям беда с этим, промучался с разными экспериментами, но все безрезультатно. Думал, что это история тиков, но нет, они занимают десятки мегабайт, а этот кэш разрастается до сотен мегабайт. Интересно, что при закрытии терминала, бары сжимаются до жалких десятков килобайт, но в процессе работы этот кэш сам не чистится.

Буду благодарен за подсказку или краткое описание best practices по использованию этих функций.

К сожалению ничего не подскажу, так как сам не юзаю пользовательские символы (впрочем как и все остальные). 

Писал человеку програмку, создающую произвольные секундные графики. Нареканий не было. 

Другому, ренко графики писал, там тоже вопросов не возникало.

Если там и разрастался кэш, то не настолько, чтоб как то повлиять на работу компьютера или терминала.

Сейчас запустил и ренко и секунду, заскринил сколько весят папки с тиками и барами этих символов. Теперь жду, когда подрастут.

Не подскажите через какое время разрастается кэш?


ЗЫ. Я же правильно понял, что кэшем мы называем файлы с тиками и барами, которые лежат здесь.


 
Aleksandr Slavskii #:

К сожалению ничего не подскажу, так как сам не юзаю пользовательские символы (впрочем как и все остальные). 

Писал человеку програмку, создающую произвольные секундные графики. Нареканий не было. 

Другому, ренко графики писал, там тоже вопросов не возникало.

Если там и разрастался кэш, то не настолько, чтоб как то повлиять на работу компьютера или терминала.

Сейчас запустил и ренко и секунду, заскринил сколько весят папки с тиками и барами этих символов. Теперь жду, когда подрастут.

Не подскажите через какое время разрастается кэш?


ЗЫ. Я же правильно понял, что кэшем мы называем файлы с тиками и барами, которые лежат здесь.

Спасибо за ответ!
Да, эти папки. Разрастаются быстро, по крайней мере если обновлять всеми тиками крипто-инструменты (можем потом посмотреть кол-во тиков).

Запустил у себя тоже с чистого листа 9 инструментов, загруженная история месячной длины заняла 1 Мб. Через час будет пару сотен, думаю. Отпишусь.

 
Andrey Khatimlianskii #:

Спасибо за ответ!
Да, эти папки. Разрастаются быстро, по крайней мере если обновлять всеми тиками крипто-инструменты (можем потом посмотреть кол-во тиков).

Запустил у себя тоже с чистого листа 9 инструментов, загруженная история месячной длины заняла 1 Мб. Через час будет пару сотен, думаю. Отпишусь.

Почти три часа, думаю можно подводить итоги.

Секундный график Ришки на Мосбирже(брокера не пишем), увеличился объём тиков на 7Мб  бары на 8Мб.

Ренко 20 пунктов на метаквотовских котировках евры, тиковая история увеличилась на 7Мб, бары на 9Мб.

Думаю это нормально.