Новая версия платформы MetaTrader 5 build 5120: улучшения и исправления - страница 38

 
fxsaber #:

8 - это моя ошибка. Должно быть digits, которое нужно сохранять. Немного изучив реальные тики (от EURUSD до крипты и экзотики), пришел к выводу, что шести байтов должно хватать, чтобы мочь восстановить последовательность нормализованных bid/ask и time_msc. Т.е. массив MqlTick[] можно ужать примерно в 10 раз при относительно дешевой (ZIP - эффективнее, но дорогой) распаковке.

Тоже сделал так. По EURUSD cумма Bid с 2015 по 2025 совпала у несжатых и у восстановленных из  float этим способом.

Сделал класс на основе RAM диска. С легким подключением к советникам 3-мя строками.
Вариант сжатия и Digits храню в файле. Думаю еще какие-то параметры инструмента надо будет добавить - определится по необходимости на практике.

Радует потребление памяти агентами: по 4Мб. Вместо 2-5 Гб или больше.
Надеюсь в MQL тестере тоже сделают использование 1-2 блоков памяти на всех агентов, а не по 1 на агент. Памяти станет всем хватать.

Оптимальное по скорости число файлов (блоков памяти): 2 (на сервере с 2 процами и на обычном рабочем ПК). Число тиков считываемых за 1 обращение к файлу взял 100 - так и для сжатых и не сжатых быстро будет.

На EURUSD с 2015 по 2025 размер несжатых файлов получился по 18Гб. Сжатые для Форекса - по 5,3Гб.

 

Прикольная ошибка.

Если в названии скомпилированного файла советника одно название то результат торговый один,

если название другое то и результат другой-второй

При этом косячит и показывает результат второй в тех случаях если в названии файла стоят знаки + - = _

Кто что об этом знает? Раньше таких косяков не было- поэтому я и пишу про результат один.


беру один советник ексешник меняю его название и в тестере выходят разные результаты. колв-о сделок одинаковое.

весь день -менял редакторы кодировки искходные коды  компы терминалы брокеров а вся фишка в названии файла

 
Forester #:

На EURUSD с 2015 по 2025 размер несжатых файлов получился по 18Гб. Сжатые для Форекса - по 5,3Гб.

Это почти 18 байтов на MqlTick. Ужать бы раза в три еще с быстрой распаковкой.

 
fxsaber #:

Это почти 18 байтов на MqlTick. Ужать бы раза в три еще с быстрой распаковкой.

Это если опускаться на уровень побитовой работы. Вы сами уже делали 13 байтов на тик (правда, наверно, небыстро, потому что там было возведение в степень).

 
Alain Verleyen #:

Мне кажется, мы говорим об одном и том же, возможно, просто недопонимание перевода.

Я просто хочу подтвердить то, что вы обнаружили.

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

 
JRandomTrader #:
А если открыть в ME и "сохранить как" UTF-8, вместо пересоздания?

Попробовал для mqproj файла. ME не может его открыть после "сохранить как -> UTF-8" (из ME):


Для mqh файлов не стал пробовать, я привык пересоздавать уже. Не знаю, откуда те сломанные mqh файлы взялись, я не могу создать новый такой через визард. Тем не менее, проблема с mqh файлами не выдумана, я уже скидывал ссылку на чужой репозиторий, где можно увидеть много таких файлов:

Эх, скрипт бы какой-нибудь, который бы детектил сломанные mqh файлы и лечил бы их (убрать "плохие символы" если есть + сменить кодировку)

 

Это несерьезно. Почините сертификат, пожалуйста.

 

Бывают странные ситуации с хэндлами индикаторов. Не инициализируются именно по error 4802, как будто его нет в каталоге Indicators.

P. S. Индикатор клиентский, исходного кода не имею.

Пример на видео



 
Igor Zakharev #:

Бывают странные ситуации с хэндлами индикаторов. Не инициализируются именно по error 4802, как будто его отнесло куда-то в сторону из каталога Indicators.

P. S. Индикатор клиентский, исходного кода не имею.

Пример на видео


иногда полезно в названии индикатора указывать расширения файла ***.ex5

компилятор по разному реагирует бывает

например есть индикатор который без полного имени файла выдает предупреждение - property tester_indicator "Spy" has been implicitly added during compilation because the indicator is used in iCustom function

с полным названием файла, предупреждения нет


еще раньше с этим индикатором без полного названия был какой-то другой глюк



 
lynxntech #:

иногда полезно в названии индикатора указывать расширения файла ***.ex5

компилятор по разному реагирует бывает

например есть индикатор который без полного имени файла выдает предупреждение - property tester_indicator "Spy" has been implicitly added during compilation because the indicator is used in iCustom function

с полным названием файла, предупреждения нет


еще раньше с этим индикатором без полного названия был какой-то другой глюк



Окей, мерси. Интересная инфа.

P. S. Сделал, всё равно так же.