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
Il y a toujours quelque chose qui cloche, en théorie ce code devrait fonctionner.
C#
MQL5
J'obtiens des erreurs de compilation, le paramètre t1 ne peut pas être converti.
Le type MqlTick défini en C# et le type MqlTick défini en MQL sont des types différents.
Changez le nom du type dans Sharp et travaillez uniquement avec ce type.
Ou copier les valeurs retournées dans le type Mql
Le type MqlTick défini en C# et le type MqlTick défini en MQL sont des types différents.
Changer le nom du type dans Sharp et ne travailler qu'avec ce type
ou copier les valeurs retournées dans le type Mql
Je ne l'ai pas testé (le PC est occupé avec le réseau qui traîne en ville !!!),
mais je pense que cela fonctionnera comme vous l'écrivez
il n'y a pas de documentation appropriée sur les échanges MQL-C# en général, mon exemple utilise l'alignement des champs de la structure, dans le vôtre les champs sont de la même taille, et s'il y a d'autres types, que se passera-t-il lors de l'échange de données? - Je pense qu'au mieux, il s'agira d'une erreur de temps, au pire, d'une perte de données.
Il y a un bon article sur la gestion des structures en C# sur Habra, je me souviens, que dans C# c'est l'alignement par défaut, mais dans MQL c'est le contraire - je le retrouverai plus tard, quand je serai libre.
Je n'ai pas vérifié (réseau PC suspendu ville occupée !!!),
Le réseau urbain semble être mort partout. Le nôtre à Volgograd fait aussi du surplace. Site miraculeux :)))
Je ne l'ai pas testé (le PC de la ville en réseau est occupé ! !!),
Mais je pense que cela fonctionnera comme vous l'écrivez
il n'y a pas de documentation appropriée sur les échanges MQL-C# en général, mon exemple utilise l'alignement des champs de la structure, dans votre exemple les champs sont de la même taille, et s'il y a d'autres types, que se passera-t-il lors de l'échange de données ? - Je pense qu'au mieux, il s'agira d'une erreur de temps, au pire, d'une perte de données.
il y a un bon article sur Habra sur le travail avec des structures en C#, je me souviens qu'en C# l'alignement est par défaut, mais en MQL c'est l'inverse - je le retrouverai plus tard, quand j'aurai assez d'espace sur mon PC
J'ai donné un exemple avec une structure simple avec deux dubs.
Il n'y a rien à aligner.
Une structure plus complexe peut nécessiter un alignement.
Cela doit être vérifié.
ps le réseau est ok)
Fedor, il ne reste plus qu'un dernier cas de test : obtenir la structure des tics de sharp à mql. Réfléchissez à la manière de le mettre en œuvre, tous les exemples sont ici, Volodya a montré comment obtenir des données en tant que structure à partir de sharp.
J'attends le résultat final.
Je l'ai fait. Je vous ai envoyé un message via le chat
Si vous avez besoin de transférer une grande quantité d'informations hétérogènes, il est préférable de procéder de la même manière que pour le socket web : empaqueter l'information dans un json du côté de l'utilisateur, l'encoder dans une chaîne et la renvoyer sous forme de chaîne, et effectuer la conversion inverse du côté du mql. Il fonctionne très rapidement, je l'ai testé. :)
Mais il est préférable d'utiliser des méthodes régulières, par exemple les mêmes structures, si possible. :)
Non, j'ai besoin de structures, les structures sont pratiques. Merci, j'ai maintenant une vision claire de la façon dont les choses fonctionnent en C# + MQL5.
J'ai donné un exemple avec une structure simple avec deux dubs.
Il n'y a rien à aligner.
Pour une structure plus complexe, vous pouvez avoir besoin d'un alignement.
Cela doit être vérifié.
ps le réseau est ok)
J'ai trouvé un article sur les structures en C#https://habr.com/ru/post/114953/.
Dans l'ensemble, il y a suffisamment de matériel pour travailler, merci.
Je vais couper un peu, puisque tous les acteurs sont probablement fatigués du spectacle.
Qu'en est-il de la consommation de mémoire et de processeur, en particulier lorsque vous exécutez plusieurs de ces EA en même temps ?
ils ne sont pas surpuissants s'ils sont lancés à partir du même processus ?
À mon humble avis, une recette inachevée (jusqu'à présent) consiste à prendre Socket MQL et à y réduire au minimum les fonctions http+websocket. Au moins, cela fonctionnera sur les méta-citations VPS. Bien sûr, c'est un coucher de soleil à la main, mais regardez les articles - ainsi même MySQL est abordé de cette manière
Je vais le faire maintenant. Qu'en pensez-vous ? Cela fonctionnera-t-il dans MT4 ?
uniquement par la méthode de l'article https://www.mql5.com/ru/articles/249
MQL4 ne sait pas comment appeler du code géré, ou écrire un wrapper en C++ et l'utiliser pour appeler .Net ou l'article ci-dessus, j'ai vérifié l'article l'année dernière - tout fonctionne, mais il y a beaucoup de travail - beaucoup de pièges, si vous êtes intéressé ne commencez pas, vous avez besoin de beaucoup de temps pour googler du matériel quand les problèmes surviennent
Je vais m'interrompre un peu, pour la bonne raison que tous les acteurs sont probablement fatigués par la pièce.
Vous pouvez louer un SDV Windows normal et le faire fonctionner à partir d'une DLL, vous pouvez faire fonctionner plusieurs terminaux simultanément.