MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 80
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
Une autre question d'un nouvel arrivant.
La situation est la suivante. J'ai un indicateur. Lorsque je l'ajoute au graphique en mode "froid", le calcul prend 7-8 secondes.
J'ai fait la même chose en python. La différence est que python écrit les données dans un fichier .csv.
Je comprends les pertes de connexion avec MT5, autres frais généraux.... Mais, 8 secondes contre 3 heures...... ? ??????? COMMENT ? ??????????Que voulez-vous d'un langage qui est cent fois plus lent que le C++ ?
Tout ce qui est rapide en Python est écrit sous forme de modules C++. S'il n'existe pas de module rapide approprié, tout sera infiniment plus lent.
copy_ticks_range, ainsi que le reste des méthodes d'extraction de données dans l'API Python sont écrites par nous de manière super efficace et rapide au niveau de la transmission de ces données à MQL5.
Que voulez-vous d'un langage qui est cent fois plus lent que le C++ ?
Tout ce qui est rapide en Python est écrit sous forme de modules C++. S'il n'y a pas de module rapide approprié, tout sera infiniment plus lent.
copy_ticks_range, ainsi que d'autres méthodes d'extraction de données dans l'API Python sont écrites par nous de manière super efficace et rapide au niveau de la transmission de ces données dans MQL5.
Plus lent, mais pas par des CENTAINES....
Merci, Renat, pour la réponse. J'en déduis que cette vitesse est uniquement à la merci de Python ? Je pensais moi-même que ni l'appel des ticks dans MT, ni l'écriture de données dans un fichier ne pouvaient ralentir autant...
Vous voyez maintenant pourquoi nous mettons tant d'efforts dans la performance linguistique ?
Sinon, il est impossible de traiter les volumes modernes.
Nous ne supportons pas Python en lui-même, mais comme une passerelle vers des bibliothèques efficaces écrites pour lui (en C++).
Alors, une fonctionnalité API sera sûrement incluse pour utiliser le testeur avec Python, n'est-ce pas ?
Salutations
Alors, une fonctionnalité API sera sûrement incluse pour utiliser le testeur avec Python, n'est-ce pas ?
.
Non. Il est naïf de penser que nous nous suiciderions en choisissant un langage cent fois plus lent que le nôtre afin de tuer un testeur.
Il est beaucoup plus rentable pour nous de développer notre idée de recompiler les bibliothèques C++ de tiers en modules MQL5. Pour ce faire, nous avons commencé à inclure un compilateur LLVM externe dans l'éditeur.
Non. Il est naïf de penser que nous nous suiciderions en choisissant un langage cent fois plus lent que le nôtre afin de tuer un testeur.
Il est beaucoup plus rentable pour nous de développer notre idée de recompilation des bibliothèques C++ de tiers en modules MQL5. Pour ce faire, nous avons commencé à inclure le compilateur externe LLVM dans l'éditeur.
Y a-t-il un espoir de développer l'idée de supporter les librairiesC/C++ ou les librairies statiques dans le projet de programme mql ?
Y a-t-il un espoir de développer l'idée de supporter les bibliothèques statiquesC/C++.lib ou .a dans le projet de programme mql ?
Non. Vous pouvez toujours utiliser n'importe quelle DLL avec un contrôle explicite des droits d'accès.
Donnez-moi un exemple de votre code Python qui ralentit, les mots ne montrent pas clairement ce qu'il fait et comment vous obtenez les données. Et pourquoi écrit-il constamment dans le fichier ? Ne peut-on pas le faire à la fin ?
Non. Il est naïf de penser que nous nous suiciderions en choisissant un langage cent fois plus lent que le nôtre afin de tuer un testeur.
Il est beaucoup plus rentable pour nous de développer notre idée de recompiler les bibliothèques C++ de tiers en modules MQL5. Pour ce faire, nous avons commencé à inclure le compilateur externe LLVM dans l'éditeur.
Et si, hypothétiquement, vous prenez le support ONNX, les modèles importés seront plus lents que MQL lui-même ?
J'ai remarqué une bizarrerie dans la sortie :
[89, '2020.01.16', 3, 15, 3, 16, Timedelta('0 days 01:16:53.966000')] [90, '2020.01.16', 3, 16, 3, 17, Timedelta('0 days 00:25:39.266000')] [91, '2020.01.16', 3, 17, 4, 12, Timedelta('0 days 19:07:12.757000')] [92, '2020.01.17', 4, 12, 4, 13, Timedelta('0 days 00:36:14')] [93, '2020.01.17', 4, 13, 4, 15, Timedelta('0 days 02:21:01.630000')] [94, '2020.01.17', 4, 15, 4, 17, Timedelta('0 days 02:12:28.692000')] [95, '2020.01.17', 4, 17, 0, 11, Timedelta('0 days 17:30:16.404000')]
Est-il == 00:36:14.000000 ?