Programmation asynchrone et multithread dans MQL - page 7

 
Igor Makanu:

Eh bien, je ne suis pas non plus, vous savez, un gars à faire soi-même...). Il est très probable que je puisse appeler les fonctions µl à partir de la dll, mais le problème risque d'être la nécessité de creuser sous le débogueur après chaque démarrage. Dans l'ensemble, ce n'est pas une option très intéressante.

 
Igor Makanu:

Il ne s'agit pas de vous ou de moi, mais de l'industrie informatique elle-même, des méthodes de protection ont été inventées depuis longtemps et sont constamment améliorées, il y a ceux qui font la protection et ceux qui la " testent "...

Et mon imho, si vous voyez un autre article sur un autre hack PlayStation / XBox, alors quelqu'un en a besoin ! - Maïakovski )))) - il s'agit d'une stratégie de marketing d'un géant de l'informatique et non d'un autre pirate intelligent qui a réussi à trouver une vulnérabilité - oui, il y a des bogues dans les logiciels, les vulnérabilités se produisent, mais il y a aussi des stratégies de marketing qui suscitent l'intérêt pour les logiciels.

;)

Je pense que vous surestimez la complexité de la tâche (arracher mcl de la dll), mais la solution est compliquée et peu pratique (pourquoi s'asseoir dans le débogueur après chaque exécution ?). Beaucoup plus élégant - pensez à un protocole pour l'échange entre le service dans le terminal et le programme tiers via des sockets, écrivez la partie C et mkl, et mettez-la dans le libre accès. C'est tout, vous n'avez même pas besoin de casser quoi que ce soit.

 
Igor Makanu:

ce n'est pas clair ce que cela va faire ?

Comme le disent les développeurs, il n'est pas possible d'aller au-delà du "bac à sable MQL" pour chaque programme, alors qu'est-ce qu'il vous apportera en passant des sockets à TCP ?

vous ne pourrez pas accéder à un autre programme MQL sans modifier le code source, de la même manière que nous avons commencé - vous ne pourrez pas appeler une fonction MQL à partir d'une dll.

ou parlons-nous du contrôle à distance d'un programme MQL ? - Cela n'a jamais été un problème, nous développons notre propre protocole d'échange et contrôlons ce que nous pouvons.

Il s'agit de "faire un semblant d'API", universel. Accrocher une librairie à un programme croisé, et obtenir des données/envoyer des requêtes. Et il sera mature, sans bacs à sable et sans se "soucier" de ma sécurité. Et il n'est pas nécessaire de gérer quoi que ce soit - seulement des données et des demandes. Bientôt, cette installation sera remplie de toutes sortes de viande - comme des graphiques avec analyse technique.

Mais le public ici n'est pas le même - les vendeurs et les acheteurs du marché.

 

Igor Makanu:

Les programmes MQL avec dll ne sont pas populaires sur le Net, juste au cas où... Peut-être que vous ne l'avez pas fait exprès, mais votre ordinateur est malade et, avec votre dll, vous envoyez un tas de virus sur le PC de votre utilisateur... En général, les développeurs ont promis une protection maximale pour l'utilisateur final, c'est-à-dire le commerçant.

C'est un Windows pourri, bien qu'ils semblent l'avoir nettoyé.

Je n'ai pas peur d'exécuter n'importe quel exécutable sur mon Linux - en l'exécutant sans droits d'administrateur, ce logiciel ne peut même pas faire de mal. J'ai oublié les virus en même temps que le virus.

 
Vict:

C'est toute la liquidation foireuse, bien qu'ils semblent l'avoir nettoyée aussi.

Je n'ai pas du tout peur d'exécuter n'importe quelle application sur mon linux.

Je l'ai eu)))

 
Retour au souhait des développeurs. J'ai une autre idée.
Si le langage mql implémente la fonctionnalité permettant de travailler avec du code asynchrone, alors nous pouvons transposer le travail des indicateurs en mode asynchrone et nous débarrasser du problème du threading.
Après avoir résolu le problème du multithreading des indicateurs, vous pouvez implémenter les tick-charts en toute sécurité. Toute la chaîne est interconnectée.
Le mode asynchrone va donner un nouvel élan au développement de l'écriture de programmes rapides. Cela résoudra le problème de l'extension aux graphiques en tic-tac.
 
Roman:
L'asynchronie donnera un nouvel élan au développement de l'écriture de programmes rapides.

Compte tenu des qualifications des personnes présentes ici, il s'agit plutôt d'un moyen presque garanti de se tirer une balle dans le pied.

Et ceux qui ont vraiment besoin consciemment de l'asynchronie et du multithreading pour eux-mêmes n'ont aucun problème à les mettre en œuvre avec les moyens disponibles.

 
TheXpert:

Compte tenu des compétences des personnes présentes ici, c'est un moyen presque garanti de se tirer une balle dans le pied.

Et ceux qui ont vraiment besoin consciemment de l'asynchronie et du multithreading pour eux-mêmes n'ont aucun problème à les mettre en œuvre avec les moyens disponibles.

Que ces personnes se tirent une balle dans la tête immédiatement. Ce n'est pas le problème des développeurs et de leur produit...
Apprendre et comprendre le principe du mode asynchrone, c'est comme deux doigts sur l'asphalte, ce ne sont pas des flux. Et si c'est difficile, il n'y a rien à faire.

 

Il semble que la différence particulière entre l'asynchronie et le multithreading provienne du même domaine que le problème de la différence entre les pointeurs et les références qui tourmente certaines personnes.

L'asynchronie est mise en œuvre par le biais d'un thread séparé et il n'est pas très important que ce processus soit fourni par le processeur ou tout autre dispositif. La création d'un processus implique son asynchronisme car il existe en parallèle.

 
Georgiy Merts:

Je lis les participants intelligents et je me demande...

Quel est l'intérêt de tous ces gadgets ?

Quand, dans MQL, le multithreading serait-il si terriblement nécessaire ? Pour moi, la seule utilité serait le test de stratégie, qui est implémenté de manière standard.

L'idée est qu'il pourrait être judicieux d'exécuter plusieurs WebRequests, mais je ne pense pas que le multithreading soit nécessaire.

Quelles sont les tâches qui nécessitent le multithreading en premier lieu ?

George, le but de tout peut toujours être déraillé. Et il n'y a rien pour contrer cette approche. Et pourquoi une personne aurait-elle besoin d'argent si elle va mourir de toute façon ? Tout le monde va mourir de toute façon, pourquoi avons-nous besoin du marché, de l'algotrading et ainsi de suite ?

Disposer d'une fonction interne de multithreading dans MQL serait très cool. Comprenez que c'est un terrain d'essai créatif pour beaucoup. La question "pourquoi ?" n'est pas toujours appropriée.

Raison: