Questions des débutants MQL5 MT5 MetaTrader 5 - page 1429

 

Les gars, donnez-moi un indice, s'il vous plaît.

Je n'étais pas un très bon programmeur dans MT4 ) Maintenant je passe à MT5.

J'ai rencontré une telle nuance :

Je veux que les ordres ouverts ne soient pas plus d'un à la fois, sur MT4 c'était assez facile à résoudre.... Dans MT5 dans le manuel il est écrit "NE PAS confondre les ordres et les transactions" et il est écrit que c'est nécessaire à travers la fonction

HistoryDealGetInteger

La fonction HistoryDealGetInteger pour demander quelque chose là..... Je ne comprends rien, honnêtement. S'il vous plaît, mesdames et messieurs, expliquez-moi humainement.

 
Sergey Dymov HistoryDealGetInteger

La fonction HistoryDealGetInteger pour demander quelque chose là..... Je ne comprends rien, honnêtement. S'il vous plaît, mesdames et messieurs, expliquez-moi humainement.

Une commande est un ordre ou une demande d'exécution d'une action, elle a son propre ticket, une transaction est une action sur la commande reçue, elle a son propre ticket de transaction et son numéro de commande (ticket) Une commande peut être exécutée par plusieurs transactions, et il y a aussi une position, qui est générée par une transaction sur la commande. La position a son propre ticket et stocke le numéro de transaction et le numéro d'ordre. C'est en 5k.

Dans 4k, un ordre de transaction et une position constituent un ordre de marché.

 
Rustam Ayupov #:
Bonjour, je suis en train d'explorer le terminal MT5 avec toutes ses possibilités étonnantes. Et maintenant, avec le temps, le problème d'une limitation incompréhensible du terminal dans le traitement des cotations en temps voulu a commencé à prendre de l'ampleur, alors que j'étais en mode démo. Pour diversifier les risques, je négocie avec des volumes minimums, si possible avec le plus grand nombre de paires de devises. J'ai ouvert dix paires de devises chez six courtiers et Roboforex a été le premier à commencer à ralentir... puis les autres ont également commencé à ralentir le chargement des cotations. Le processeur est chargé à 20-70%, 16 gigas de RAM ne sont pas chargés à plus de 60%, disque SSD, pour le swap il y a plein de tout, Internet 100mbit, fibre optique. Est-ce vraiment la limite du terminal MT5 ? Ou le problème réside-t-il dans les serveurs limités des courtiers ? Y a-t-il des limites pour chaque trader séparément ? Eclairez-moi ? Comment augmenter la vitesse de chargement des cotations ? JE VOUS REMERCIE.

J'ai désynchronisé les processus dans le terminal. Cela m'a aidé. Le problème est que la plupart des programmes (99%) ne sont pas adaptés à ces fonctionnalités, de même que le terminal lui-même.

 
Valeriy Yastremskiy #:

Un ordre est un ordre ou une demande d'exécution d'une action, il a son propre ticket, une transaction est une action sur l'ordre reçu, elle a son propre ticket de transaction et son propre numéro d'ordre (ticket) Un ordre peut être exécuté par plusieurs transactions, et il y a aussi une position, qui est générée par une transaction sur l'ordre. La position a son propre ticket et stocke le numéro de transaction et le numéro d'ordre. Elle se trouve dans 5k.

Dans 4k, un ordre de transaction et une position constituent un ordre de marché.

D'accord. Merci, mon bon monsieur.

 

Bonjour. Pouvez-vous me dire comment retrouver un ordre déclenché sur un ticket dans MQL5 et voir qu'il s'est clôturé au take profit? Dans MQL4 c'était si facile.

 
Mihail Nefedov take profit? Dans MQL4 c'était si facile.

Bonjour Michael, je n'ai pas essayé de chercher de cette manière, mais je suppose qu'en utilisant la structure MqlTradeTransaction, vous pouvez demander le prix auquel l'ordre a été clôturé et son prix de prise de profit, puis les comparer l'un à l'autre.

Cordialement, Vladimir.

 
MrBrooklin #:

Bonjour Michael, je n'ai pas essayé de faire cette recherche moi-même, mais je suppose qu'en utilisant la structure MqlTradeTransaction, vous pouvez demander le prix auquel l'ordre a été clôturé et son prix de prise de profit, puis les comparer l'un à l'autre.

Cordialement, Vladimir.

Dans OnTradeTransaction, vous pouvez suivre la clôture uniquement au moment de la clôture. Après cela, il n'y a plus de position du tout. C'est donc une tâche ingrate que de chercher dans l'historique. Dans ce cas, nous devons réorganiser l'ensemble de l'algorithme de contrôle.

 
Alexey Viktorov #:

Dans OnTradeTransaction, vous ne pouvez suivre la clôture qu'au moment de la clôture. Après cela, il n'y a plus de position du tout. C'est donc une tâche ingrate que de chercher dans l'historique. Dans ce cas, l'ensemble de l'algorithme de contrôle doit être réorganisé.

Bonsoir Alexey, avez-vous une meilleure solution ?

Cordialement, Vladimir.

 
MrBrooklin #:

Bonsoir Alexei, y a-t-il une meilleure option ?

Cordialement, Vladimir.

Tout dépend de ce que vous voulez. Si vous avez besoin de déterminer comment une position a été fermée au moment de sa fermeture, vous ne pouvez pas faire mieux que le contrôle dans OnTradeTransaction. Si vous devez déterminer comment une certaine position a été clôturée à partir de l'historique, vous devez alors parcourir les transactions dans l'historique. Il faut également tenir compte du fait que toutes les transactions de fermeture d'une position n'ont pas de magik.

En général, c'est une véritable plaie... Mais avec un peu d'expérience, c'est possible.

 
Mihail Nefedov #:
Bonsoir, quelqu'un sait-il comment retrouver un ordre déclenché dans MQL5, connaître son ticket et visualiser son profit ? Où et quoi chercher, lisez une leçon sur ce sujet.

Tout d'abord, comprenez la terminologie. Comprenez que dans mt4 un ordre et dans mt5 sont 3 concepts différents. Ordre->Transaction->Position.

Le profit dans l'historique ne peut être visualisé que pour une transaction. Mais le ticket d'une transaction est différent du ticket d'une position fermée. La seule chose qui unit l'ordre, la transaction et la position est l'ID de la position.

Raison: