Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
VR System Test MT5 - скрипт для MetaTrader 5
- Просмотров:
- 3842
- Рейтинг:
- Опубликован:
- 2015.11.13 13:04
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Я часто задумывался и задавал вопросы на форуме: "Какой компьютер выбрать для максимальной производительности терминалов МetaТrader 4 и МetaТrader 5 ?" Данный вопрос интересует многих в момент апгрейда или покупки нового ПК с упором на производительность МetaТrader, что лучше купить? На платформе Intel или AMD? Сколько и какая оперативная память должна быть ? Какая материнская плата? Какой выбрать диск для хранения данных: SSD или HDD ?
Разработчики нахваливают производительность и супер скорости терминала МetaТrader 5, но как обычному трейдеру или программисту-любителю проверить слова разработчиков и лично убедиться в том, что они говорят? Писать некий код? А какой? Чем проверить? Как вообще сравнить производительность терминалов МetaТrader 4 и МetaТrader 5?
В общем, я долго думал и решил написать скрипт-тестер производительности ПК и терминалов МetaТrader 4 и МetaТrader 5.
Часть кодов взята из темы Тестирование нового компилятора MQL5 для x64 платформ - ускорение расчетов от 2 до 10 раз!
Все что я сделал, это объединил коды всех тестов в один скрипт и добавил все эти коды через класс, то есть скрипт тестирует ПК и терминалы в двух типах программирования: процедурном и ООП. Также я добавил несколько тестов, связанных с отрисовкой графических объектов, их перемещением и удалением, плюс работа теста с классом CCanvas, плюс замер скорости работы функции CopyRates при копировании 1 000 000 минутных баров. Всего 45 тестов.
Также с помощью скрипта можно проверять VPS и VDS хостеров на честность (на тестовых периодах сравнивать производительность).
Предлагаю вам принять участие в тестировании своих ПК по моему примеру. Я сделал тест на своем ПК при максимальной производительности ПК с пустой автозагрузкой.
Принцип работы скрипта: после запуска скрипт поэтапно проводит тесты, создает и удаляет все необходимое для теста, в конце теста сам откроет таблицу с результатами.
Мой рабочий ПК:
- Имя ОС: Windows 10 Pro
- Тип: Компьютер на базе x64
- Процессор: AMD Phenom(tm) II X6 1100T Processor, 3311 МГц, ядер: 6, логических процессоров: 6
- ОЗУ: (RAM) 8,00 ГБ
- Диск: SSD Модель OCZ-AGILITY3 90 гб
И вот какой результат:
MT4 | MT5 | Во сколько раз МТ5 быстрее | ||
---|---|---|---|---|
===TERMINAL INFO=== | 0 | 0 | ||
TERMINAL_BUILD | 902 | 1210 | Build | |
TERMINAL_CPU_CORES | 6 | 6 | Cores | |
TERMINAL_DISK_SPACE | 14228 | 14134 | Mb | |
TERMINAL_MEMORY_PHYSICAL | 8107 | 8107 | Mb | |
TERMINAL_MEMORY_TOTAL | 4095 | 16214 | Mb | |
TERMINAL_MEMORY_AVAILABLE | 3737 | 0 | Mb | |
TERMINAL_MEMORY_USED | 358 | 33245 | Mb | |
===TEST=== | 0 | 0 | ||
Test Ackermann | 2406 | 0 | MilSek | Абсолют * |
Test Ackermann OOP | 2969 | 0 | MilSek | Абсолют |
Test Arrays | 21422 | 297 | MilSek | 72,13 |
Test Arrays OOP | 7312 | 437 | MilSek | 16,73 |
Test BubbleSort | 13422 | 672 | MilSek | 19,97 |
Test BubbleSort OOP | 4297 | 656 | MilSek | 6,55 |
Test Call | 969 | 0 | MilSek | Абсолют |
Test Call OOP | 906 | 0 | MilSek | Абсолют |
Test Fibo | 2594 | 0 | MilSek | Абсолют |
Test Fibo OOP | 2656 | 0 | MilSek | Абсолют |
Test Float | 2359 | 0 | MilSek | Абсолют |
Test Float OOP | 2516 | 0 | MilSek | Абсолют |
Test Matrix | 20969 | 672 | MilSek | 31,20 |
Test Matrix OOP | 7984 | 656 | MilSek | 12,17 |
Test Moments | 7578 | 5578 | MilSek | 1,36 |
Test Moments OOP | 7266 | 5594 | MilSek | 1,30 |
Test NestedLoop | 5672 | 0 | MilSek | Абсолют |
Test NestedLoop OOP | 6015 | 0 | MilSek | Абсолют |
Test PiCalculate | 12000 | 3515 | MilSek | 3,41 |
Test PiCalculate OOP | 11953 | 3500 | MilSek | 3,42 |
Test QuickSort | 11734 | 2110 | MilSek | 5,56 |
Test QuickSort OOP | 12782 | 1234 | MilSek | 10,36 |
Test Random | 3297 | 516 | MilSek | 6,39 |
Test Random OOP | 3203 | 531 | MilSek | 6,03 |
Test Sieve | 18828 | 1078 | MilSek | 17,47 |
Test Sieve OOP | 18890 | 1094 | MilSek | 17,27 |
Test StrCat | 47 | 1578 | MilSek | 0,03 |
Test StrCat OOP | 47 | 1766 | MilSek | 0,03 |
Test String | 250 | 437 | MilSek | 0,57 |
Test String OOP | 235 | 453 | MilSek | 0,52 |
Test StrPrep | 5406 | 1922 | MilSek | 2,81 |
Test StrPrep OOP | 5500 | 1938 | MilSek | 2,84 |
Test StrRev | 6719 | 4265 | MilSek | 1,58 |
Test StrRev OOP | 7125 | 4297 | MilSek | 1,66 |
Test StrSum | 5843 | 3922 | MilSek | 1,49 |
Test StrSum OOP | 5844 | 3984 | MilSek | 1,47 |
Test ObjectCreate | 63 | 157 | MilSek | 0,40 |
Test ObjectMove | 46 | 343 | MilSek | 0,13 |
Test ObjectDelete | 579 | 0 | MilSek | Абсолют |
Test ObjectCreate OOP | 46 | 125 | MilSek | 0,37 |
Test ObjectMove OOP | 63 | 328 | MilSek | 0,19 |
Test ObjectDelete OOP | 547 | 0 | MilSek | Абсолют |
Test CopyRates | 94 | 0 | MilSek | Абсолют |
Test Canvas | 30078 | 28047 | MilSek | 1,07 |
Test Print(Hello, world!!!) | 1047 | 7453 | MilSek | 0,14 |
Test Final | 281594 | 89609 | MilSek | 3,14 |
* Абсолют — абсолютное превосходство MetaTrader 5.
// Важно!!! Не рекомендуется вносить правки в скрипт без понимания последствий. // Скрипт предназначен для оценки производительности ЭВМ (Планшет, Десктоп/Стационар, VPS/VDS серверы, Серверы). // Скрипт тестирует ЭВМ в 45 тестах разной направленности в двух видах программирования: ООП и процедурном. // Часть кода взята из открытых источников https://www.mql5.com/ru/forum/58241 Автор Renat Fatkhullin // Программу собрал Vladimir Pastushak https://www.mql5.com/ru/users/voldemar // Основной показатель производительности - время. Чем меньше времени ушло на вычисления, тем более производительна ЭВМ и Терминал МetaТrader.