Бета-версия платформы MetaTrader 5 build 2055: Интеграция с Python и массовые улучшения в тестере стратегий

 

В пятницу 17 мая 2019 года будет выпущена обновленная версия платформы MetaTrader 5 в бета-режиме. Призываем всех трейдеров присоединиться к тестированию новой версии платформы, чтобы самостоятельно опробовать все ее возможности и помочь разработчикам в исправлении найденных ошибок.

Для обновления на новый 2055 билд платформы MetaTrader 5 достаточно нажать "Помощь \ Проверить обновления десктопа \ Последняя бета-версия":


После окончания данного этапа бета-тестирования будет выпущен финальный билд новой платформы MetaTrader 5.

Обновление содержит следующие изменения:

  1. Terminal: Добавлено API для запроса данных из терминала MetaTrader 5 через приложения, использующие язык Python.

    Python является современным высокоуровневым языком программирования для разработки сценариев и приложений. Содержит множество библиотек для машинного обучения, автоматизации процессов, анализа и визуализации данных.

    Пакет MetaTrader для Python предназначен для удобного и быстрого получения биржевой информации через межпроцессное взаимодействие прямо из терминала MetaTrader 5. Полученные таким образом данные можно дальше использовать для статистических вычислений и машинного обучения.



    Подключение

    1. Скачайте последнюю версию Python со страницы https://www.python.org/downloads/windows
    2. При установке Python отметьте чек-бокс "Add Python X.X to PATH%", чтобы можно было из командной строки запускать скрипты на Python.
    3. Установите модуль MetaTrader5 из командной строки
      pip install MetaTrader5
    4. Добавьте пакеты matplotlib и pytz
      pip install matplotlib
      pip install pytz

    Функции

    • MT5Initialize — устанавливает соединение с терминалом MetaTrader 5
    • MT5Shutdown — закрывает ранее установленное подключение к терминалу MetaTrader 5
    • MT5TerminalInfo — получает состояние и параметры подключенного терминала MetaTrader 5
    • MT5Version — возвращает версию терминала MetaTrader 5
    • MT5WaitForTerminal — ждет пока терминал MetaTrader 5 подключится к торговому серверу
    • MT5CopyRatesFrom — получает бары из терминала MetaTrader 5, начиная с указанной даты
    • MT5CopyRatesFromPos — получает бары из терминала MetaTrader 5, начиная с указанного индекса
    • MT5CopyRatesRange — получает бары в указанном диапазоне дат из терминала MetaTrader 5
    • MT5CopyTicksFrom — получает тики из терминала MetaTrader 5, начиная с указанной даты
    • MT5CopyTicksRange — получает тики за указанный диапазон дат из терминала MetaTrader 5


  2. Terminal: Оптимизированы разделы "Маркет" и "Сигналы". Теперь витрины продуктов и сигналов работают до семи раз быстрее, делая работу со встроенными торговыми сервисами более комфортной.




  3. Terminal: Добавлена поддержка "Маркета", "Сигналов" и "Поиска" в Wine. Теперь пользователи Linux и Mac OS имеют доступ к самому большому магазину торговых приложений и сервису автоматического копирования сделок.




  4. Terminal: Встроенная система обучения переведена на более чем 30 языков, включая испанский, китайский, португальский и немецкий. Для просмотра интерактивных советов на другом языке достаточно переключить язык интерфейса через меню "Вид".




  5. Terminal: Добавлена возможность подтверждения телефонов и email, указываемых при открытии демонстрационных и предварительных счетов.

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




    Коды подтверждения действуют в течение нескольких минут. Если за отведенное время трейдер не использует их для открытия счета, процедуру потребуется повторить.

    Перед отправкой кодов система проверяет, не был ли указанный телефон/email ранее уже подтвержден. Если трейдер уже проходил верификацию этих данных со своего компьютера, открытие счетов будет происходить как раньше — без дополнительного подтверждения. Таким образом, трейдеры не столкнутся с чрезмерными трудностями при запросе счетов.

  6. Terminal: Расширены возможности оплаты сервисов MQL5.community через систему PayPal. Теперь она позволяет совершать покупки одним кликом.

    Как это работает
    В процессе покупки после авторизации своим аккаунтом в PayPal вам будет предложено разрешить дальнейшие платежи нашей компании:





    В случае согласия все последующие покупки вы сможете совершать одним кликом, просто нажимая кнопку ранее сохраненного аккаунта:




    Если вы нажмете "Отменить и вернуться к MetaQuotes Software Corp.", вы продолжите совершать платежи как раньше, авторизуясь в PayPal вручную при каждой покупке.
    Сайт MQL5.com/платформа MetaTrader 5 не хранит ваши платежные реквизиты. Проверку данных в случае пополнения, покупки в Маркете или подписки на Сигнал проводит на своей стороне платежная система.
    Вы всегда можете отказаться от привязки аккаунта PayPal и покупать сервисы в обычном режиме.

  7. Tester: Массовые улучшения и оптимизация работы тестера стратегий.

    Мы провели огромную скрытую работу по внутренней оптимизации тестера стратегий и исправлению ошибок. Все это значительно ускорило тестирование на ряде задач, а также повысило общую стабильность работы. Наиболее крупные улучшения:

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

    Распределение задач между агентами
    Теперь во время выполнения оптимизации тестер стратегий может перераспределять задания на ходу. Если стал доступен новый агент (или один из ранее использованных освободился), тестер автоматически сформирует ему пакет заданий из тех, что уже были распределены между другими агентами. Аналогичным образом задания перераспределяются при обнаружении слишком медленных агентов — их задачи параллельно выдаются другим агентам, чтобы завершить оптимизацию быстрее.

    Также значительно ускорено распределение задач в режиме математических вычислений.

    Статистика оптимизации в журнале
    Расширено журналирование процесса оптимизации — выводится более подробная статистика использования MQL5 Cloud Network, факт включения/отключения облачных агентов и т.д.

    Работа в режиме полных логов оптимизации
    Для экономии ресурсов при оптимизации в журнал тестера стратегий не выводятся все сообщения от агентов. Для их принудительного вывода предусмотрен режим "Полные журналы оптимизации", который включается через контекстное меню журнала тестера. Раньше включение этого режима существенно замедляло процесс оптимизации, теперь он практически не влияет на время расчетов.

    MQL5 Cloud Network
    Оптимизирована работа облачных агентов тестирования. Теперь задания распределяются более эффективно.

  8. Terminal: Встроенный календарь включает более 900 показателей по 18 крупнейшим экономикам мира: США, Евросоюзу, Японии, Великобритании и т.д. Все данные собираются в режиме реального времени из первоисточников, позволяя своевременно реагировать на мировую ситуацию и принимать взвешенные торговые решения.

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




    Выберите свою платформу и скачайте приложение Tradays:


    В дополнение ко всем функциям календаря из десктопной платформы, в мобильной версии доступны возможность создавать напоминания о событиях, а также полная история показателей в виде графиков и таблиц.

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

    • Это позволяет избежать расхождения данных.
    • После импорта тиковых данных (при их достаточной полноте) можно не тратить время на импорт баров — терминал рассчитает их сам.

    Изменения касаются как импорта тиков через интерфейс терминала, так и обновления тиков через MQL5-программы при помощи функции CustomTicks*. Любые изменения тиковых данных приводят к пересчету соответствующих минутных баров пользовательского инструмента.

  10. Terminal: Исправлено обновление информации в "Окне данных" при использовании перекрестия на открепленном графике.
  11. Terminal: Исправлено сохранение тиковой истории. Ранее при наличии нескольких тиков в одной миллисекунде порядок сохранения тиков мог нарушаться.
  12. Terminal: Исправлено построение графиков при слишком короткой (менее дня) ценовой истории на сервере.
  13. MQL5: Добавлена поддержка отладки MQL5-сервисов. Теперь вы можете проверять такие программы на реальных и исторических данных аналогично советникам и индикаторам.
  14. MQL5: Теперь во время выполнения метода OnDeinit MQL5-программа не получает никаких событий от терминала. Ранее программы могли не успевать корректно завершить деинициализацию (например, удалить за собой все объекты) из-за получения других событий.
  15. MQL5: Исправлены ошибки, возникавшие при изменении тиковой истории за текущий день у пользовательских торговых инструментов.
  16. MQL5: Исправлена ошибка, приводившая к замедлению работы программы при использовании большого количества (десятки тысяч) графических объектов.
  17. MQL5: Исправлено зависание терминала при частом обращении к торговой истории из MQL5-программ.
  18. MQL5: Исправлена ошибка в работе функции iBarShift. При флаге "exact=false" и запросе за пределами данных возвращался номер самого старого бара, а не самого нового.
  19. Tester: Исправлено определение числа ядер на компьютерах с процессорами, имеющими несколько NUMA узлов.
  20. MetaEditor: Теперь команду стилизации кода можно добавить на панель инструментов для быстрого доступа.
  21. MetaEditor: Исправлен переход к определению и показ информации о параметрах при использовании неюникодных символов в качестве имен функций и переменных.
  22. Обновлена документация.

Обновление будет доступно через систему LiveUpdate.

 

Билд 2044, появились картинки в оптимизируемых параметрах, в место галочек...


 

Пожелание

Возникают проблемы с отчетами

Суть проблемы: в отчетах и оптимизации выводятся имена входных переменных из кода программы.

Имя переменной может отличаться от имени в настройках программы при запуске 

input ENUM_TYPE_LOTS      iTypeLots           = Martingale;                     // Lot calculation type (order pricing) 

В отчетах везде видим iTypeLots но пользователь в настройках программы видит Lot calculation type (order pricing) 

передавать отчет, кеш оптимизации или иной набор входных параметров просто проблематично только из за того что пользователь не сопоставит название входного параметра Lot calculation type (order pricing)  с переменной в отчете.

Надеюсь я понятно объяснил... Нужно что бы везде были видны имена входных параметров а не имена входных переменных....

 
Даешь namespace!
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

Sergey Dzyublik, 2019.05.16 23:01

MT5 (build 2044)
Тестер стратегий запускает 450 процессов "metatester64.exe".
Немного избыточное "внимание" для для 8 логических процессоров.




 

Новых функций и исправлений багов и недочётов в тестере не делалось?

Конкретно.

1. Исправлен ли баг с тестированием на акциях мосбиржи? Из-за чего ложные граали на реал тиках.?

https://www.mql5.com/ru/forum/307943

2. Адаптирован ли тестер под иностранные рынки? Тот же CME? С его внутредневной и суточной(маржой за перенос позиции) маржой?

https://www.mql5.com/ru/forum/309332

3.

В тестере мт4 можно в любой момент остановить тест и увидеть все сделки и общий итог теста а в мт5 ты увидишь только белый лист т.е. ничего.

Иногда нет смысла ждать уже до конца этот тест когда видишь сразу нужный результат .

https://www.mql5.com/ru/forum/189085/page21#comment_10910219

4.

Очень не хватает для полноты анализа показа результатов за каждый тестируемый месяц-например как в сервисах мониторингов.

Например январь 19- процент

февраль 19 процент

март 19 процент.

В идеале конечно хорошо бы еще видеть просадку, хотя это далеко не главное.

Но вот показ доходности за месяц очень нужно, т.к. по одной графе доходности невозможно оценить доходность когда графа идёт ровно и за большой период теста.

https://www.mql5.com/ru/forum/189085/page21#comment_11488482

5.

Мелочь, а очень неудобно что в тестере нет выбора истории позиций а не сделок.

по позициям намного проще и быстрее можно сравнить торговые сделки друг с другом между тестером и реальным счётом.

https://www.mql5.com/ru/forum/189085/page21#comment_11488482

6.

Не хватает показа среднего размера прибыльной и убыточной сделки в пунктах.

https://www.mql5.com/ru/forum/189085/page22#comment_11573743

7. И в целом предложение, добавить немного побольше возможностей, которые есть в тех же мониторингах счетов.

Баг тестера мт5 на фондовой секции мосбиржи
Баг тестера мт5 на фондовой секции мосбиржи
  • 2019.03.23
  • www.mql5.com
Обнаружен предполагаю баг тестера...
 

какая версия находится в  LiveUpdate  в бете на сервере MetaQuotes - Demo?

у меня вчера вечером терминал обновился сам до 2044, через час появился этот топик с build 2055

вчера вечером несколько раз кликал в меню проверить обновления "десктопа-последняя бета версия" - писал последняя версия, но все равно версия осталась 2044

сейчас кликнул "проверить обновления десктопа - последняя бета версия" , обновился до 2045



 
Igor Makanu:

какая версия находится в  LiveUpdate  в бете на сервере MetaQuotes - Demo?

у меня вчера вечером терминал обновился сам до 2044, через час появился этот топик с build 2055

вчера вечером несколько раз кликал в меню проверить обновления "десктопа-последняя бета версия" - писал последняя версия, но все равно версия осталась 2044

сейчас кликнул "проверить обновления десктопа - последняя бета версия" , обновился до 2045



пока 2045, обычно обещанное (2055) выкладывают в пятницу вечером

 
Нужен такой же пакет интеграции для Matlab!
 
Скажите, а на Мак ОС через Wine можно писать советников также, как и под Windows или есть какие нюансы, кто-нибудь из вас пишет (MetaEditor нормально работает)? 
 
Andy:
Скажите, а на Мак ОС через Wine можно писать советников также, как и под Windows или есть какие нюансы, кто-нибудь из вас пишет (MetaEditor нормально работает)? 

использую иногда под ОС Linux <---> wine MT5, MetaEditor

все прекрасно работает, но есть один существенный мелкий баг, при написании кода в MetaEditor даются всплывающие подсказки, которые часто не удаляются под wine и остаются в виде артефактов на рабочем столе, пока не выгрузишь MetaEditor, приходится постоянно перегружать MetaEditor т.к. несколько артефактов заметно снижают читаемость кода и мешают

Причина обращения: