Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот думаю, что если так компактно получилось - то можно сохранить всю историю за 5-6 лет и через инпуты указывать интервал тестирования. Ну и дать имена в виде названий инструментов. Подумаю...
быстрее всего с вашим скриптом распаковка идет при int ticks_per_block=600000;.
Много времени уходит на ArrayCopy. Чем больше блок, тем меньше вызовов ArrayCopy.
Проверьте разные
Результат очень интересный по степени сжатия и скорости распаковки. Вы почти изобрели VLQ-сжатие тиков. Показатели примерно одинаковые.
Медленная компрессия в скрипте, скорее всего, вызвана частыми ArrayResize и ArrayCopy.
Понравилась статистика, что выдается в Тестере при записи тиков.
Для скорости декомпрессии логично выносить условия из циклов. Например, делать так.
Аналогично выносить switch из-под while.
Правильно ли я понимаю, что zip-файл содержит сразу много независимых zip-блоков?
Удивило, что zip-распаковка замедляет распаковку менее, чем в два раза.
Четыре байта может быть только при 229 <= dt <= 255?
Четыре байта может быть только при 229 <= dt <= 255?
да
Правильно ли я понимаю, что zip-файл содержит сразу много независимых zip-блоков?
Да, в вашем скрипте по 600000 тиков в блоке, у меня по 30000 - можно подобрать по скорости чтения. У вас тесты с BidAsk, а я еще и c Volume сжимал + чтение из файла, возможно поэтому разные размеры блоков оказались лучшими.
И не ZIP блоков тоже. Чтобы в едином стиле/коде было.
Аналогично выносить switch из-под while.
Согласен. Завтра сделаю и сравню скорость.
Сделал сохранение всех тиков в файлы по годам и тестирование по заданным в инпутах датам.
выносить switch из-под while.
После этого скорость распаковки сравнялась с моим вариантом.
TicksShort.
TickCompressor.
Только у второго гораздо сильнее сжатие.
После этого скорость распаковки сравнялась с моим вариантом.
TicksShort.
TickCompressor.
Только у второго гораздо сильнее сжатие.
У меня скорость генерации тиков выросла на 10% после этой модификации.
Было:
2025.11.18 10:15:22.670 1 (EURUSD,H1) Decompress performance: 49.1 Ticks (millions)/sec.
2025.11.18 10:26:22.871 1 (EURUSD,H1) Decompress performance: 52.0 Ticks (millions)/sec.
Стало:
2025.11.18 10:26:40.381 1 (EURUSD,H1) Decompress performance: 56.4 Ticks (millions)/sec.
2025.11.18 10:26:53.333 1 (EURUSD,H1) Decompress performance: 55.7 Ticks (millions)/sec.
Обновлю попозже. Еще одна идея есть.
Еще одна идея есть.