Idéologie du testeur de stratégie de trading MetaTrader 5 : agents

 

Dans MetaTrader 5, nous offrons la possibilité de créer des fermes de calcul entières pour accélérer les calculs des stratégies de trading par le testeur. Ils sont destinés aux calculs d'optimisation de masse lorsque des centaines de tâches peuvent être exécutées en parallèle sur des ordinateurs distants. Et vous pouvez installer plusieurs agents sur chaque ordinateur en fonction du nombre de cœurs pour optimiser l'utilisation des ressources.

Par défaut, chaque terminal dispose d'agents locaux pour le nombre de cœurs de processeurs logiques et peut distribuer des tâches à d'autres agents distants. Il est très facile d'installer des agents distants - il suffit d'utiliser l'utilitaire MetaTester.exe (un seul fichier, il ne nécessite rien d'autre) et d'installer les agents en tant que services en fonction du nombre de cœurs ou de les exécuter séparément. Chaque agent dispose d'un mot de passe pour y accéder, de sorte que seuls les utilisateurs autorisés peuvent y accéder.

Voici à quoi ressemble le test d'un agent sur un noyau local. Non seulement l'état est affiché, mais aussi la charge réelle du processeur.


Démarrage des tests sur un agent distant :

 
Quand les utilisateurs pourront-ils le ressentir ?
 

Je suis plus habitué à ressembler à ça :


CalcNet

|--Grom (localhost) - Intel Core i7

|--Core1

|--Core2

|--Core3

|--Core4

|--Slava (168.192.0.101) - Intel Core2

|--Core1

|--Core2

|--Pakemon (168.192.0.121) - Intel Core i7

|--Core1

|--Core2

|--Core3

|--Core4


Bien sûr, la façon dont je suis habitué n'est pas forcément pratique pour tout le monde.


Mais cet arbre de remout a un avantage - vous pouvez rapidement désactiver les remouts, et les activer complètement, pas par cœurs. Bien entendu, avant d'éteindre un remout, l'ancien état est sauvegardé, de sorte que seuls les cœurs de la dernière session sont utilisés lors de l'allumage. Il est également possible de regrouper des nœuds individuels et d'inclure les groupes dans le calcul d'un simple clic.

Il n'existe pas de catégorie locale distincte, tous les nœuds, y compris le nœud local, sont traités comme des nœuds de réseau égaux.

 
HideYourRichess:

Eh bien, il n'y a pas de catégorie distincte pour le Local, tous les ordinateurs, y compris le Local, sont considérés comme des coins égaux du réseau.

Au départ, nous voulions séparer les agents sur le LAN et les agents sur le WAN, mais nous avons ensuite abandonné cette division, la jugeant inutile. Nous les avons regroupés dans la catégorie Remote, et avons renommé la catégorie MyComputer en Local.
 

Les agents distants ne peuvent pas être séparés par noyau - chacun est configuré pour un agent distinct, mais ils peuvent être regroupés logiquement et triés dans une liste par adresse IP correspondante.

Lors de la modification d'un agent particulier, nous pouvons suggérer de désactiver/activer des agents connexes sur la même adresse IP.

L'idée principale de la construction de fermes est que vous n'avez pas besoin de les configurer. C'est-à-dire qu'une fois que le réseau est en place, tout le reste fonctionne automatiquement. Une personne n'a pas à courir partout et à allumer ou éteindre les agents. Celui qui répondra, c'est celui qui sera utilisé. L'ensemble du système fonctionne en mode "nuage de ressources" automatique. Quelqu'un interrompt son travail et sa tâche est transférée au prochain agent disponible.


A propos, dans Active Directory, si vous avez des droits d'administrateur, vous pourrez mettre des agents sur des ordinateurs distants en quelques clics à partir d'un seul endroit (terminal client). En d'autres termes, vous pouvez transformer le réseau local de l'entreprise en un immense réseau informatique et utiliser toutes les ressources informatiques à 100 %.


Dès que la première version sera prête, nous vous laisserons la tester.

 

Renat:

L'ensemble du système fonctionne en mode "nuage de ressources" automatique.

Ooh ! c'est un bubli-GUM !

(Le GUM est un immense grand magasin situé en face du Kremlin.

 
stringo:
Au départ, nous voulions séparer les agents sur le LAN et les agents sur le WAN, mais nous avons ensuite abandonné cette division, jugée inutile. Nous les avons fusionnés dans la catégorie Remote, et avons renommé la catégorie MyComputer en Local.
C'est logique, mais la possibilité de connecter la distribution des calculs à un réseau étendu devrait être laissée quelque part dans la profondeur du programme. Au cas où le sujet pourrait "accrocher".
 
Il est probablement judicieux d'envisager de limiter les ressources informatiques des agents (charge du processeur, charge du réseau, etc.). Pour que les employés de bureau des grandes (et moins grandes) entreprises ne soient pas trop affectés par un énorme MT5 (basé sur leurs réseaux locaux) organisé (par l'administrateur, par exemple)...
 
Renat:

Les agents distants ne peuvent pas être séparés par noyau - chaque agent est configuré comme un agent distinct, mais peut être logiquement regroupé et trié dans une liste basée sur la correspondance des adresses IP.

Lors de la modification d'un agent particulier, nous pouvons suggérer de désactiver/activer des agents connexes sur la même adresse IP.

L'idée principale de la construction de fermes est que vous n'avez pas besoin de les configurer. C'est-à-dire qu'une fois que le réseau est en place, tout le reste fonctionne automatiquement. Une personne n'a pas à courir partout et à allumer ou éteindre les agents. Celui qui répondra, c'est celui qui sera utilisé. L'ensemble du système fonctionne en mode "nuage de ressources" automatique. Quelqu'un va interrompre son travail et sa tâche sera transférée au prochain agent disponible.

Et
A propos, dans Active Directory, si vous avez des droits d'administrateur, il sera possible de placer des agents sur des ordinateurs distants du réseau en quelques clics à partir d'un seul endroit (terminal client). En d'autres termes, vous pouvez transformer le réseau local de votre entreprise en un énorme réseau informatique en une minute et utiliser toutes les ressources informatiques à 100%.


Lorsque la première version sera prête, nous vous donnerons la possibilité de la tester.


Je tiens à remercier les développeurs de MetaTrader 5 pour avoir fait évoluer la plateforme dans le bon sens (franchement, je ne m'attendais pas à ce que MetaTrader 5 dispose d'un testeur doté de capacités de calcul distribué). Veuillez me conseiller sur le calendrier. Quand le testeur sera-t-il disponible ? Et, en fait, quand devons-nous nous attendre au lancement de Metatrader 5 dans le produit ?

 
Renat:

Les agents distants ne peuvent pas être séparés par noyau - chacun est configuré pour un agent distinct, mais ils peuvent être regroupés logiquement et triés dans une liste par adresse IP correspondante.

Lors de la modification d'un agent particulier, nous pouvons suggérer de désactiver/activer des agents connexes sur la même adresse IP.

L'idée principale de la construction de fermes est que vous n'avez pas besoin de les configurer. C'est-à-dire qu'une fois que le réseau est en place, tout le reste fonctionne automatiquement. Une personne n'a pas à courir partout et à allumer ou éteindre les agents. Celui qui répondra, c'est celui qui sera utilisé. L'ensemble du système fonctionne en mode "nuage de ressources" automatique. Quelqu'un interrompt son travail et sa tâche est transférée au prochain agent disponible.


A propos, dans Active Directory, si vous avez des droits d'administrateur, vous pourrez mettre des agents sur des ordinateurs distants en quelques clics à partir d'un seul endroit (terminal client). En d'autres termes, vous pouvez transformer le réseau local de l'entreprise en un immense réseau informatique en une minute et utiliser toutes les ressources informatiques à 100 %.

Je suis d'accord avec cela, être capable de distribuer automatiquement la charge en fonction du fait que le client est "en direct" ou non est cool. Mais ce que je voulais dire, c'était une configuration qui l'empêche complètement d'accéder à certaines parties temporairement déconnectées du réseau. Lorsqu'il y en a plusieurs dans un réseau, il est inévitable qu'il y ait un conflit de ressources. Parfois, nous le résolvons de cette manière administrative. Par exemple, aujourd'hui, l'un compte sur un cluster, l'autre "viole le département de la comptabilité", le troisième viole les analystes, etc. Demain, tout change. Un problème sérieux, en l'occurrence, quand on n'est pas seul dans le réseau.
 

Une chose qui me trouble à propos du réseau local...

C'est l'utilisation de pare-feu et d'autres "fermetures".
Comment cela va-t-il se passer...