Бета-версия платформы MetaTrader 5 build 2055: Интеграция с Python и массовые улучшения в тестере стратегий - страница 14
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот интересно, кто-нибудь пользуется функцией FrameFirst?
Здесь пример.
Так зачем 44 гига шлете в Тестер?
Что-то не в порядке с размерами.
Отправлял массив типа double. Сейчас поменял на float. MQD файл в размере не поменялся.
Самое главное: после вытаскивания данных из фреймов и записи в текстовые файлы CSV, с преобразованием float в строки.
Все текстовые файлы c 2 проходами занимают 1,52 мб, а MQD файл занимает 32 mb.
Другой эксперимент 196 проходов (по 2 фрейма за проход). Текстовые файлы заняли 17,6 МБ (18 504 413 байт), MQD файл занял 3,06 ГБ (3 288 446 312 байт)
2019.05.30 12:31:11.821 Statistics 392 frames (3136.06 Mb total, 8388780 bytes per frame) received
Из чего делаю вывод, что на 1 проход резервируется 16 мб в MQD файле. Но я то использую менее 1 мб на проход.
Что там? Нулями забивается 15 мб? Можно посчтать, что мой свободные 44 Гб съедятся всего 2500 проходами оптимизации.
Что там? Нулями забивается 15 мб? Можно посчтать, что мой свободные 44 Гб съедятся всего 2500 проходами оптимизации.
Прочтите его явно.
Здесь пример.
А какой смысл там организовывать 2 цикла, если можно (и нужно) это делать в одном, и без всяких FrameFilter. Просто перебрать все фрэймы и распихать по нужным файлам. Вам же так или иначе нужно перебрать ВСЕ фрэймы. А если не все, тогда вопрос - зачем тогда вы лишние фрэймы отсылали из агента, тратя понапрасну ресурсы? Так что рациональный подход предполагает однократный перебор всех фрэймов.
Поэтому как уже сказано, FrameFirst и FrameFilter совершенно не нужны.
А какой смысл там организовывать 2 цикла, если можно (и нужно) это делать в одном, и без всяких FrameFilter. Просто перебрать все фрэймы и распихать по нужным файлам. Вам же так или иначе нужно перебрать ВСЕ фрэймы. А если не все, тогда вопрос - зачем тогда вы лишние фрэймы отсылали из агента, тратя понапрасну ресурсы? Так что рациональный подход предполагает однократный перебор всех фрэймов.
Поэтому как уже сказано, FrameFirst и FrameFilter совершенно не нужны.
Честно говоря, не понимаю эти вопросы совсем. Звучат, как какой-то школьный примитив, без обид.
Фреймы можно читать когда/где/сколько угодно. Выше человек 44 гига фреймов читать явно не будет один раз.
А какой смысл там организовывать 2 цикла, если можно (и нужно) это делать в одном, и без всяких FrameFilter. Просто перебрать все фрэймы и распихать по нужным файлам. Вам же так или иначе нужно перебрать ВСЕ фрэймы. А если не все, тогда вопрос - зачем тогда вы лишние фрэймы отсылали из агента, тратя понапрасну ресурсы? Так что рациональный подход предполагает однократный перебор всех фрэймов.
Поэтому как уже сказано, FrameFirst и FrameFilter совершенно не нужны.
А вот убирать фрейм из памяти/диска, после обработки, можно дополнительной командой, типа FrameDelete
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Бета-версия платформы MetaTrader 5 build 2055: Интеграция с Python и массовые улучшения в тестере стратегий
fxsaber, 2019.05.27 09:10
Каким-то образом получился кастомный символ, который может удаляться из Обзора рынка при открытом графике.
Возможно, поможет разобраться следующее. Перед этим багом пытался разобраться, почему эта функция
выполняется три секунды при открытых двух чартах. Затем что-то сделал и она стала выполняться мгновенно. Далее вышел на баг, что выше. Воспроизвести его после перегрузки Терминала не получилось.
Запуск скрипта на таком чарте без символа
не приводит к его выполнению.
Честно говоря, не понимаю эти вопросы совсем. Звучат, как какой-то школьный примитив, без обид.
Фреймы можно читать когда/где/сколько угодно. Выше человек 44 гига фреймов читать явно не будет один раз.
Мне 1 раз надо считать и скинуть в CSV, после чего можно забыть о нем навсегда, даже не сохраняя в MQD файл, либо удалять из него фрейм отдельной командой - т.к. места более чем на 2500 проходов мне не хватит.
Мне 1 раз надо считать и скинуть в CSV, после чего можно забыть о нем навсегда, даже не сохраняя в MQD файл.
Ну так есть люди, которые не выходя за пределы MT5 анализируют фреймы. И грузить их все в память для того, чтобы показать один проход, для них расточительно.
Ну так есть люди, которые не выходя за пределы MT5 анализируют фреймы. И грузить их все в память для того, чтобы показать один проход, для них расточительно.
Поэтому для совместимости со всеми остальными предлагаю ввести команду FrameDelete(номер фрейма), для тех, у кого место на диске ограничено.