Questions "pour" du conducteur de vélo - page 7

 

Simon,

Si la fonction OrdersTotal() renvoie 10, quelle est la position de la dernière et de la première commande ?

J'ai utilisé la fonction OrdersTotal() comme condition avant d'utiliser les fonctions OrderSend(). Si je comprends bien, j'ai utilisé la fonction OrdersTotal() de la manière suivante :

if(OrdersTotal()<1) OrderSend(...);

// I have also used the function like this...

if(OrdersTotal()==0) OrderSend(...);

Les deux lignes de code ci-dessus représentent quelque chose comme, s'il n'y a pas d'ordres en cours, envoyer un ordre.

Fonction OrdersTotal() Retourne le nombre d'ordres au marché et d'ordres en attente (ceci peut également être écrit : Retourne le total des ordres actuels sur le marché et le total des ordres en attente).

Je suppose que la fonction "Order ticket position" fonctionne de la même manière. Il commence par 1 et se termine par 10 (personnellement, je ne sauterais pas à cette conclusion sur la base de la représentation de la valeur de la fonction OrdersTotal(), mais il faut progresser).

si OrdersTotal() renvoie 10, la première position est 1 et la dernière position 10. Ainsi, la position actuelle de la commande la plus récente est 10 et la première commande passée (la 10e de suite) est 1.

Merci.

 

@WhooDoo22:si OrdersTotal() retourne 10, la première position est 1 et la dernière position 10. = faux.
- Par conséquent, la réponse correcte est 0 et 9
- La 1ère Position=0 && La Dernière Position = OrderTotal - 1
- Pourquoi dites-vous toujours "Position du ticket de commande" ?
- C'est soit "Ticket de commande" soit "Position de commande".
- Veuillez vous abstenir de l'appeler "Position du ticket de commande".
- La première position dans le pool est toujours zéro

 

ubzen,

@WhooDoo22:si OrdersTotal() retourne 10, la première position est 1 et la dernière position 10. = false.

Je crois que j'étais proche en indiquant 1 comme première position et 10 comme dernière position parce que je pensais que c'était similaire à la représentation des valeurs de OrdersTotal().

Un comme premier et zéro comme premier est très proche. Dix en dernier et neuf en dernier sont très proches. L'erreur se situe dans la représentation des valeurs.


- La 1ère Position=0 && La Dernière Position = OrderTotal - 1

Je comprends que la valeur de la 1ère position est représentée par zéro parce que les valeurs des numéros de position de la commande sont représentées de manière similaire à un tableau (exemple : 0,1,2,3,4,etc.).

Je ne comprends pas pourquoi la dernière position est égale à OrdersTotal() -1. Est-ce parce que la fonction OrdersTotal() ne traite que les ordres actuels et que tous les ordres de l'historique sont considérés comme moins un ?


- Pourquoi dites-vous toujours "Position du ticket de commande" ?

Parce que ce "Ticket d'ordre" représente le ticket sur le marché et "Position du ticket d'ordre" représente la position du ticket.


- C'est soit "Order Ticket" soit "Order Position".

Je pense qu'il est préférable d'appeler "Order Ticket" "Order ticket number" et "Order Position" "Order position number". Il est important d'être descriptif car les deux peuvent prêter à confusion si la différence n'est pas comprise.


- La première position dans le pool est toujours zéro

Si c'est effectivement le cas, on en revient à la représentation des valeurs. La représentation de la valeur est similaire à un tableau (exemple : 0,1,2,3,4, etc.).


Merci.

 

@WhooDoo22: Je ne comprends pas pourquoi la dernière position est égale à OrdersTotal() -1.

C'est comme si vous aviez des coureurs sur une piste. Les voies sont illustrées ci-dessous.

|0|1|2|3|4|5|6|7|8|9|

Notez que les couloirs sont désignés de 0 à 9 parce que c'est ainsi que le gars qui a peint les pistes a eu envie de les numéroter. [Oh Seigneur, ne me demandez pas pourquoi il les a peintes de cette façon :)].

Quoi qu'il en soit, la piste est pleine de coureurs pour cet événement. Ces coureurs ont tous des numéros sur leur dos. Si vous avez déjà regardé une course, vous savez de quoi je parle. Mais ces coureurs choisissent leurs propres numéros personnels. Il se peut que le premier gars pense que le 7 est son chiffre porte-bonheur et le met sur son uniforme. Et le dernier gars, dont le père était décédé, avait le 23 sur son dos, alors pour honorer la mémoire de son père, il porte le numéro 23 aujourd'hui. Bref, les coureurs s'alignent comme suit .

|7|93|41|68|17|45|22|6|16|23|

Quelqu'un vient de demander à une fille nommée OrdersTotal combien il y a de Runners dans la course. OrdersTotal a répondu Dix [10] (parce qu'elle est très intelligente).

Quelqu'un vient de demander à une fille nommée "i" alias "index" la position du 1er coureur. Ce à quoi elle répond promptement 0 (parce qu'elle est si intelligente). On lui demande également la position du dernier coureur et elle répond Neuf [9] en regardant la piste ci-dessus.

Quelqu'un vient de demander à une fille nommée OrderTicket quel est le numéro du Runner_Number dans la 1st_Position. Et elle répond 7. (parce qu'elle est très intelligente). Et pour le numéro du coureur en dernière position, elle répond 23 "parce qu'il honore son papa aujourd'hui".

Maintenant, quel coureur va gagner la course, je vais garder ce scénario pour un autre jour. Cependant, j'espère que mon étude de cas vous aidera à comprendre.

Si vous regardez les numéros de position, ils sont tous décalés de 1. Tout simplement parce que le peintre a décidé de commencer son compte à partir de zéro. S'il avait commencé à compter à partir de 1, alors oui, ce serait 1>10. Ainsi, chaque nombre peut être représenté par rapport à OrdersTotal. Même la 1ère_Position peut être représentée comme (OrdersTotal - OrdersTotal) ce qui donne 0.

 

ubzen,

Quelle illustration fascinante vous me présentez. Merci beaucoup d'avoir pris le temps de l'exprimer avec autant de détails !

Pour ce qui est du coureur qui gagnera la course, il s'agit généralement du coureur situé dans le couloir le plus intérieur d'une piste, en supposant que tous les coureurs sprintent à la même vitesse. Je ne sais pas si cela correspond à votre illustration, mais si c'est le cas, ce pourrait être (indice zéro ou indice neuf) ou (coureur sept ou coureur vingt-trois).

Merci.

 
Vous êtes les bienvenus.
 
RaptorUK:
La première position dans le pool... comme dans un tableau, le premier élément est à la position 0, le deuxième à la position 1, le troisième à la position 2, etc.

Ce que je trouve étrange, c'est que vous essayez d'utiliser cette fonction sans savoir comment l'utiliser... N'avez-vous pas regardé d'autres codes et vu une boucle comptant vers le bas à partir de OrdersTotal() - 1 ? Pourquoi pensez-vous que le -1 est là ?

Vous avez lu ce message... donc vous saviez que la première position dans le pool était 0, mais maintenant vous dites que c'est 1, je suis confus, pourquoi dites-vous une telle chose ?
 

Simon,

Honnêtement Simon, la journée a été si longue et je me sens un peu confus aussi concernant certaines choses. ;) Il est peut-être préférable que je prenne un repas nécessaire, une bonne boisson et que je dorme pour me remettre sur pied pour la journée à venir, afin d'avoir à nouveau un raisonnement clair pour la discussion. Je suis satisfait des progrès de cette journée.

Merci.

 
WhooDoo22:

Simon,

Honnêtement Simon, la journée a été si longue et je me sens un peu confus aussi concernant certaines choses. ;) Il est peut-être préférable que je prenne un repas nécessaire, une bonne boisson et que je dorme pour me remettre sur pied pour la journée à venir, afin d'avoir à nouveau un raisonnement clair pour la discussion. Je suis satisfait des progrès de cette journée.

Merci.

Bonne idée, alors mettez-vous au travail sur les fondamentaux.
 

Simon,

Vous avez lu ce message... donc vous saviez que la première position dans le pool était 0, mais maintenant vous dites que c'est 1, je suis confus, pourquoi dites-vous une telle chose ?

Je comprends la représentation des valeurs pour un pool d'ordres. Vous savez quel est le grand indice pour comprendre la représentation de la valeur d'un groupement d'ordres ? Je vais vous le dire quand même :) index . L'indice n'est-il pas considéré comme la même chose que...

untableau: 0,1,2,3,etc. Chaque valeur doit être remplie avec un seul chiffre ou une combinaison de chiffres.

et...

desvaleurs décalées: 0,1,2,3,etc. Chaque valeur est un décalage du tick actuel ou précédent du cadre temporel (exemple : Cadre temporel M5. L'indice actuel pour le cadre temporel M5 est zéro (0). Le tout dernier décalage ou le plus récent pour la trame temporelle M5 est indexé à un (1) ou son emplacement est l'indice 1).


Il existe plusieurs codes MQL4 représentant les valeurs 0,1,2,3, etc. Le mot "magique" à remarquer est index.

Donc ;), jetons un coup d'oeil dans le dictionnaire MetaEditor et voyons ce qu'il nous offre comme définition de la fonction OrderSelect()?

bool OrderSelect( int index, int select, int pool=MODE_TRADES)

Huh ;), et voilà qu'il y a un index, comme prévu. Cela devrait balayer toutes les obscurités de la pensée à la représentation de la valeur de la première valeur contenue dans la fonction OrderSelect() :)

Attendez, il est également important de comprendre que l'index ne s'applique qu'à la fonction OrderSelect() UNIQUEMENT si la fonction localise des commandes dans un pool de commandes. Cela devrait être tout pour cela.


Ceci étant écrit, je rembobine les paramètres du problème auquel je suis arrivé il n'y a pas si longtemps.

erreur de ticket invalide

L'erreur instantanée ci-dessus est le problème actuel qui doit être résolu. Quels sont les conseils que vous recommandez pour résoudre ce problème ?

Merci.

Dossiers :