MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 74
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Bonjour à tous !
Je ne sais pas si j'écris dans le bon fil, mais j'espère que vous pourrez me corriger. Et une dernière chose à préciser : je suis un zéro absolu en programmation !
J'ai trouvé le code d'un petit programme écrit en PYTHON qui prend une cotation de la paire EUR/USD sur un site connu et l'écrit dans la cellule A1 du fichier EUR_USD_QUOTE.csv.
Si quelqu'un n'y voit pas d'inconvénient, veuillez améliorer ce code afin qu'une cotation soit automatiquement mise à jour dans la même cellule A1 du fichier EUR_USD_QUOTE.csv toutes les heures.
Sincèrement, Vladimir.
Bonjour à tous !
Je ne sais pas si j'écris dans le bon fil, mais j'espère que vous pourrez me corriger. Et une dernière chose à préciser : je suis un zéro absolu en programmation !
J'ai trouvé le code d'un petit programme écrit en PYTHON qui prend une cotation de la paire EUR/USD sur un site connu et l'écrit dans la cellule A1 du fichier EUR_USD_QUOTE.csv.
Si quelqu'un n'y voit pas d'inconvénient, veuillez améliorer ce code afin qu'une cotation soit automatiquement mise à jour dans la même cellule A1 du fichier EUR_USD_QUOTE.csv toutes les heures.
Sincèrement, Vladimir.
J'ai lancé le code finalisé dans l'environnement de développement PyCharm, mais rien ne se passe encore, seul le bouton "Rerun" est activé. Je n'arrive pas encore à comprendre - est-ce que le code fonctionne ou pas ?
Des informations supplémentaires sont affichées dans l'onglet "Problèmes" :
.
Maxime, peux-tu temporairement faire en sorte que la citation dans le fichier se mette à jour maintenant au moins en 1 minute pour comprendre si le code fonctionne ou pas, sinon je dois attendre une heure entière... ?
Une dernière chose. Après avoir lancé le code initial que j'avais publié précédemment, le fichier EUR_USD_QUOTE.csv a été immédiatement ouvert avec la cotation actuelle, alors que le code modifié ne peut pas ouvrir ce fichier.
Peut-être que je fais quelque chose de mal ou que je ne comprends pas quelque chose ? S'il vous plaît, conseillez-moi.
Salutations, Vladimir.
Merci, Maxim !
J'ai exécuté le code finalisé dans l'environnement de développement PyCharm, mais rien ne se passe encore, seul le bouton "Rerun" est activé. Je n'arrive pas encore à comprendre - est-ce que le code fonctionne ou pas ?
Des informations supplémentaires sont également affichées dans l'onglet "Problèmes" :
.
Maxime, peux-tu temporairement faire en sorte que la citation dans le fichier se mette à jour maintenant au moins en 1 minute pour comprendre si le code fonctionne ou pas, sinon je dois attendre une heure entière... ?
Une dernière chose. Après avoir lancé le code initial que j'avais publié précédemment, le fichier EUR_USD_QUOTE.csv a été immédiatement ouvert avec la cotation actuelle, alors que le code modifié ne peut pas ouvrir ce fichier.
Peut-être que je fais quelque chose de mal ou que je ne comprends pas quelque chose ? S'il vous plaît, conseillez-moi.
Salutations, Vladimir.
2 premières erreurs - il suffit de les déplacer en haut du fichier.
Il s'agit simplement d'un avertissement de style de programmation, et non d'une erreur.
Pour une vérification rapide, remplacez les deux champs
à
deuxième
le fichier doit être écrit toutes les 10 secondes parce que la minuterie de vérification est réglée sur 10 secondes.
P.S. Ne vous emportez pas trop vite ou vous serez banni pour des demandes trop fréquentes.
sur les parenthèses je n'ai pas d'erreurs
Ce code attend jusqu'à l'heure suivante et n'enregistre alors que
Je n'ai pas installé ces modules
Je n'ai donc pas vérifié
Maxime, j'ai modifié un peu votre code par la méthode de "l'expérience scientifique" (veuillez m'excuser à l'avance) et il a fonctionné pour ouvrir le fichier EUR_USD_QUOTE.csv avec la cotation actuelle dans 1 minute après le lancement.
Mais si je ne ferme pas le fichier EUR_USD_QUOTE.csv pendant la minute suivante, j'obtiens ce message :
Traceback (dernier appel le plus récent) :
Fichier "C:/Users/Vladimir/PycharmProjects/My_Python_Project/8.py", ligne 36, in <module>
get_data(save_file='EUR_USD_QUOTE.csv')
Fichier "C:/Users/Vladimir/PycharmProjects/My_Python_Project/8.py", ligne 21, in get_data
with open(save_file, 'w') as save :
PermissionError : [Errno 13] Permission refusée : 'EUR_USD_QUOTE.csv'
Processus terminé avec le code de sortie 1
Comment faire pour que le processus se poursuive sans intervention humaine après l'exécution du code du programme ?
Salutations, Vladimir.
Maxime, j'ai modifié un peu votre code par la méthode de "l'expérience scientifique" (veuillez m'en excuser au préalable) et il a été possible d'ouvrir le fichier EUR_USD_QUOTE.csv avec la cotation actuelle en 1 minute après le lancement.
Mais si je ne ferme pas le fichier EUR_USD_QUOTE.csv pendant la minute suivante, j'obtiens ce message :
Traceback (dernier appel le plus récent) :
Fichier "C:/Users/Vladimir/PycharmProjects/My_Python_Project/8.py", ligne 36, in <module>
get_data(save_file='EUR_USD_QUOTE.csv')
Fichier "C:/Users/Vladimir/PycharmProjects/My_Python_Project/8.py", ligne 21, in get_data
with open(save_file, 'w') as save :
PermissionError : [Errno 13] Permission refusée : 'EUR_USD_QUOTE.csv'
Processus terminé avec le code de sortie 1
Comment faire pour que le processus se poursuive sans intervention humaine après l'exécution du code du programme ?
Salutations, Vladimir.
ah oui, parce que le processus est occupé os.startfile() pour une raison quelconque, supprimez cette ligne
и
peut être retiré
Je l'ai vérifié, ça marche.
et oui, parce que le processus est occupé os.startfile() pour une raison quelconque, supprimez cette ligne
и
peuvent être retirés.
Je l'ai vérifié, ça marche.
Maxim, j'ai fait tout ce que vous m'avez conseillé. Aucun autre problème n'a été signalé. Le programme a démarré mais maintenant comment puis-je voir la cotation si le fichier EUR_USD_QUOTE.csv est fermé et quand je l'ouvre et le laisse ouvert, le même message apparaît : PermissionError : [Errno 13] Permission refusée : 'EUR_USD_QUOTE.csv' et la cotation dans le fichier ouvert n'est plus mise à jour ?
Veuillez m'excuser encore une fois, je n'ai jamais caché que je suis un zéro absolu en programmation.
Salutations, Vladimir.
Maxim, j'ai fait tout ce que vous m'avez conseillé. Il n'y a plus de messages concernant les problèmes. Maintenant, comment puis-je voir la cotation si le fichier EUR_USD_QUOTE.csv est fermé et que lorsque je l'ouvre et le laisse ouvert, j'obtiens le même message que PermissionError : [Errno 13] Permission refusée : 'EUR_USD_QUOTE.csv' et la cotation dans le fichier ouvert n'est plus mise à jour ?
Veuillez m'excuser encore une fois, je n'ai jamais caché que je suis un zéro absolu en programmation.
Salutations, Vladimir.
Vous ouvrez le fichier avec Excel ? Cela signifie qu'il ouvre le fichier de manière monopolistique. Vous devez autoriser d'autres applications/utilisateurs à modifier le fichier.
Peut-être que http://blog.depit.ru/odnovremennaya-rabota-v-excel/ vous aidera.
En général, vous ne pouvez pas modifier un fichier ouvert dans un autre programme.
Vous ouvrez le fichier avec Excel ? Donc il ouvre le fichier de façon monopolistique. Vous devez autoriser les autres applications/utilisateurs à modifier le fichier quelque part dans les paramètres.
Peut-être que http://blog.depit.ru/odnovremennaya-rabota-v-excel/ vous aidera.
Vous ne pouvez pas modifier un fichier ouvert dans un autre programme.
Oui, je l'ouvre dans Excel. Je ne peux toujours pas mettre à jour la cotation dans le fichier EUR_USD_QUOTE.csv ouvert en temps réel.
L'idée était de regarder le tableau et de voir les changements dans la citation.
Salutations, Vladimir.