Fernando Carreiro # : Как это повлияет на продукты Market в будущем? Я предполагаю, что процесс валидации потребует, чтобы продукт был составлен без него, чтобы удовлетворить самый низкий общий знаменатель.
Вы можете на лету узнать возможности процессора, на котором запущен терминал.
С помощью строкового макроса __CPU_ARCHITECTURE__ можно узнать и проверить, для какого набора команд был скомпилирован EX5-файл.
Если загрузка не удалась, то об этом будет сказано:
your CPU architecture does not allow to run the file 'test.ex5', AVX512 required, you have AVX2
-------------------------
Кое-что о MQL5 Cloud Network и MQL5 VPS в связи с AVX512 и AVX2 -
vps-сервере, не проблема.
В MetaTrader VPS Hosting последние несколько серверов без поддержки AVX2 будут заменены на современные уже к концу недели, и перенести программы x64/avx/avx2 в наше облако можно будет без проблем. На сторонних VPS достаточно проверить марку процессора, воспользоваться программой CPU-Z или посмотреть на стартовый баннер терминала.
Явный переход на специализированные версии терминалов для современных процессоров - большой и правильный шаг. Мы серьезно нацелены на повышение производительности всей платформы, и теперь у нас есть свобода действий, чтобы напрямую внедрять новые методы оптимизации, не строя костылей.
Терминалы MetaTrader 5 в облаке запускаются сразу в сборках AVX2:
Windows Server 2022 build 20348 on Xen, 32 x AMD EPYC 754232 -Core, AVX2 , 61 / 71 Gb memory, 149 / 255 Gb disk, admin, GMT+ 1
В MQL5 Cloud Network верхним пределом для EX5 будет AVX2, а задания будут автоматически распределяться между агентами с необходимым набором процессоров.
То есть через пару дней все будет работать прозрачно. Завтра мы выпускаем открытую бету для брокеров, а через неделю будет релиз.
В ближайшие два месяца мы планируем крупное обновление компилятора MQL5 с более полной поддержкой набора инструкций AVX2/512. Плюс оптимизация внутренних функций языка, что даст хорошее ускорение.
Обновленная версия платформы MetaTrader 5 будет выпущена в четверг, 21 сентября 2023 года. Она содержит ряд исправлений и улучшений платформы.
Терминал клиента MetaTrader 5 build 3980
Терминал: Улучшены новые торговые отчеты. Исправлено отображение общей стоимости свопов и графика прибыли по символам.
Терминал: Оптимизированы страницы ввода и вывода средств. Для получения более подробной информации о новой интеграции платформы с платежными системами, пожалуйста, ознакомьтесь с примечаниями к выпуску build 3950.
Терминал: Оптимизированы пересчеты финансовых операций по всей платформе, включая тестер стратегий. Теперь прибыль, маржа и многие другие параметры рассчитываются быстрее.
MQL5: Добавлена обработка выводов модели ONNX типа 'Последовательность карт'.
Для моделей ONNX, предоставляющих в выходном слое последовательности карт (ONNX_TYPE_SEQUENCE of ONNX_TYPE_MAP), в качестве выходного параметра следует передавать динамический или фиксированный массив структур. Первые два поля этой структуры должны соответствовать типам ключа и значения ONNX_TYPE_MAP и быть фиксированными или динамическими массивами.
Рассмотрим модель iris.onnx, созданную следующим скриптом Python: .
from sys import argv
data_path=argv[0]
last_index=data_path.rfind("\\")+1
data_path=data_path[0:last_index]
from sklearn.datasets import load_iris
iris_dataset = load_iris()
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(iris_dataset['data'], iris_dataset['target'], random_state=0)
from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors=1)
knn.fit(X_train, y_train)
# Convert into ONNX format
from skl2onnx import convert_sklearn
from skl2onnx.common.data_types import FloatTensorType
initial_type = [('float_input', FloatTensorType([None, 4]))]
onx = convert_sklearn(knn, initial_types=initial_type)
path = data_path+"iris.onnx"
with open(path, "wb") as f:
f.write(onx.SerializeToString())
Откройте созданный onnx-файл в MetaEditor:
Последовательность Map передается как "output_probability". Она имеет ключ типа INT64 (что соответствует long в MQL5) и значение типа float. Для получения данных из этого вывода объявляем следующую структуру: .
struct MyMap
{
long key[];
floatvalue[];
};
Здесь мы использовали динамические массивы с соответствующими типами. В данном случае можно использовать фиксированные массивы, так как Map для этой модели всегда содержит 3 пары ключ+значение.
Так как возвращается последовательность Map, то в качестве параметра для получения данных из вывода output_probability следует передать массив таких структур. Этот массив может быть динамическим или фиксированным, в соответствии со свойствами конкретной модели. Пример:
//--- declare an array to receive data from the output layer output_probability
MyMap output_probability[];
...
//--- model running
OnnxRun(model,ONNX_DEBUG_LOGS,float_input,output_label,output_probability);
Добавлен раздел "Связаться с брокером" в главном меню веб-терминала.
Добавлена обработка ошибок при SSL-аутентификации. Данный тип аутентификации не поддерживается в веб-терминале. Вместо него можно использовать одноразовые пароли.
Исправлена ссылка на скачивание десктопной платформы в главном меню.
Исправлен диалог управления счетами. Если брокер не предоставляет возможность открытия демо- или реального счета, соответствующий пункт меню будет скрыт.
Обновление будет доступно через систему Live Update.
ONNX - открытый формат для моделей машинного обучения - пост #62
Развертывание моделей (глубокого) машинного обучения с помощью ONNX - пост #63
Рекуррентные нейронные сети | LSTM для прогнозирования движения цены для торговых алгоритмов - пост #64
Полный курс по искусственному интеллекту | Самоучитель искусственного интеллекта для начинающих | Edureka - пост #230
Открытая биржа нейронных сетей (ONNX): 7.1. Введение в ONNX - учебник 1 - пост #241 7.2. Вызовы в глубоком обучении - учебник 2 - пост #242 7.3. Все о ONNX - Учебное пособие 3 - пост #243 7.4. Принципы проектирования - Учебное пособие 4 - пост #244 7.5. Формат файла ONNX - Учебник 5 - пост #245 7.6. Тип данных ONNX - Учебник 6 - пост #246 7.7. Пример машинного обучения - Учебник 7 - пост #247 7.8. ONNX Runtime - Tutorial 8 - post #248 7.9. ONNX Model Zoo - Учебник 9 - пост #249 7.10. ONNX Model Zoo Demo - Tutorial 10 - post #250 7.11. PyTorch to Tensorflow Demo - Tutorial 11 - post #251
MIT Introduction to Deep Learning: 8.1. Введение в глубокое обучение - Лекция 1 - пост #9 8.2. Рекуррентные нейронные сети и трансформаторы - Лекция 2 - пост #10 8.3. Конволюционные нейронные сети - Лекция 3 - пост #11 8.4. Глубокое генеративное моделирование - Лекция 4 - пост #12 8.5. Reinforcement Learning - Лекция 5 - пост #13 8.6. Новые рубежи глубокого обучения - Лекция 6 - пост #14 8.7. LiDAR для автономного вождения - Лекция 7 - пост #15 8.8. Автоматическое распознавание речи - Лекция 8 - пост #16 8.9. ИИ для науки - Лекция 9 - пост #17 8.10. Неопределенность в глубоком обучении - Лекция 10 - пост #18
Регрессия - это задача предсказания реального значения по немаркированному примеру. Известным примером регрессии является оценка стоимости бриллианта на основе таких характеристик, как размер, вес, цвет, чистота и т. д.
Для оценки точности предсказаний регрессионной модели используются так называемые метрики регрессии. Несмотря на схожие алгоритмы, регрессионные метрики семантически отличаются от аналогичных функций потерь.
Regression is a task of predicting a real value from an unlabeled example. The so-called regression metrics are used to assess the accuracy of regression model predictions.
Иногда я получаю личные сообщения от тех, кто хочет научиться создавать собственные советники или индикаторы. Несмотря на то что на этом сайте и в интернете в целом есть много материала, в том числе очень хорошие ресурсы с примерами, новичкам все равно нужна помощь. Некоторые пользователи стремятся к большей последовательности в изложении материала, другие требуют ясности или чего-то еще. Иногда пользователи просят: "Добавьте комментарии к коду работающего советника, я все пойму и сделаю такой же сам!" Но, увидев сотню строк кода, они пугаются, путаются и отказываются от этой идеи. Вместо этого они говорят: "Лучше создайте советник для меня".
Как бы то ни было, есть люди, которые все еще хотят "понять все". Вот тогда-то и пригодится пошаговое руководство, объясняющее все от простого к сложному. Так вот, такого пошагового руководства по языку MQL5 пользователи не нашли.
Я начинаю эту серию статей специально для новичков, для тех, кто впервые сталкивается с программированием и хочет его освоить. Эти статьи предназначены для трейдеров, которые больше не хотят зависеть от программистов и желают понять, как все работает. Статьи предлагают последовательную и подробную информацию, с картинками и примерами, направляя читателей к уровню "владения языком MQL5".
Используйте подробные данные Nasdaq, чтобы улучшить свои торговые стратегии за счет более точного принятия решений и эффективного управления рисками. Это уникальная возможность для тех, кто стремится улучшить свои результаты. В отличие от традиционных минутных или часовых баров, подписка предлагает доступ к тиковым данным, предоставляя информацию о каждом изменении цены и обеспечивая более глубокий анализ рынка.
Что вы получаете с подпиской:
Точность - получайте высококачественные данные о каждом изменении цены, чтобы добиться более точных результатов тестирования стратегий и свести к минимуму риск ошибок.
Глубина - доступ к 20-летней истории тиков для оценки поведения активов в различных рыночных условиях и лучшей подготовки к волатильности.
Мгновенная реакция - рыночные данные в реальном времени позволяют оперативно реагировать на изменения, что крайне важно в условиях активной торговли.
Для удовлетворения различных потребностей доступны четыре плана подписки: данные в реальном времени без исторического доступа и данные в реальном времени с историей за 12 месяцев, 36 месяцев или 20 лет. Планы подписки делятся на профессиональные и непрофессиональные.
Непрофессиональные планы предназначены для частных лиц, которые используют данные в личных некоммерческих целях для управления личными активами, а не для третьих лиц. Планы Nasdaq Pro предназначены для частных лиц или организаций, использующих данные в коммерческих целях, торгующих от имени работодателей или создающих добавленную стоимость. Зарегистрированные инвестиционные консультанты также классифицируются как профессионалы.
Как бесплатно протестировать эту новую функцию:
Откройте новый демо-счет на сервере MetaQuotes-Demo. Для этого выберите MetaQuotes Ltd из списка компаний или найдите ее с помощью поиска. Далее выберите "Открыть демо-счет" и укажите желаемый сервер и свои данные.
В окне "Обзор рынка" нажмите на значок "Плюс", чтобы добавить любой нужный символ, начав вводить его или название компании в поле поиска.
Как только нужный символ появится в списке, выделите его мышью и нажмите Enter. Символ появится в списке символов в Market Watch.
Щелкните правой кнопкой мыши на этом символе и выберите в меню пункт "Окно графика".
Без подписки вы будете получать данные с 15-минутной задержкой и не будете иметь доступа к тиковой истории изменения цен. Чтобы подписаться на данные в реальном времени, дважды щелкните по символу. Откроется окно с доступными планами подписки.
Выберите подходящий план и подключите подписку к демо-счету в MetaTrader 5, чтобы тестировать свои торговые стратегии на реальных данных, проводить технический анализ или создавать собственные индикаторы:
Используйте данные Nasdaq для подтверждения сигналов других индикаторов. Высокоточные тиковые данные позволяют более точно оценивать сигналы различных технических индикаторов. Подтвердите или опровергните их эффективность на основе реальных движений рынка - это поможет усовершенствовать ваши торговые стратегии и снизить вероятность принятия неверных решений.
Комбинируйте данные с инструментами MetaTrader 5 для расширенного технического анализа. Тиковые данные в реальном времени в сочетании с обширным набором инструментов платформы позволяют проводить глубокий анализ рынка. Используйте осцилляторы, трендовые индикаторы и индикаторы объема вместе с данными Nasdaq, чтобы принимать более обоснованные решения.
Создавайте собственные индикаторы и советники. Имея доступ к подробным тиковым данным, вы можете создавать и тестировать уникальные торговые алгоритмы, улавливающие малейшие колебания рынка.
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с помощью сборки 3902
Как это повлияет на продукты Market в будущем?
Я предполагаю, что процесс валидации потребует, чтобы продукт был скомпилирован без него, чтобы удовлетворить самый низкий общий знаменатель.
Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.01 13:24
В продажу будут приниматься только программы, скомпилированные в режиме "x64 Regular".
Скорее всего, в будущем мы расширим возможности рынка.
Релиз MT5 запланирован на пятницу следующей недели. Поэтому мы просим вас активно тестировать новые режимы.
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.01 18:28
В текущей бета-версии 3905, доступной на MetaQuotes-Demo, мы расширили информацию для MQL5:
Вы можете на лету узнать возможности процессора, на котором запущен терминал.
С помощью строкового макроса __CPU_ARCHITECTURE__ можно узнать и проверить, для какого набора команд был скомпилирован EX5-файл.
Если загрузка не удалась, то об этом будет сказано:
-------------------------
Кое-что о MQL5 Cloud Network и MQL5 VPS в связи с AVX512 и AVX2 -
vps-сервере, не проблема.
В MetaTrader VPS Hosting последние несколько серверов без поддержки AVX2 будут заменены на современные уже к концу недели, и перенести программы x64/avx/avx2 в наше облако можно будет без проблем. На сторонних VPS достаточно проверить марку процессора, воспользоваться программой CPU-Z или посмотреть на стартовый баннер терминала.
Явный переход на специализированные версии терминалов для современных процессоров - большой и правильный шаг. Мы серьезно нацелены на повышение производительности всей платформы, и теперь у нас есть свобода действий, чтобы напрямую внедрять новые методы оптимизации, не строя костылей.
Терминалы MetaTrader 5 в облаке запускаются сразу в сборках AVX2:
-------------------------
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.06 11:03
Добавлено отображение и выбор режима компиляции непосредственно в панели инструментов:
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.06 13:07
В MQL5 Cloud Network верхним пределом для EX5 будет AVX2, а задания будут автоматически распределяться между агентами с необходимым набором процессоров.
То есть через пару дней все будет работать прозрачно. Завтра мы выпускаем открытую бету для брокеров, а через неделю будет релиз.
Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.06 13:58
...Вопрос:
visual studio и что она позволит, если не писать на C# например?
...и ответ:
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Компиляция MQL5-программ с набором инструкций AVX / AVX2 + FMA3 / AVX512 + FMA3 с билдом 3902
Ренат Фатхуллин, 2023.09.07 13:07
Установив Visual Studio, вы можете компилировать файлы C/C++ прямо в MetaEditor.
Например, это позволяет легко компилировать EXE-файлы или DLL-библиотеки непосредственно в MQL5-проектах/каталогах:
------------------------
Анонс:
MetaTrader 5 Platform Beta Build 3930: Пополнение/снятие средств в терминале и поддержка AVX-инструкций для ускорения работы программ
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Новая платформа MetaTrader 5 build 3980: Улучшения и исправления
MetaQuotes, 2023.09.21 15:01
Обновленная версия платформы MetaTrader 5 будет выпущена в четверг, 21 сентября 2023 года. Она содержит ряд исправлений и улучшений платформы.
Терминал клиента MetaTrader 5 build 3980
Для моделей ONNX, предоставляющих в выходном слое последовательности карт (ONNX_TYPE_SEQUENCE of ONNX_TYPE_MAP), в качестве выходного параметра следует передавать динамический или фиксированный массив структур. Первые два поля этой структуры должны соответствовать типам ключа и значения ONNX_TYPE_MAP и быть фиксированными или динамическими массивами.
Рассмотрим модель iris.onnx, созданную следующим скриптом Python:
. Откройте созданный onnx-файл в MetaEditor:
Последовательность Map передается как "output_probability". Она имеет ключ типа INT64 (что соответствует long в MQL5) и значение типа float. Для получения данных из этого вывода объявляем следующую структуру:
. Здесь мы использовали динамические массивы с соответствующими типами. В данном случае можно использовать фиксированные массивы, так как Map для этой модели всегда содержит 3 пары ключ+значение.
Так как возвращается последовательность Map, то в качестве параметра для получения данных из вывода output_probability следует передать массив таких структур. Этот массив может быть динамическим или фиксированным, в соответствии со свойствами конкретной модели. Пример:
Веб-терминал MetaTrader 5 build 3980
Обновление будет доступно через систему Live Update.
ONNX и MQL5 Copilot
Форум
Статьи
CodeBase
Документация
Обучение ONNX для торговли - видео:
7.1. Введение в ONNX - учебник 1 - пост #241
7.2. Вызовы в глубоком обучении - учебник 2 - пост #242
7.3. Все о ONNX - Учебное пособие 3 - пост #243
7.4. Принципы проектирования - Учебное пособие 4 - пост #244
7.5. Формат файла ONNX - Учебник 5 - пост #245
7.6. Тип данных ONNX - Учебник 6 - пост #246
7.7. Пример машинного обучения - Учебник 7 - пост #247
7.8. ONNX Runtime - Tutorial 8 - post #248
7.9. ONNX Model Zoo - Учебник 9 - пост #249
7.10. ONNX Model Zoo Demo - Tutorial 10 - post #250
7.11. PyTorch to Tensorflow Demo - Tutorial 11 - post #251
8.1. Введение в глубокое обучение - Лекция 1 - пост #9
8.2. Рекуррентные нейронные сети и трансформаторы - Лекция 2 - пост #10
8.3. Конволюционные нейронные сети - Лекция 3 - пост #11
8.4. Глубокое генеративное моделирование - Лекция 4 - пост #12
8.5. Reinforcement Learning - Лекция 5 - пост #13
8.6. Новые рубежи глубокого обучения - Лекция 6 - пост #14
8.7. LiDAR для автономного вождения - Лекция 7 - пост #15
8.8. Автоматическое распознавание речи - Лекция 8 - пост #16
8.9. ИИ для науки - Лекция 9 - пост #17
8.10. Неопределенность в глубоком обучении - Лекция 10 - пост #18
=======================
Оценка моделей ONNX с помощью метрик регрессии
Регрессия - это задача предсказания реального значения по немаркированному примеру. Известным примером регрессии является оценка стоимости бриллианта на основе таких характеристик, как размер, вес, цвет, чистота и т. д.
Для оценки точности предсказаний регрессионной модели используются так называемые метрики регрессии. Несмотря на схожие алгоритмы, регрессионные метрики семантически отличаются от аналогичных функций потерь.
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
Как начать работать с MQL5
Сергей Голубев, 2024.03.23 06:33
Осваиваем MQL5 от новичка до профи (часть I): Начало программирования
Иногда я получаю личные сообщения от тех, кто хочет научиться создавать собственные советники или индикаторы. Несмотря на то что на этом сайте и в интернете в целом есть много материала, в том числе очень хорошие ресурсы с примерами, новичкам все равно нужна помощь. Некоторые пользователи стремятся к большей последовательности в изложении материала, другие требуют ясности или чего-то еще. Иногда пользователи просят: "Добавьте комментарии к коду работающего советника, я все пойму и сделаю такой же сам!" Но, увидев сотню строк кода, они пугаются, путаются и отказываются от этой идеи. Вместо этого они говорят: "Лучше создайте советник для меня".
Как бы то ни было, есть люди, которые все еще хотят "понять все". Вот тогда-то и пригодится пошаговое руководство, объясняющее все от простого к сложному. Так вот, такого пошагового руководства по языку MQL5 пользователи не нашли.
Я начинаю эту серию статей специально для новичков, для тех, кто впервые сталкивается с программированием и хочет его освоить. Эти статьи предназначены для трейдеров, которые больше не хотят зависеть от программистов и желают понять, как все работает. Статьи предлагают последовательную и подробную информацию, с картинками и примерами, направляя читателей к уровню "владения языком MQL5".
Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий
Подписка на данные Nasdaq в реальном времени
MetaQuotes, 2024.09.19 14:35
Используйте подробные данные Nasdaq, чтобы улучшить свои торговые стратегии за счет более точного принятия решений и эффективного управления рисками. Это уникальная возможность для тех, кто стремится улучшить свои результаты. В отличие от традиционных минутных или часовых баров, подписка предлагает доступ к тиковым данным, предоставляя информацию о каждом изменении цены и обеспечивая более глубокий анализ рынка.
Что вы получаете с подпиской:
Для удовлетворения различных потребностей доступны четыре плана подписки: данные в реальном времени без исторического доступа и данные в реальном времени с историей за 12 месяцев, 36 месяцев или 20 лет. Планы подписки делятся на профессиональные и непрофессиональные.
Как бесплатно протестировать эту новую функцию:
Без подписки вы будете получать данные с 15-минутной задержкой и не будете иметь доступа к тиковой истории изменения цен. Чтобы подписаться на данные в реальном времени, дважды щелкните по символу. Откроется окно с доступными планами подписки.
Выберите подходящий план и подключите подписку к демо-счету в MetaTrader 5, чтобы тестировать свои торговые стратегии на реальных данных, проводить технический анализ или создавать собственные индикаторы: