Programmation asynchrone et multithread dans MQL - page 11

 
Koldun Zloy:

L'avenir est déjà là.

MT a Eventloop.

Merci pour cette réponse informative ;))
Eh bien, vas-y et explique ce que c'est et où c'est.
Et comment écrire du code asynchrone avecEventloop par des moyens standards ?

 
Roman:

J'espère que les développeurs ont entendu l'idée d'Eventloop et qu'ils la mettront en œuvre à l'avenir.

Vous avez été entendu, l'administrateur a fait quelque chose qu'il n'avait jamais fait auparavant - il a visité le fil 3 fois en une heure, c'est... C'est fantastique ! - peu de gens reçoivent autant d'attention ;)

Vous ne connaissez même pas les bases de l'informatique et vous essayez de faire passer des documents trouvés sur Google pour vos connaissances - il est clair pour tout le monde que la situation est passée du comique au grotesque et qu'elle est proche d'une sorte de farce ... ugh - suis-je un poète dans l'âme ? ... ))), ok, pas à propos de ça...


répondre à la question : pourquoi le terminal de trading en a besoin ?


SZS : ce fil est sur le thème "Cher grand-père Frost !". - alors, écrivez tous vos souhaits ? - Je n'en ai pas tant que ça, à ce stade : Mr. Admin ! terminez le travail promis sur l'héritage multiple dans les classes (ou au moins dans les interfaces) et ajoutez au moins quelques paquets d'apprentissage automatique portés - cela fait 7 ans qu'ALGLIB est apparu dans SB, quelque chose de nouveau est nécessaire pour attirer l'attention des utilisateurs et/ou fournir de nouveaux articles (je ne sais pas quel est le "truc" - ce forum est dans les dix premiers sur la recherche google pour NS, MO et VR.... - Je soupçonne qu'une quantité énorme de travail a été faite pour obtenir ces résultats TIC, imho n'abandonnez pas !).

 
76Igor Makanu:
...


répondre à la question : pourquoi le terminal de négociation en a-t-il besoin ?

...

Comment ça, pourquoi ? Pourquoi une pelleteuse a-t-elle besoin d'un moteur plus puissant qu'une voiture ? Et pourquoi avez-vous besoin de 220 dans la prise quand votre téléphone a besoin de 3,5v ? Je suis toujours frappé par ce genre de questions. Les minimalistes seront toujours sur la sellette...

Les gens ont besoin de plus d'opportunités. Ce n'est pas parce que quelqu'un n'en a pas besoin que tout le monde n'en a pas besoin. Peu importe qui est en charge. C'est simple. :)

 
Igor Makanu:

Vous avez été entendu, l'administrateur a fait quelque chose qu'il n'avait jamais fait auparavant - il a visité le fil trois fois en une heure, c'est... C'est fantastique ! - peu de gens reçoivent autant d'attention ;)

Vous ne connaissez même pas les bases de l'informatique et vous essayez de faire passer des documents trouvés sur Google pour vos connaissances - il est clair pour tout le monde que la situation est passée du comique au grotesque et qu'elle est proche d'une sorte de farce ... ugh - suis-je un poète dans l'âme ? ... ))), ok, pas à propos de ça...


répondre à la question : pourquoi le terminal de trading en a besoin ?


SZS : ce fil est sur le thème "Cher grand-père Frost !". - alors, écrivez tous vos souhaits ? - Je n'en ai pas tant que ça, à ce stade : Mr. Admin ! terminez le travail promis sur l'héritage multiple dans les classes (ou au moins dans les interfaces) et ajoutez au moins quelques paquets d'apprentissage automatique portés - cela fait 7 ans qu'ALGLIB est apparu dans SB, quelque chose de nouveau est nécessaire pour attirer l'attention des utilisateurs et/ou fournir de nouveaux articles (je ne sais pas quel est le "truc" - ce forum est dans les dix premiers sur la recherche google pour NS, MO et VR.... - Je soupçonne que beaucoup de travail a été fait pour obtenir ces résultats TIC, imho n'abandonnez pas !).

Eh bien, oui, et le serveur asynchrone avecEventloop que vous m'avez écrit ;)))
Une fois encore, je n'ai pas de formation de programmeur, mais pour une raison quelconque, je sais comment écrire des serveurs asynchrones pour mes tâches.
Vous vous vantez de vos compétences, mais n'écrivez pas de code asynchrone, puisque vous posez de telles questions, pourquoi ?
Écrire du code asynchrone dans un thread et l'exécuter dans un pool de threads est, à mon sens, beaucoup plus efficace que de se contenter d'un seul thread.
Et de telles questions devraient intéresser en premier lieu des personnes comme vous qui ont un bagage de connaissances.
Mais la tendance inverse est observable, les pros sont assis sur un fil ;))
Les lamers écrivent de manière asynchrone ;)

 
Igor Makanu:
...


répondre à la question : pourquoi le terminal de négociation en a-t-il besoin ?

...

Par exemple, je veux que les graphiques fonctionnent dans un fil et les calculs dans un autre. Pour que les événements de l'interface ne ralentissent pas le fil de calcul. A titre d'exemple...

 
Roman:

Eh bien oui, et le serveur asynchrone avecEventloop que vous m'avez écrit ;)))
Une fois encore, je n'ai pas de formation de programmeur, mais pour une raison quelconque, je sais comment écrire des serveurs asynchrones pour mes tâches.
Vous vous vantez de vos compétences, mais n'écrivez pas de code asynchrone, puisque vous posez de telles questions, pourquoi ?
Écrire du code asynchrone dans un thread et l'exécuter dans un pool de threads est, à mon sens, beaucoup plus efficace que de se contenter d'un seul thread.
Et ces questions devraient intéresser en premier lieu les personnes comme vous, qui ont un bagage de connaissances.
Mais la tendance inverse est observable, les pros sont assis sur un fil ;))
Les lamers écrivent de manière asynchrone ;)))

répondre à la question : pourquoi le terminal de trading en a besoin ?


ZS : Encore une fois, vous ne comprenez pas que vos exemples de "fonctionnalités nécessaires" avec Python ou Java sont des sortes de solutions de béquille pour des plateformes intrinsèquement lentes, MQL5 est presque proche de C++ en termes de performance (c'est très proche de la performance maximale possible !), ce qui fonctionnera en MQL5 en Python fonctionnera ..... Eh bien, environ cent fois plus lentement ! Comprenez-vous la différence de 100 fois ? 1 seconde d'exécution dans MQL5 et 1,5 minutes dans Python - utilisez cet appel dans MQL5 10 fois = 10 secondes, utilisation dans Python = 15 minutes ! - Je ne le testerai même pas, l'ordre des calculs ne changera pas beaucoup.

ZZZY : Pourquoi ai-je besoin d'une telle "fonctionnalité nécessaire" ? - les tâches du terminal sont complètement différentes, historiquement les solutions client-serveur sont écrites en Python ou Java... mais pas en C++ - cela n'a pas d'importance, mais vos exemples sont tous des traitements de requêtes client-serveur ! - Voulez-vous organiser le terminal - serveur de trading à l'envers ? ))))

ZZZZZY : Je ne me "vante" pas, alors que vous n'avez pas pris la peine de lire les informations proposées pendant les quelques jours de discussion, mais vous écrivez régulièrement et répondez en 2 ou 3 minutes... quand avez-vous le temps d'étudier de nouvelles informations ? ))))


Retrig Konow:

Par exemple, je veux que mes graphiques soient exécutés dans un thread, et les calculs dans un autre. Pour que les événements de l'interface ne ralentissent pas le fil de calcul. Par exemple...

))) - Le terminal est à blâmer - est-il très lent ? - il a une faible capacité de calcul... ? peut-être que c'est causé par autre chose ?)

 
Igor Makanu:

répondre à la question : pourquoi le terminal de négociation en a-t-il besoin ?

...

))) - c'est la faute du terminal - est-il trop lent ? - a t-il une faible puissance de calcul ... ? peut-être que quelque chose d'autre est à blâmer ?)

Comprendre que les programmes MQL5 deviennent de plus en plus complexes et qu'ils vont acquérir de nouvelles fonctionnalités. Que vous le voyiez ou non, ça arrivera. Et c'est déjà le cas. Les graphiques sont nécessaires pour la visualisation et ils peuvent consommer beaucoup de ressources. Plus les graphiques sont cool, plus ils le sont. Mais il ne s'agit pas seulement de graphisme. Il existe toute une série d'autres tâches exigeant de la puissance. Suggérez-vous de mettre tous les calculs concernant les graphiques, la stratégie, tous les événements internes et externes dans une seule file d'attente ? Il semble étrange de suggérer cela.

 
Igor Makanu:


Faites-vous la distinction entre l'exécution séquentielle et l'exécution asynchrone ?
Qu'est-ce que cela a à voir avec la vitesse d'exécution ? Tout le monde sait ça à propos de la vitesse de mql.
Et vous pensez qu'ils n'écrivent pas asynchrone et multithread en C++ ? ))
Et les bibliothèques asynchrones pour C++ ont été écrites pour rien ?
J'ai donné plus haut des exemples de ce dont le terminal a besoin.
Et pas seulement pour le terminal, mais aussi pour ceux qui l'utilisent !

La raison en est que vous ne vous imposez pas de tâches asynchrones !
Et plus vous écrivez et développez NS, plus vous en avez besoin en premier lieu, c'est une des réponses...
Mais non, nous nous contenterons d'un seul fil, où mql est presque aussi bon que C++...
C'est absurde...
 
Реter Konow:

Suggérez-vous de mettre tous les calculs graphiques, la stratégie, tous les événements internes et externes dans la même file d'attente ? Il semble étrange de suggérer cela.

les mouches sont séparées, les escalopes sont séparées - c'est la vérité !

pour TS, tout est simple : calcul - demande de transaction - traitement de la réponse du serveur - maintien de la position - calcul - demande de transaction - traitement de la réponse du serveur - maintien de la position.....

si le calcul nécessite beaucoup de ressources, il doit être déplacé vers un module logique distinct (s'agit-il d'un indicateur ? s'agit-il de données précalculées ? s'agit-il d'un fil de discussion distinct ?(les services sont déjà disponibles !) ... il existe de nombreuses variantes, lisez comment les jeux étaient écrits sur 486 - il y a un minimum de calculs. tout a été préparé à l'avance, mais le but est de faire correspondre les capacités et les tâches de calcul).


Je suis moi-même proche du sujet des interfaces graphiques, mais malheureusement, il s'agit d'une visualisation dans le développement / recherche de TC, pour le travail de TC les interfaces graphiques ne sont pas nécessaires ! - Pouvez-vous imaginer des serveurs YouTube qui, au lieu de transmettre du contenu à l'utilisateur, diffusent également des vidéos, du trafic et ... etc. des informations graphiques sur le serveur ? )))) - pourquoi ? pour qui ? ....


Romain:

Plus haut dans le fil, j'ai déjà donné des exemples de la raison pour laquelle le terminal en a besoin.
répondre à la question : pourquoi le terminal de négociation en a-t-il besoin ?
 
Igor Makanu:

les mouches sont séparées, les escalopes sont séparées - c'est la vérité !

pour TS, tout est simple : calcul - demande de transaction - traitement de la réponse du serveur - maintien de la position - calcul - demande de transaction - traitement de la réponse du serveur - maintien de la position.....

si le calcul nécessite beaucoup de ressources, il doit être déplacé vers un module logique distinct (s'agit-il d'un indicateur ? s'agit-il de données précalculées ? s'agit-il d'un fil de discussion distinct ?(les services sont déjà disponibles !) ... il existe de nombreuses variantes, lisez comment les jeux ont été écrits sur 486 - il y a un minimum de calculs. tout a été préparé à l'avance, mais le but est de faire correspondre la puissance de calcul et les tâches !


Je suis moi-même proche du thème des interfaces graphiques, mais malheureusement, il s'agit d'une visualisation dans le développement / recherche de TC, pour le travail de TC les interfaces graphiques ne sont pas nécessaires ! - Pouvez-vous imaginer des serveurs YouTube qui, au lieu de diffuser du contenu à l'utilisateur, diffusent également des vidéos, du trafic et ... etc. des informations graphiques sur le serveur ? )))) - pourquoi ? pour qui ? ....


répondre à la question : pourquoi le terminal de négociation en a-t-il besoin ?

Pour la recherche, pour le développement du TS (certains n'ont pas besoin du TS lui-même, par exemple George ne se soucie pas du TS), MT4 est suffisant. De quoi parle-t-on alors ? Chacun a ses propres besoins. L'un vit bien dans un monastère, et l'autre veut parcourir le monde. En bref, cette conversation ne porte sur rien. C'est comme si je demandais à un artiste pourquoi il devrait peindre un tableau s'il peut simplement prendre une photo stupide de la nature. C'est une conversation stupide, désolé. ))


J'ajouterais qu'avec cette vision de la vie, des phénomènes culturels tels que le skateboard n'auraient jamais vu le jour. Après tout, c'est un moyen de transport totalement impraticable. L'éparpillement de tout, c'est le fruit de cette approche.

Raison: