Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 593
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Еще вопрос, насколько нормально тестер работает с советниками, которые копируют данные с нескольких ТФ?
Если корректно, то какой тф выбирать при тестировании имеет значение?
Вылазит ошибка out of memory при запуске тестирования (не запускается). Как это лечить?
После рестарта терминала тестирование запускается, а потом после нескольких тестов снова out of memory.
Уменьшить количество видимых и баров в истории (только в этом случае глубокая история котировок пропадет, так что тут Вам решать что важнее). Также возможно, что открыто слишком много графиков в терминале. Бывает, что пользователь открывает порядка 50-и графиков с глубиной истории в 1 млн. баров. Тут уже никакой памяти не хватит.
Вот тут смогут точно ответить.
В коде несколько десятков тысяч строк. В логах ошибки только после завершения тестирования xxx undeleted objects left. Где-то в среднем 9 тестов могу запустить, а потом ошибка out of memory.
Уменьшить количество видимых и баров в истории (только в этом случае глубокая история котировок пропадет, так что тут Вам решать что важнее). Также возможно, что открыто слишком много графиков в терминале. Бывает, что пользователь открывает порядка 50-и графиков с глубиной истории в 1 млн. баров. Тут уже никакой памяти не хватит.
Нет, это ничего не помогает и не влияет. Тестирую с одним графиком, историю уменьшал по минимуму. И повторяю, тестируется, но ограниченное число раз. Где-то на 10-й тест вылазит ошибка out of memory.
В коде несколько десятков тысяч строк. В логах ошибки только после завершения тестирования xxx undeleted objects left. Где-то в среднем 9 тестов могу запустить, а потом ошибка out of memory.
Это все утечки памяти. Их нужно устранить, освобождая память, выделенную для каждого из объектов, через команду delete.
Это все утечки памяти. Их нужно устранить, освобождая память, выделенную для каждого из объектов, через команду delete.
Уточню: удалить все объекты в OnDeinit() - графические, объекты классов если есть...
Уточню: удалить все объекты в OnDeinit() - графические, объекты классов если есть...
Как мне их там удалить, если они там невидимы...
У меня коллекция объектов (класс наследуемый от CArrayObj), они в свою очередь добавляются ещё в список таких же объектов, а те в конечный объект (тоже наследуемый от CArrayObj), который уже виден на глобальном уровне и который я удаляю в OnDeinit... А те я не удаляю, когда их удалять, они мне нужны во время работы программы.
Как мне их там удалить, если они там невидимы...
У меня коллекция объектов (класс наследуемый от CArrayObj), они в свою очередь добавляются ещё в список таких же объектов, а те в конечный объект (тоже наследуемый от CArrayObj), который уже виден на глобальном уровне и который я удаляю в OnDeinit... А те я не удаляю, когда их удалять, они мне нужны во время работы программы.
Не бывает, чтобы создаваемые Вами же объекты, были невидимы.
Они могут быть недоступны из той или иной функции, но в самом то объекте они должны быть доступны. Вот в этом объекте и нужно чистить память. Обычно это делается деструкторе класса. Чтобы убедиться, расставьте Print'ы во всех деструкторах и в OnDeinit.
Пожалуйста,кто знает,подскажите способ определения наличия OCT панели на графике
Что такое ОСТ панель?