MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 81
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
et si, hypothétiquement, vous prenez le support ONNX, les modèles importés seront plus lents que le MQL lui-même ?
Vérifiez par vous-même.
Mais n'oubliez pas que la véritable enveloppe d'ONNX sera certainement en C++ sous la forme d'une bibliothèque/module pour python, et ensuite le pilote/les bibliothèques de la carte vidéo spécifique (si elle est appropriée).
Python n'est qu'un couloir entre les appels à des bibliothèques efficaces, qui doivent être échangées avec lui sous la forme d'ensembles de données assez coûteux.
Les gens ne comprennent pas assez que Python n'est en fait qu'une enveloppe pour les appels de bibliothèque et rien de plus. Ils pensent que python est un langage puissant et moderne. Mais en réalité, il s'agit d'une liaison entre des bibliothèques C++ ;)
Et chaque bibliothèque a des coûts monstrueux pour assurer la compatibilité avec les structures dynamiques de python (même dans numpy).
Vérifiez par vous-même.
Mais n'oubliez pas que la véritable enveloppe d'ONNX sera certainement en C++ sous la forme d'une bibliothèque/module pour python, puis le pilote/les bibliothèques de la carte vidéo spécifique (si elle est appropriée).
Python n'est qu'un couloir entre les appels à des bibliothèques efficaces, qui doivent être échangées avec lui sous la forme d'ensembles de données assez coûteux.
Les gens ne comprennent pas assez que Python n'est qu'une enveloppe pour les appels aux bibliothèques et rien de plus. Ils pensent que python est un langage puissant et moderne. Mais en réalité, il s'agit d'une liaison entre des bibliothèques C++ ;)
Et chaque bibliothèque a un coût monstrueux pour assurer la compatibilité avec les structures dynamiques de python (même dans numpy).
Je vais vérifier... je n'ai pas encore regardé les détails.
Il est clair que Python est surtout destiné à la recherche.
Mais pour tirer le code d'un réseau neuronal déjà formé après coup (et ils changent chaque fois pendant la recherche), c'est déjà irréel de transférer quelque chose quelque part :)
Peut-être que je ne comprends pas bien ce que tu voulais faire. De toute façon, vous avez suffisamment de possibilités avec l'api python. A moins que vous ne puissiez pas le mettre sur le marché.
Nein. Il n'est pas difficile de comprendre que nous avons besoin de notre propre langue et d'une langue que nous utilisons, qui est plus de cent fois supérieure à la langue maternelle, pour que le testeur puisse la comprendre.
Pour nous, c'est très rentable de mettre en œuvre notre idée, de créer des bibliothèques de données en module MQL5 et de les compiler. Pour ce faire, nous avons commencé à intégrer un compilateur LLVM externe dans l'éditeur.
Le module Python reçoit-il des commandes pour le testeur de stratégie? Éventuellement ou définitivement ?
J'ajoute mes cinq kopecks aussi ))))
Je me suis mis à Python précisément parce qu'il est beaucoup plus facile (il me semble) de travailler avec des réseaux. Il y a beaucoup de développements dans ce domaine. Il suffit de le prendre et de l'appliquer. Et vous ne pouvez pas vous débarrasser des réseaux neuronaux. A mon avis, MQL a juste besoin de bibliothèques pour travailler avec cette entité...
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 ?
J'ai modifié un peu le code Python : j'ai augmenté la demande de ticks d'un jour à 30, organisé l'écriture dans le fichier non pas ligne par ligne, mais par blocs de 500 lignes. Le temps de fonctionnement a diminué de quelques secondes. L'indicateur est à propos de rien.
J'ai redessiné mon indicateur. J'ai ajouté des tampons et écrit les données dans le fichier ligne par ligne. La demande de tiques reste la même - un jour.
J'ai placé l'indicateur sur le graphique.
L'indicateur a rendu et écrit toutes les données dans le fichier en une minute.
Python - 3 heures
MQL - 1 minute
Salutations à tous.
Pouvez-vous me dire pourquoi.
Je lis un fichier csv dans un cadre de données. Ensuite, j'empile quelques lignes en une seule et je les écris dans un nouveau fichier csv.
Ce code fonctionne pendant 17 secondes.
Mais si je mets tout en une seule fois dans un nouveau cadre csv et que je le décharge ensuite dans un fichier, le temps d'exécution du code passe à 1 minute. 44 sec.
Pourquoi ?
problème d'encodage ? (Traducteur Google)
Il existe une table (pandas DataFrame). Comment créer une nouvelle colonne par condition : si colonne "1" < colonne "2" alors écrire 145 sinon écrire 874 ?
ajouter :
En tout cas, résolu par
import numpy as np ... np.where(
Plus précisément, je veux savoir si cela fonctionnera ?
Comment faire un décalage ?
Voici le tableau (cadre de données)
Comment le faire comme ça :