L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 2936

 
Vladimir Perervenko #:

Eh bien, il est indiqué : ONNX version = 1.2.1 ; opset version = 7. Ce n'est pas clair, mais il est évident que vos paramètres ne répondent pas à ces exigences.

Mon système : Windows 10 build 19045. D'après letableau, cela devrait fonctionner (1.2.2 > 1.2.1 et 19045 > 19041).

D'après la deuxième ligne du tableau : Windows 10, version 2004 (build 19041) ONNX version = 1.2.2, 1.3, et 1.4 opset version = 7, 8, et 9.

PS. Le problème vient peut-être du fait que j'ai la version Home de Windows.
 
Renat Fatkhullin projet public ONNX.Price.Prediction dans la section des projets MetaEditor communs.

Je n'ai rien trouvé de tel. Dans la liste des projets publics avec la lettre O, je n'ai qu'un seul projet - votre projet OpenCL.Seascape.

 
Aleksey Nikolayev #:

Je n'en ai pas trouvé. Dans la liste des projets publics avec la lettre O, je n'ai qu'un seul projet - votre projet OpenCL.Seascape.

Maintenant disponible :



Inside a simple model training in Python with model.onnx generation, Python inversion and inversion in MQL5.

Dans la version bêta du MT5 d'hier, nous avons fait une petite erreur dans la fonction OnnxRun, demain nous la corrigerons et la publierons.

 
Renat Fatkhullin #:

Disponible dès maintenant :



Formation à un modèle simple en Python avec génération de model.onnx, inversion en Python et inversion en MQL5.

Dans la version bêta du MT5 d'hier, nous avons fait une petite erreur dans la fonction OnnxRun, demain nous la corrigerons et la mettrons à votre disposition.

Comme vous l'avez dit, elle donne l'erreur : failed, OnnxSetInputShape error 4024.

Je ne comprends pas où le tableau de modèles est déclaré et défini. Dans le fichier python ?

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

Comme vous l'avez dit, l'erreur suivante apparaît : failed, OnnxSetInputShape error 4024 (échec, erreur OnnxSetInputShape 4024)

Je ne comprends pas où le tableau de modèles est déclaré et défini. Dans un fichier python ?

Regardez dans les logs - quelle version de l'API ONNX est définie :

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]

Mettez la dernière version des bibliothèques ONNX Runtime 1.14 de l'archive (elles sont signées par Microsoft) dans la racine du terminal à côté des fichiers exe et réessayez.

Il y a maintenant une erreur dans la vérification des paramètres :

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


Le modèle de tableau en tant que nom de fichier court est apparu automatiquement lorsque vous ajoutez des ressources au projet :


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

Regardez dans les logs - quelle version de l'API ONNX est définie :

Mettez la dernière version des bibliothèques ONNX Runtime 1.14 de l'archive (elles sont signées par Microsoft) à la racine du terminal à côté des fichiers exe et réessayez.

Il y a maintenant une erreur dans la vérification des paramètres :

Avant de copier les bibliothèques à partir de l'archive, il y avait un message dans le journal :

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

Après avoir copié les bibliothèques dans le journal :

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]

et dans l'onglet experts :

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

Le mode opératoire indique de fermer les positions courtes sur le Jew et de rechercher un achat...

Il y a une bonne chance de hausse pour 2-3 jours

Eh bien, comme je l'ai ordonné...

 
Renat Fatkhullin #:

Il sera disponible dans le mart, dans le testeur également, y compris dans le réseau Cloud.

ONNX Runtume sera réécrit et repensé pour ne pas dépendre de bibliothèques système obsolètes.

Les fichiers ONNX sont facilement inclus dans les projets, cryptés et compressés dans des fichiers EX5. Vous obtenez des robots propres à partir d'un seul fichier.



Schéma de fonctionnement :

  1. Entraîner le modèle à côté, par exemple en Python
  2. Le convertir en onnx
  3. L'incorporer dans le robot et l'utiliser (le trayning n'est pas disponible, seulement l'inférence)

Je ne comprends pas.
Comment interrogez-vous les modèles ? Pour l'instant, j'interroge en Python TensorFlow, mais ici comment ?
 
Renat Fatkhullin #:

Disponible dès maintenant :



Formation à un modèle simple en Python avec génération de model.onnx, inversion en Python et inversion en MQL5.

Dans la version bêta du MT5 d'hier, nous avons fait une petite erreur dans la fonction OnnxRun, demain nous la corrigerons et la mettrons à votre disposition.

Où se trouvent ces projets ? Comment y accéder ?
 
Evgeny Dyuka #:
Je suis confus.
Comment interrogez-vous les modèles ? Maintenant, j'interroge en Python TensorFlow, mais ici, comment ?
Evgeny Dyuka #:
Où sont ces projets ? Comment y accéder ?

Allez dans l'éditeur et regardez dans le panneau du bas "Projets publics", vous y verrez "ONNX.Price.Prediction".

Dans le menu contextuel du projet, cliquez sur Join.


Le projet possède un script Python d'entraînement et un modèle prêt à l'emploi dans model.onnx

Pour exécuter la formation, installez Python (3.10 par exemple), livrez les paquets et cliquez sur Compile directement dans MetaEditor sur le fichier PricePredictionTraining.py - la formation commencera.

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



Vous pouvez exécuter la prédiction en exécutant le fichier PricePrediction.py lors de la compilation :



Pour information, MetaEditor peut :

  • compiler des projets C++ avec Visual Studio installé
  • exécuter des programmes Python

Les compilateurs sont configurés dans Outils -> Options -> Compilateurs :