Выпустили большое обновление платформы с массой изменений:
- Terminal: Расширен список доступных колонок в Обзоре рынка. Теперь в основном разделе вы можете включить до 40 дополнительных параметров инструментов, которые ранее были доступны только на вкладке «Детали».
- Terminal: Добавлено выделение текущего подключенного счета и текущего сервера в Навигаторе. Функция будет полезна, если вы используете множество счетов у разных брокеров.
- Terminal: Обновлен дизайн рамок у графиков. Они стали более компактными, освобождая больше пространства для полезной информации.
- Terminal: Изменен алгоритм подсчета итогов при отображении торговой истории в виде позиций. Теперь они рассчитываются по фактическим записям.
Для представления истории в виде позиций терминал использует информацию о сделках, совершенных в период, за который запрошена история. При этом показываются только позиции, которые были закрыты в этот период. Если позиция все еще открыта или время ее закрытия не попадает в выбранный интервал, она не будет отображена. В связи с этим итоговые показатели (прибыль, комиссия) при просмотре позиций и при просмотре ордеров/сделок могут отличаться.
Например, вы просматриваете историю за последнюю неделю. За нее было совершено 100 сделок, 98 из которых открыли и закрыли 20 позиций. Две последние сделки открыли новые позиции, которые в настоящий момент не закрыты.
В этом случае при просмотре истории в виде сделок вы увидите 100 записей, а также итоговые показатели, рассчитанные на их основе. При просмотре истории в виде позиций вы увидите 20 записей, собранных на основе 98 сделок. И именно эти данные будут учтены при расчете итоговых показателей.
Если брокер взимает комиссию со сделок входа, то итоговый размер комиссии при просмотре истории сделок и позиций будет отличаться, поскольку в последнем случае 2 последние сделки не будут учтены.
- Terminal: Ускорен запуск MQL5-программ.
- Terminal: Добавлен ключ /beta для инсталляционного файла терминала, позволяющий загрузить бета-версию программы вместо релизной. В обычном режиме для получения бета-версии требуется сначала установить релизную, а затем уже обновить ее. Теперь этот шаг можно пропустить, сэкономив время и трафик.
Пример запуска установки: C:\mt5setup.exe /beta
- Terminal: Исправлена ошибка в отображении маржинальных требований для биржевых акций (инструменты с типом «Exchange Stocks»).
- Terminal: Ускорена работа всех компонентов платформы за счет перехода на компилятор Clang/LLVM. В некоторых случаях ускорение достигает 20%.
- Terminal: Исправлена ошибка, не позволявшая удалить эксперта с графика, для которого нет данных.
- Terminal: Исправлено отображения заголовков графиков при работе под Wine.
- MQL5: Ускорена загрузка и компиляция MQL5 программ.
- MQL5: Теперь при двойном клике на графике MQL5-программе передается событие одиночного клика. Ранее такие события не обрабатывались.
- MQL5: Исправлена ошибка в работе функции StringTrimRight.
- MQL5: Добавлены новые функции и шейдеры DirectX 11 для 3D-визуализации. Теперь вы можете создавать мощную трехмерную графику прямо из MQL5.
Новый класс CCanvas3D является расширением класса пользовательской графики CCanvas. Он доступен в каталоге \MQL5\Include\Canvas\. В нем реализованы функции для рендеринга трехмерных объектов через DirectX API.
- Create — создание сцены.
- Attach — привязка сцены к графику.
- Destroy — уничтожение сцены.
- ObjectAdd — добавление объекта-наследника базового класса CDXObject на сцену.
- Render — полный цикл отрисовки с очисткой буферов и отрисовкой всех CDXObject, добавленных с помощью метода ObjectAdd.
- RenderBegin — начинает отрисовку сцены, заполянет буфер изображения заданным цветом (при использовании флага DX_CLEAR_COLOR) и буферы глубины (при использовании DX_CLEAR_DEPTH), а также устанавливает буфер сцены DXInputScene для шейдеров по умолчанию.
- RenderEnd — завершает отрисовку сцены и получает результат во внутренний буфер. При redraw==true выводит изображение на график, к которому присоединен.
- ViewMatrixGet — получение матрицы отображения.
- ViewMatrixSet — установка матрицы отображения. Матрица несовместима с методами ViewPositionSet, ViewRotationSet, ViewTargetSet, ViewUpDirectionsSet.
- ViewPositionSet — установка точки зрения/положения камеры.
- ViewRotationSet — установка матрицы вращения камеры.
- ViewTargetSet — установка точки, на которую направлена камера. Совместно с ViewUpDirectionsSet является альтернативой ViewRotationSet.
- ViewUpDirectionsSet — установка вертикального направления камеры. Совместно с ViewTargetSet является альтернативой ViewRotationSet.
- ProjectionMatrixGet — получение матрицы проекции.
- ProjectionMatrixSet — установка матрицы проекции.
Полная документация по новой библиотеке лежит тут.
- MQL5: Добавлена поддержка работы с базами данных SQLite прямо из MQL5. Теперь вы можете легко выполнять SQL-запросы без создания сложных обвязок. Новое расширение стандартной библиотеки берет всю внутреннюю работу на себя.
Доступны следующие функции:
- DatabaseOpen — открывает или создаёт базу данных в указанном файле
- DatabaseClose — закрывает базу данных
- DatabaseTableExists — проверяет наличие таблицы в базе данных
- DatabaseExecute — исполняет запрос к указанной базе данных
- DatabasePrepare — создает хендл запроса, который затем может быть исполнен с помощью DatabaseRead()
- DatabaseRead — выполняет переход к следующей записи в результате запроса
- DatabaseFinalize — удаляет запрос, созданный в DatabasePrepare()
- DatabaseTransactionBegin — начинает выполнение транзакции
- DatabaseTransactionCommit — завершает выполнение транзакции
- DatabaseTransactionRollback — выполняет откат транзакций
- DatabaseColumnsCount — получает количество полей в запросе
- DatabaseColumnName — получает имя поля по номеру
- DatabaseColumnType — получает тип поля по номеру
- DatabaseColumnSize — получает размер поля в байтах
- DatabaseColumnText — получает из текущей записи значение поля в виде строки
- DatabaseColumnInteger — получает из текущей записи значение типа int
- DatabaseColumnLong — получает из текущей записи значение типа long
- DatabaseColumnDouble — получает из текущей записи значение типа double
- DatabaseColumnBlob — получает из текущей записи значение поля в виде массива
- MQL5: Добавлено новое свойство MQL5-программ для выбора метода визуализации по умолчанию.
#property optimization_chart_mode "3d,InpX,InpY"
Используя его, вы можете задать вид графика, открываемого по окончании оптимизации, а также параметры программы для его осей X и Y.
- MQL5: Добавлена функция MathArctan2. Она возвращает в радианах значение угла, тангенс которого равен отношению двух указанных чисел.
double MathArctan2(
double y // y-координата точки
double x // x-координата точки
);
- MQL5: Проведена общая оптимизация программ для улучшения производительности и снижения потребления ресурсов.
- MQL5: Добавлены примеры математических расчетов, которые можно выполнять в тестере стратегий.
Вы можете найти их в каталоге \MQL5\Experts\Examples\Math 3D
- MQL5: Реализован более жесткий контроль областей видимости (namespaces).
- MQL5: Добавлена загрузка связанных библиотек при использовании библиотек .NET в MQL5-программах. Если используемая .NET библиотека требует для своей работы другие библиотеки, то компилятор попытается автоматически загрузить их из текущего каталога или из каталога \MQL5\Libraries.
- MQL5: Исправлена работа со временем в модуле MetaTrader для интеграции с Python. Теперь во всех выходных данных используется время торгового сервера, к которому подключен терминал.
- Tester: Множество новых функций и улучшений в тестере стратегий:
Пользовательские настройки для финансовых инструментов
Теперь вы можете изменять настройки основного торгового инструмента, на котором происходит тестирование/оптимизация. Вам доступны практически все параметры спецификации: объемы, режим торговли, маржинальные требования, режим исполнения и многое другое. Таким образом, для проверки советника в иных торговых условиях теперь необязательно создавать пользовательский символ и загружать в него историю. Можно просто поменять настройки стандартного инструмента.
При изменении спецификации символа, иконка настроек, а также иконка самого символа в списке помечаются звездочкой. Так вы всегда будете в курсе, что тестирование идет с пользовательскими настройками.
Последние настройки/эксперты/графики
Для быстрой настройки тестирования или оптимизации воспользуйтесь новыми командами контекстного меню. Выбирайте последние использованные настройки тестера, последние графики или программы:
- Tester: Исправлена ошибка, из-за которой символ для тестирования в настройках мог оказаться пустым.
Такое могло происходить при переключении между торговыми счетами с разным набором торговых инструментов. Как это происходит сейчас: если ранее выбранный в настройках символ отсутствует среди доступных на торговом счете, вместо него автоматически выбирается первый доступный символ из Обзора рынка.
- MetaEditor: Добавлена возможность работы с проектами С/С++ и Python прямо из MetaEditor. Теперь, используя встроенный редактор, вы можете вести мультиязычные проекты.
Если на вашем компьютере уже установлены соответствующие компиляторы, MetaEditor обнаружит их и добавит в настройки. Также вы можете самостоятельно указать пути к необходимым компонентам, перейдя к вкладке «Компиляторы». Если компоненты еще не установлены, вы можете их скачать, нажав «Установить» напротив соответствующего поля.
- MetaEditor: Теперь внутри каталога Shared Projects, предназначенного для работы с групповыми проектами через MQL5 Storage, можно создавать подпроекты. Ранее допускалось создание только одиночных проектов на верхнем уровне.
- MetaEditor: Обновлен встроенный отладчик.
- MetaEditor: Исправлено добавление заголовка функций при использовании стилизатора кода.
- MetaEditor: Команды перехода к предыдущему и следующему положению курсора теперь доступны не только в меню «Вид», но и на панели инструментов.
- MetaEditor: Исправлена загрузка иконки приложения при переоткрытии свойств проекта.
- MetaEditor: Теперь в именах проектов разрешается использовать пробелы.
- Android: Добавлена возможность быстрого перехода к пополнению/снятию средств с торгового счета на сайте брокера.
Теперь вам не нужно искать соответствующие функции в личном кабинете на сайте брокера. Команды для быстрого перехода к страницам пополнения счета и вывода средств стали доступны прямо в терминалах — в разделе счетов и торговли:
- Команды пополнения/снятия доступны только в том случае, если соответствующие функции включены для торгового счета на стороне брокера.
- Торговый терминал не производит никаких операций пополнения/снятия средств со счета. Встроенные функции лишь перенаправляют пользователя на соответствующие веб-страницы брокерской компании.
- Android: Теперь позиции в истории сортируются по дате закрытия.
- Android: Позиции, закрытые по Стоп Лоссу или Тейк Профиту, теперь подсвечиваются красными и зелеными вертикальным линиями в разделе истории.
- Android: В спецификацию торгового инструмента добавлены новые поля:
- Категория — свойство используется для дополнительной маркировки финансовых инструментов. Например, в нем могут быть указаны секторы рынка, к которым относится символ: Agriculture, Oil & Gas и т.д. Показывается, только если соответствующая информация предоставляется брокером.
- Биржа — здесь указывается название биржи или площадки, на которой торгуется символ. Показывается, только если соответствующая информация предоставляется брокером.
- Android: Добавлена индикация состояния «Маржин колл» в разделе торговли. При его наступлении параметры «Маржа», «Свободная маржа» и «Уровень маржи» становятся красными.
- Android: Исправлено отображение кнопки перехода к разделу одноразовых паролей на планшетах.
- Android: Многочисленные исправления и улучшения.
- iPhone/iPad: Добавлена возможность быстрого перехода к пополнению/снятию средств с торгового счета на сайте брокера. Подробности работы приведены выше в описании изменений терминала для Android.
- iPhone/iPad: Добавлена поддержка темной схемы оформления для iOS/iPadOS.
- iPhone/iPad: Раздел работы с OTP паролями теперь доступен и в версии для iPad.
- iPhone/iPad: Позиции, закрытые по Стоп Лоссу или Тейк Профиту, теперь подсвечиваются красными и зелеными вертикальным линиями в разделе истории.
- iPhone/iPad: Теперь позиции в истории сортируются по дате закрытия. Если позиция еще не закрыта, для сортировки используется дата открытия.
- iPhone/iPad: Многочисленные исправления и улучшения.
- Исправления по крешлогам.
Обновление доступно через систему Live Update. Всегда бесплатную версию терминала MetaTrader 5 молжно сказать по ссылке:
https://www.metatrader5.com/en/download
Пример 3D визуализаций: MQL5\Experts\Examples\Math 3D Morpher\Math 3D Morpher.mq5
MQL5\Experts\Examples\Correlation Matrix 3D\Correlation Matrix 3D.mq5
Если можно, то как это сделать?
Некоторое время назад пробовал, но маркет-даты кроме форексных котировок и металлов, если правильно помню, не увидел.
На крайняк скачать склейку с сайта финама и загнать в mt5, как собственный тикер
На тестовых серверах MOEX нельзя тестировать, так как там тестовый поток котировок, кардинально отличающийся от реального.
Ну или так:
— скачиваете обычный MetaTrader 5
— открываете новый демо счет через File -> Open an Account
— после выбираете кликом нужные символы тут
нУЖНА ПОМОЩЬ, при запуске MT5 появляется звук, 4 окна и приложение закрывается, что делать?