Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 2935

 
Vladimir Perervenko #:

Ну там же указано: ONNX version = 1.2.1; opset version = 7. Что это непонятно, но явно Ваши установки не соответствуют этим требованеям. 

Моя система: Windows 10 build 19045. По табличке должно работать (1.2.2 > 1.2.1 and 19045 > 19041).

Исхожу из второй строки таблички: Windows 10, version 2004 (build 19041) ONNX version = 1.2.2, 1.3, and 1.4 opset version = 7, 8, and 9

PS. Возможно, проблема в том, что у меня Home версия Windows.
 
Renat Fatkhullin #:
Для примера можете посмотреть публичный проект ONNX.Price.Prediction в разделе общих проектов MetaEditor.

Не нашёл такого. В списке публичных проектов на букву O у меня есть только один проект - ваш OpenCL.Seascape

 
Aleksey Nikolayev #:

Не нашёл такого. В списке публичных проектов на букву O у меня есть только один проект - ваш OpenCL.Seascape

Теперь доступно:



Внутри простейшая тренировка модели на Питоне с генерацией model.onnx, питоновский инверенс и инференс на MQL5.

Во вчерашней бете МТ5 внесли небольшую ошибку в функции OnnxRun, завтра исправим и выложим

 
Renat Fatkhullin #:

Теперь доступно:



Внутри простейшая тренировка модели на Питоне с генерацией model.onnx, питоновский инверенс и инференс на MQL5.

Во вчерашней бете МТ5 внесли небольшую ошибку в функции OnnxRun, завтра исправим и выложим

Как вы и сказали, выдаёт ошибку: failed, OnnxSetInputShape error 4024

По коду не понял где объявляется и определяется массив model. В питоновском файле?

long handle=OnnxCreateFromBuffer(model);
 
Aleksey Nikolayev #:

Как вы и сказали, выдаёт ошибку: failed, OnnxSetInputShape error 4024

По коду не понял где объявляется и определяется массив model. В питоновском файле?

Посмотрите в логи - какая версия ONNX API определяется:

2023.02.27 15:16:56.060 Scripts script ONNX.Price.Prediction (EURUSD,H1) loaded successfully
2023.02.27 15:16:56.107 ONNX    initialized [API version 1.14.0]

Подложите в корень терминала рядом с exe файлами последнюю версию библиотек ONNX Runtime 1.14 из архива (они подписаны Microsoft) и попробуйте снова.

Сейчас ошибка в проверке параметров:

ONNX.Price.Prediction (EURUSD,H1)       failed, OnnxRun error 5807


Массив model как краткое имя файла появился автоматически, когда вы добавляете ресурсы в проект:


'ONNX.Price.Prediction.mqproj'
'model.onnx' as 'const uchar model[89590]'
'ONNX.Price.Prediction.mq5'
code generated
0 errors, 0 warnings, 151 msec elapsed
Файлы:
 
Renat Fatkhullin #:

Посмотрите в логи - какая версия ONNX API определяется:

Подложите в корень терминала рядом с exe файлами последнюю версию библиотек ONNX Runtime 1.14 из архива (они подписаны Microsoft) и попробуйте снова.

Сейчас ошибка в проверке параметров:

До копирования библиотек из вашего архива было в журнале:

2023.02.27 17:11:13.394 Scripts script ONNX.Price.Prediction (EURUSD,H1) loaded successfully
2023.02.27 17:11:13.500 ONNX    entry point 'OrtGetApiBase' not found

после копирования библиотек в журнале:

2023.02.27 17:18:26.805 Scripts script ONNX.Price.Prediction (EURUSD,H1) loaded successfully
2023.02.27 17:18:27.124 ONNX    initialized [API version 1.14.0]

и во вкладке эксперты:

2023.02.27 17:18:27.151 ONNX.Price.Prediction (EURUSD,H1)       failed, OnnxRun error 5807
 
mytarmailS #:

МО говорит - закрывайте шорты по евре и ищите покупки..

Есть большая вероятность роста на дня 2-3

ну что, как и заказывал...

 
Renat Fatkhullin #:

В маркете будут доступны, в тестере тоже, включая Cloud Network.

ONNX Runtume перепишем и переделаем, чтобы не зависеть от устаревших системных библиотек.

ONNX файлы легко включаются в проекты, шифруются и сжимаются внутри EX5 файлов. Получаются чистые роботы из одного файла.



Схема работы:

  1. Натренировать модель на стороне, например в Python
  2. Сконвертировать ее в onnx
  3. Включить в робота и использовать (трейнинг недоступен, только инференс)

Недопонял.
А опрос моделей как происходит? Сейчас я опрашиваю в Python TensorFlow, а здесь как?
 
Renat Fatkhullin #:

Теперь доступно:



Внутри простейшая тренировка модели на Питоне с генерацией model.onnx, питоновский инверенс и инференс на MQL5.

Во вчерашней бете МТ5 внесли небольшую ошибку в функции OnnxRun, завтра исправим и выложим

А где эти проекты? Как в них попасть?
 
Evgeny Dyuka #:
Недопонял.
А опрос моделей как происходит? Сейчас я опрашиваю в Python TensorFlow, а здесь как?
Evgeny Dyuka #:
А где эти проекты? Как в них попасть?

Зайдите в редактор и посмотрите в нижней панели "Public Projects", в нем увидите "ONNX.Price.Prediction".

Из контекстного меню на проекте нажмите Join.


В проекте есть как обучающий питоновский скрипт, так и готовая модель в model.onnx

Чтобы запустить обучение, поставьте Питон (3.10 например), доставьте пакеты и нажмите Compile прямо в MetaEditor на файле PricePredictionTraining.py - запустится обучение.

python.exe -m pip install --upgrade pip
pip install --upgrade tensorflow
pip install --upgrade pandas
pip install --upgrade scikit-learn
pip install --upgrade matplotlib
pip install --upgrade tqdm
pip install --upgrade metatrader5
pip install --upgrade onnx==1.12
pip install --upgrade tf2onnx



Выполнить предсказание можно запуском файла PricePrediction.py на компиляцию:



Для информации, MetaEditor может:

  • компилировать С++ проекты с помощью установленного Visual Studio
  • запускать питоновские программы

Компиляторы настраиваются в Tools -> Options -> Compilers: