MT5 et la vitesse en action - page 84

 
Ai-je raison de penser qu'avoir des EA pour 20 paires serait le plus rentable pour faire fonctionner 20 terminaux, 1 dans chaque ?
 
traveller00:
Est-ce que je comprends bien que le fait d'avoir des EA pour 20 paires serait le plus rentable pour faire fonctionner 20 terminaux avec 1 dans chacun ?

Oui.

 
traveller00:
Est-ce que je comprends bien que le fait d'avoir des EA pour 20 paires sera le plus rentable pour faire fonctionner 20 terminaux, 1 dans chaque ?

Les files d'attente sont différentes, il est plus rapide de passer les actions de 20 terminaux qui ne sont pas très chargés que de faire la queue dans un seul terminal chargé.

 

Une comparaison avec les journaux du serveur a montré que OrderSend du terminal atteint le serveur sans aucun retard. C'est-à-dire que si vous avez besoin d'obtenir des liquidités rapidement, vous le ferez probablement.

Mais vous ne pouvez savoir que dans le terminal si vous l'avez saisi ou non qu'avec un énorme retard. En d'autres termes, il y a un décalage de l'environnement commercial dans le terminal.

 
fxsaber:

Sur un compte, j'ai réparti toutes les opérations sur cinq terminaux. De l'autre, j'ai tout laissé en un.


Les journaux montrent que la division du compte en plusieurs terminaux diminue le temps de fonctionnement de OnTradeTransaction.

Je peux également affirmer avec certitude que le temps de OnTradeTransaction est influencé par le nombre d'ordres envoyés : plus ce nombre est élevé, plus il est long en moyenne.


D'une manière générale, tout semble rester calme.

Nous allons vérifier. Mais il est préférable de joindre un exemple de code tout de suite. D'après votre journal, des retards commencent à se produire lorsque vous négociez avec une fréquence d'environ 1 ms, c'est-à-dire que vous envoyez un ordre à chaque tick ou un timer toutes les 1 ms.

 
Anton:

Nous allons vérifier. Mais il est préférable de joindre un exemple de code. D'après votre journal, vos retards commencent lorsque vous négociez avec une fréquence d'environ 1 ms, c'est-à-dire soit à chaque tick où un ordre est envoyé, soit sur une minuterie toutes les 1 ms.

Les modifications peuvent être fréquentes. Je ne peux pas joindre un conseiller expert en lutte. Probablement, nous devrions écrire un autopooler.

 
fxsaber:

Les modifications peuvent être fréquentes. Je ne peux pas joindre un conseiller de combat. Il faut probablement écrire un autopulseur.

Modifier imho besoin aussi rarement que possible, je pense qu'il ya une sorte de classement sur le nombre de demandes au serveur, et si beaucoup de "bruit" sur le serveur peut être à la queue.

 
Mikhail Mishanin:

modifier le moins possible, je pense qu'il existe une sorte de classement du nombre de demandes adressées au serveur, et si vous faites beaucoup de "bruit" sur le serveur, vous risquez de vous retrouver à la queue du classement.

Il n'y a rien de tel.

 
fxsaber:

vous devez écrire une auto-bulle.

Dans la bande-annonce. En l'exécutant sur une machine avec des pings proches de zéro, le terminal GUI se bloque, ne répond à rien (via RDP), mais effectue un rendu.

Apparemment, des centaines de FPS inutiles l'affectent. C'est un bug.


Cependant, si vous exécutez trois copies simultanément, cela se produit en une seule fois.

DH      0       14:52:25.817    Trades  '88756': order #2229679 sell 0.01 / 0.01 EURUSD at market done in 31.402 ms (OrderSendTest_Position)
Ceci est une démo avec un ping de ~0.5 ms.
Dossiers :
 

Sur une machine avec un ping nul, je n'ai jamais vu (en parcourant le journal) le résultat d'un ordre de transaction exécuté par Terminal (2/20 EAs en cours d'exécution) plus vite que 1,5 ms. Très bien ~2-3 ms.

En quoi consiste ce temps ? Est-ce une particularité de l'OS ?


Le serveur MQ-Demo est maintenant b2789. Y a-t-il quelque chose de changé en termes de vitesse par rapport au serveur b2755 ?

Raison: