MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 31
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Compiler des scripts python dans l'éditeur signifie les exécuter dans l'éditeur.
Examinez les résultats dans les fenêtres d'erreur et le journal. Le journal montre la sortie principale, et les fenêtres d'erreur montrent la sortie stderr.
Compiler des scripts python dans l'éditeur signifie les exécuter dans l'éditeur.
Examinez les résultats dans les fenêtres d'erreur et le journal. Le journal montre la sortie principale et la fenêtre d'erreur montre la sortie stderr.
Je vois. Il n'y a aucune erreur dans la fenêtre d'erreur,
mais dans la fenêtre du journal, le script attend probablement mon action.
D'après ce que je comprends, il n'y a tout simplement pas de retour d'information (probablement pas encore).
J'essaie ensuite d'exécuter l'exemple du message n° 1 (https://www.mql5.com/ru/forum/306688 )- j'ai installé le paquet matplotlib et MetaTrader5.
J'essaie d'exécuter l'exemple du premier message
Dans les erreurs
Dans le journal
et rien ne se passe (le terminal fonctionne en même temps).
Compiler des scripts python dans l'éditeur signifie les exécuter dans l'éditeur.
Examinez les résultats dans les fenêtres d'erreur et le journal. Le journal montre la sortie principale et les fenêtres d'erreur montrent la sortie stderr.
Le script .py ne compilera donc pas en .ex5 ?
Et lancez-la depuis le navigateur.
Je vois. Il n'y a pas d'erreurs dans la fenêtre "Erreurs",
mais dans la fenêtre "Log", le script est probablement en train d'attendre mon action.
D'après ce que je comprends, il n'y a tout simplement pas de retour d'information (probablement pas encore).
J'essaie ensuite d'exécuter l'exemple du message n° 1 (https://www.mql5.com/ru/forum/306688 )- j'ai installé le paquet matplotlib et MetaTrader5.
J'essaie d'exécuter l'exemple du premier message
Dans les erreurs
Dans le journal
et rien ne se passe (le terminal est en cours d'exécution).
La bibliothèque MetaTrader5 n'est pas installée, faites-le :
tout fonctionne :
Donc, le script .py ne sera pas compilé en .ex5 ?
Et lancez-la depuis le navigateur.
Bien sûr, il ne sera pas compilé, mais sera visible dans le navigateur en tant que programme *.py et s'exécutera de manière cachée dans un fil d'exécution terminal séparé.
Communication avec le terminal via la bibliothèque Python de MetaTrader 5.
Non fourni avec la bibliothèque MetaTrader5, faites-le :
tout fonctionne :
La bibliothèque est installée :
(a été mis en place immédiatement avecmatplotlib)
Ajouté : et ne fonctionne pas en python :
Bien sûr, il ne sera pas compilé, mais sera visible dans le navigateur en tant que programme *.py et s'exécutera de manière cachée dans un thread séparé du terminal.
Communication avec le terminal via la bibliothèque MetaTrader 5 intégrée pour Python.
Maintenant je comprends, ce sera comme un Python visual notebook, seulement le code entier est exécuté.
Je me suis démené pour la compilation, et la compilation aurait été géniale.
Le problème est qu'avec la compilation standard de .py en .exe, il y a très peu de protection contre la rétro-ingénierie. On peut dire que c'est inutile.
Si .py compilait en .ex5, cela donnerait un coup de pouce à mql5 en termes d'efficacité. mql5 compile en un exécutable bien protégé par .ex5.
Pour Python, c'est un problème mondial, pensez-y. D'autant plus que python se compile en .exe et utilise un compilateur de type C ou C++.
Et mql5 utilise LLVM.
J'ai désinstallé python. Installé 3.8.1 x64.
Lors de l'exécution en Python, il y a maintenant ces erreurs :
La bibliothèque est debout :
(a été fourni immédiatement avecmatplotlib)
Ajouté : et ne fonctionne pas en python :
Vous avez Python 3.8, mieux vaut 3.7.6, car de nombreuses bibliothèques ne sont pas encore prêtes pour la 3.8 de toute façon.
1) Depuis la ligne de commande, vérifiez le script.
2) Vérifiez que le chemin de python est dans PATH.
3) Assurez-vous qu'il n'existe qu'une seule copie de Python, et qu'il n'y a pas de conflits avec d'autres versions.
4) Assurez-vous que l'éditeur a le chemin vers la copie unique de Python dans le PATH de Python.
Il est tout à fait possible que vous ayez un zoo de Pythons indirectement installés à partir de différents environnements comme Visual Studio.
J'essaie ensuite d'exécuter l'exemple du message n° 1 (https://www.mql5.com/ru/forum/306688 )- j'ai installé le paquet matplotlib et MetaTrader5.
J'essaie d'exécuter l'exemple du premier message.
Dans les erreurs
Dans le journal
et rien ne se passe (le terminal fonctionne en même temps).
Nous devons attendre un peu - le script demande des données à partir du 28.01.2019 - cela prend du temps.
Deuxième raison possible - la valeur limitée de "Max bars in window" est spécifiée dans le terminal.
L'aide indique explicitement https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesfrom_py
S'il s'agit vraiment du nombre de barres, vous pouvez soit modifier la limite, soit faire en sorte que le script prenne les minutes les plus proches, par exemple pour 2020 - cela devrait fonctionner.