rss

Профиль компании

Финансовые компании

Блог компании MetaQuotes Software | Новый MetaTrader 5 build 1485: доп режимы тестирования и графическая библиотека

Вчера мы выпустили очередной релиз десктопного MetaTrader 5.

Что нового:
  1. Terminal: Изменен порядок отображения записей в журналах терминала и MetaEditor. Ранее в начале журнала показывались самые свежие записи, теперь — самые старые. Обратный порядок сортировки сделает чтение журнала более удобным и привычным.

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

    Новый MetaTrader 5 build 1485: доп режимы тестирования и графическая библиотека

  3. Terminal: Исправлена ошибка, приводившая к копированию уровней SL/TP из имеющейся позиции в новую позицию по тому же инструменту. Ошибка проявлялась при использовании функций торговли одним кликом (например, на графике, в окне «Обзор рынка») в режиме хеджинга.

  4. Terminal: Исправлено отображение объектов-стрелок на экранах сверхвысокого разрешения (4К).

  5. MQL5: Добавлена функция ArrayPrint для вывода в журнал массивов простых типов и структур.
    ArrayPrint выводит в журнал не все поля массива структур – поля-массивы и поля-указатели объектов пропускаются. Для вывода всех полей такой структуры понадобится собственная функция массового вывода с желаемым форматированием.

  6. MQL5: Исправлена ошибка сложения строк вида S1=S2+S1

  7. MQL5: Изменено поведение функции ArrayResize. При передаче в качестве параметра reserve_size значения -1 функция освобождает неиспользованную (зарезервированную) память, если при этом не происходит увеличение размера массива. Изменение размера массива на 0 со значением reserve_size=-1 эквивалентно вызову ArrayFree. Новое поведение позволяет оптимизировать использование памяти в MQL5-программах.

  8. MQL5: В стандартную библиотеку добавлены функции для построения графиков. Для использования включите файл MQL5\Include\Graphics\Graphic.mqh в свой проект.

    Построение графика из 3 серий данных при помощи GraphPlot:
    #include <Graphics/Graphic.mqh>
    
    double Func1(double x) { return MathPow(x,2); }
    double Func2(double x) { return MathPow(x,3); }
    double Func3(double x) { return MathPow(x,4); }
    
    void OnStart()
      {
       GraphPlot(Func1,Func2,Func3,-2,2,0.05,CURVE_LINES);
      }
    
    Результат:

    Новый MetaTrader 5 build 1485: доп режимы тестирования и графическая библиотека

    Построение графика на основе массива данных при помощи GraphPlot:
    #include <Math/Stat/Binomial.mqh>
    #include <Graphics/Graphic.mqh>
    
    void OnStart(void)
      {
       double    vars[101];
       double    results[101];
       const int N=2000;
    //---  
       MathSequence(0,N,20,vars);
       MathProbabilityDensityBinomial(vars,N,M_PI/10,true,results);
       ArrayPrint(results,4);
       GraphPlot(results);
    //---
      }
    
    Результат:

    Новый MetaTrader 5 build 1485: доп режимы тестирования и графическая библиотека

  9. MQL5: Обновлены функции работы с математической статистикой в стандартной библиотеке. Проведена большая проверка качества и точности всех функций как в MQL5-версии, так и в исходном языке R. Для контроля точности и скорости работы вместе со статистической библиотекой распространяются юнит-тесты. Они находятся в каталоге \MQL5\Scripts\UnitTests\Stat.

    • TestStat.mq5 — основной тестовый скрипт для проверки результатов вычислений
    • TestPrecision.mq5 — тест точности вычислений
    • TestBenchmark.mq5 — тест с замером производительности вычислений
  10. Tester: Расширены настройки задержки исполнения торговых запросов при тестировании. Теперь проверить торгового робота можно в еще большем количестве разнообразных торговых условий: от идеального случая без задержек до любой задержки, заданной пользователем.

    Новый MetaTrader 5 build 1485: доп режимы тестирования и графическая библиотека

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

  11. Tester: Исправлена ошибка формирования тикового объема баров при тестировании в режиме OHLC на М1.

  12. Tester: Исправлено проставление времени открытия у ордеров и позиций с точностью до миллисекунд при торговле в режиме хеджинга.

  13. Tester: Исправлена ошибка «old tick» (тик устарел), появлявшаяся при мультивалютном либо мультитаймфреймовом тестировании в режиме реальных тиков.

  14. Tester: Ускорена работа функции CopyTicks в случае, когда запрошенные тики читались из базы на диске.

  15. MetaEditor: Команды работы с версионным хранилищем исходных кодов MQL5 Storage добавлены в контекстное меню файла в Навигаторе и на панель инструментов.

  16. MetaEditor: Исправлена ошибка, приводившая к нарушению целостности локальной базы MQL5 Storage при работе более чем с 1024 файлами в хранилище.

  17. MetaEditor: Исправлены ошибки отображения дерева файлов MQL5 Storage.

  18. MetaEditor: Исправлено отображение файла после массовой замены текста.

  19. Обновлена документация.

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

★2
13 комментариев
Есть ли надежда что когда-нибудь можно будет работать на разных рынках мосбиржи (хотя бы) из одного терминала мт, не запуская копии терминала для каждого?
avatar
bestt, так это вопрос к брокеру.
avatar
OilтрейдиOil, к сожалению, нет.
avatar
А можно как-то опционально ускорить весь терминал через использование opencl или cuda? Открыл CQG-AMP посмотреть как оно..., неплохо, но загрузка ЦП (3,6 Мгц) под 70%. Открыты ленты и 5 графиков со стаканными индикаторами. Ничего лишнего уже не откроешь…
Какие брокеры поддерживают MT5 для торговли на рынке ФОРТС?
avatar

Огорчили. СНОВА нет даже настраиваемой комиссии в тестере. Это несерьёзно. И до сих пор нет возможности использовать собственные исторические данные. Открытие-Брокер полных данных тоже не даёт. Как этой балалайкой вообще пользоваться в таких условиях?

Уважаемые разработчики Метатрейдера, скажите когда будет выполнено ваше обещание о собственных дата-фидах?

Потому что прошло больше года, а результат отсутствует. И второй вопрос: когда будет настраиваемая комиссия? Удивительно, что вы не осознаёте её важность.

avatar
Blade, Да у меня БКС комиссия брокера не учитывается как комиссия а как вычеты со счета.
Это мелочь.
Но это ошибка.
Часть комиссии в колонке комиссия.
Часть в вычетах со счета.
avatar
Антон Б, а можете показать скриншот где именно в тестере показываются «вычеты со счёта»? Не нашёл такого. Я ведь о тестере писал.
avatar
Blade, Получается что и в тестере и в реальном счете брокерская комиссия не учитывается.
А она ~= биржевой.
Получается половина комиссий не учитывается.
avatar
Антон Б, я об этом и толкую. И даже если бы она учитывалась, этим всё равно невозможно пользоваться, т.к. для тестов обычно выставляют СВОЙ размер комиссии, превышающий реальную. Каждый вменяемый алготрейдер понимает зачем это надо. Разрабы MT не понимают. Но я всё же надеюсь, что здравый смысл возобладает.
avatar
есть такая хрень в метаэдиторе — открываешь папку с фалами, так она открывается и тут же закрывается… приходится соседнюю открывать и навигацией добираться
Недавно обнаружил серьезный баг в MQL5, сперва не обратил на него внимание, но потом при повторных проверках баг повторился. Суть бага в следующем.
Робот установлен на три инструмента.
При работе с объектами в роботе, по какой то причине происходит видимость данных объектов на глобальном уровне терминала между разными копиями роботов, при этом данный баг замечен при использовании OnBookEvent. Т.е. к примеру я создаю объект списка (из их стандартной поставки), активно передаю указатель на данный объект между своими объектами классов внутри одной копии робота. Но иногда видно, как объект списка в другой копии робота, содержащий 0 элементов, вдруг становится списком с содержанием 1 элемента. Уточняю, баг не в коде робота, это проявляется при выводе размера списка по условию > 0 во всех запущенных копиях одного и того же робота на разных инструментах. Список заполняется только при совершении сделок. Т.е. после совершения сделки к примеру на Si, я вижу вывод списка по данному инструменту и иногда проскакивает через данное условие список с другой копии данного робота запущенной на другом инструменте, по которому сделок не совершено ))
Если честно, то я даже не подозревал, что такое возможно, а когда стал разбираться, то был сильно удивлен. В общем MQ изобрели свой велосипед, но детские ошибки там были, есть и будут, и их терминал так и останется игрушкой для биржевых трейдеров... Писать в их техподдержку не стал, т.к. с данной платформой связываться по серьезному не планирую, да и им нужны всякие там доказательства в виде исходных кодов, а мне лень очищать готового робота что бы не засветить то, что не нужно им видеть.
avatar

теги блога MetaQuotes Software

....все тэги



UPDONW
Новый дизайн