
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
Ce que je veux dire, c'est que l'intégration de python avec MT5 n'est pas complète. Vous ne pouvez pas obtenir les valeurs des indicateurs DIRECTEMENT
Lecture de données dans python
Les objectifs du sujet sont simples comme bonjour : permettre à tout un chacun de se lancer dans le trading algorithmique en Python, en copiant simplement des bouts de code comme l'initialisation de la communication avec le terminal, la demande de cotations, la demande au serveur d'ouvrir ou de fermer une transaction, etc. Concentrez-vous uniquement sur la logique, et dans un langage extrêmement facile à utiliser.
Bien... la logique est exactement ce qui manque au trading algorithmique - la logique dont vous avez besoin pour tester une stratégie de trading avant que "tous les autres" n'insèrent des morceaux de code et ne se lancent dans le trading réel.
en tout cas, bonne chance pour vos objectifs "non-mythiques".
)))
Les personnes qui n'ont pas besoin que les prix soient sauvegardés dans des fichiers réécriront un peu le code, et ne feront pas "écrire dans des fichiers - lire dans des fichiers", mais juste la structure de données qu'ils veulent. Il s'agit essentiellement d'une vitrine de choses primitives, pour ceux qui sont prêts à faire les premiers pas.
Toutefois, les personnes déjà familiarisées avec des concepts tels que les listes, les tuples, les dictionnaires, etc.
Je propose de lire les fichiers de prix avec la fonction read_all_files_with_prices, qui déclenchera la fonction read_file_with_prices pour lire le fichier de prix de chaque instrument.La fonction read_file_with_prices retourne soit un tableau numpy.ndarray avec des lignes et des colonnes correspondant au fichier de prix original (si les prix ont été lus avec succès et vérifiés pour l'intégrité des données, chaque type d'élément est numpy.float64), ou la chaîne 'no data' si aucune donnée n'a été lue ou incomplète .
Que la fonction read_all_files_with_prices renvoie un dictionnaire avec les cotations pour tous les instruments. Supposons que les clés de ce dictionnaire soient les noms des instruments, et que les valeurs soient les dictionnaires entre guillemets d'un instrument correspondant. Dans les dictionnaires avec des guillemets pour un symbole, les clés sont date_heure, les valeurs sont des barres (classe bar) ; en outre, je suggère de fournir des clés :
is_data' : valeur de la clé - Vrai s'il y a une citation, Faux - si la lecture du fichier renvoie "aucune donnée",
instrument" : valeur de la clé - instrument (str) ;
'prices' : key-value - tableau de prix pour l'instrument (numpy.ndarray)
En bref, voici la structure de données que je suggère :
Le code Python est mieux placé sous forme de captures d'écran de l'IDE/éditeur/site.
L'absence locale de surlignage, au moins des commentaires de code, le rend peu lisible, il se fond dans le texte principal.
Ajout de fonctions pour lire les fichiers et créer la structure de données ci-dessus :
Le code Python est mieux placé sous forme de captures d'écran de l'IDE/éditeur/site.
L'absence locale de surlignage, au moins pour les commentaires de code, le rend peu lisible, il se fond dans le texte principal.
Mais il peut être copié et ouvert dans l'IDE, mais à partir de l'image il peut être retapé manuellement sauf...
Le travail du programme présenté ci-dessus :
En gros, presque tout est prêt pour commencer à analyser les données et à prendre et exécuter des décisions de trading.
Mais il peut être copié et ouvert dans l'IDE, alors que l'image ne peut être retapée qu'à la main...
Je ne pense pas que quelqu'un va s'embêter à copier et coller le code... personne n'en a besoin ici.
à lire et à discuter, oui. Relevez quelque chose de curieux ou donnez quelques indices. Et je ne pense pas que je vais le trimballer en IDE. Les gens publient sur le forum pour que d'autres puissent lire le code et pour l'utiliser, il faut soit le joindre, soit faire un lien vers le dépôt (ou les combiner).
Mais c'est distrayant.
Mettez le code suivant dans le fichier Functions.py, une fonction qui calcule la SMA
J'ai besoin des paramètres d et k pour effectuer un décalage temporel, pas le point, nous allons les mettre à zéro.
Je trouverai une logique simple et stupide, comme :
pour chaque instrument, nous calculons la SMA décalée de z=100 intervalles entre les échantillons, c'est-à-dire la SMA de l'ordre s=1+2*z=201.
S'il n'y a pas de transactions sur le marché ou si leur quantité (pour un certain symbole) est inférieure à la quantité admissible (séparément pour les ventes et les achats).
si le prix est actuellement 30 pips ou plus au-dessus de la SMA(201) - ouvrir une transaction de vente avec SL=TP=50 pips,
si le prix est actuellement 30 pips ou plus en dessous de la SMA(201) - ouvrir un trade d'achat avec SL=TP=50 pips.
Si, à tout moment, le profit sur la transaction atteint 20 pips, fermez-la sans attendre la fermeture par le SL ou le TP.
Prenons l'exemple d'une telle transaction. C'est simple, idiot, du point de vue du commerce, mais l'essence de la question est la mise en œuvre.
Je suggère de telles fonctions pour l'ouverture et la fermeture des transactions :