Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
https://docs.mql4.com/ru/basis/types/integer
В стандарте C++ гарантируется размер только типа char. Длины остальных типов специфичны для реализации. Таблица соответствия некорректна и может приводить к неопределённому поведению.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2018.12.01 11:15
Супер-тормозная конструкцияФайл 40Мб из 1 миллиона строк считывает 18 секунд.
Тот же результат на выходе, но сделанный иначе
выполняется уже за 0.5 секунды.
Перегрузил 16Gb RAM задачами. По итогу Хром завис, MT5 c запущенной Оптимизацией - без проблем. Но интереснее - MT4.
Индикаторы остались пахать, а советники из-за отсутствия проверки результата ArrayResize остановились из-за "out of range".
Не всегда хочется проверять ArrayResize, но вот подтверждение, что отсутствие этой проверки может остановить, например, боевой советник на VPS.
Вот только чего понять не могу, как получилось "out of range", если ArrayResize был ранее сделан с большим Reserve?
Перегрузил 16Gb RAM задачами. По итогу Хром завис, MT5 c запущенной Оптимизацией - без проблем. Но интереснее - MT4.
Индикаторы остались пахать, а советники из-за отсутствия проверки результата ArrayResize остановились из-за "out of range".
Не всегда хочется проверять ArrayResize, но вот подтверждение, что отсутствие этой проверки может остановить, например, боевой советник на VPS.
Вот только чего понять не могу, как получилось "out of range", если ArrayResize был ранее сделан с большим Reserve?
влёгкую :-) в большей части языков/систем так.
Reserve выделил(получил) виртуальную память, а когда физическая кончилась, то при обращении к памяти свободной страницы ненашлось. Получилось исключение процессора, которое после череды обработок вылилось в out-of-range
кстати то что MT вообще не завалился подтверждает качество изготовления :-)
Жестко ошибался на тему сортировки ордеров в истории. Сортировка по времени закрытия не всегда, к сожалению.
Проверочный скрипт
Почему такой элементарный код не накатал сразу для самопроверки - загадка.
Как и загадка, как получается, что ордера могут быть не отсортированы по времени? Задаю этот вопрос, потому как выкладывал кастомный тестер в КБ. И логично, раз ордер попал в историю, то запись о нем там позже тех, что попали раньше. Как можно перетряхнуть эту логику - не ясно совсем.
Возможно, ордера хранятся на разных MT5-серверах, а потом при синхронизации такая ерунда выходит. Надеюсь, что это баг Терминала, а не торгового MT4-сервера. Ну и хотелось бы, чтобы в MTтакого не происходило со сделками.
Жестко ошибался на тему сортировки ордеров в истории. Сортировка по времени закрытия не всегда, к сожалению.
Проверочный скрипт
Почему такой элементарный код не накатал сразу для самопроверки - загадка.
Как и загадка, как получается, что ордера могут быть не отсортированы по времени? Задаю этот вопрос, потому как выкладывал кастомный тестер в КБ. И логично, раз ордер попал в историю, то запись о нем там позже тех, что попали раньше. Как можно перетряхнуть эту логику - не ясно совсем.
Возможно, ордера хранятся на разных MT5-серверах, а потом при синхронизации такая ерунда выходит. Надеюсь, что это баг Терминала, а не торгового MT4-сервера. Ну и хотелось бы, чтобы в MTтакого не происходило со сделками.
Сортировку в истории счёта пробовали менять?
Сортировку в истории счёта пробовали менять?
Не влияет на результат.
Сортировку в истории счёта пробовали менять?
Да, не должно влиять. Влияет только количество ордеров в закладке "История счета". За этим приходится следить.
Не влияет на результат.
Время закрытия позиции выдает сервер.