Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1364

 
MakarFX:

mais j'ai essayé de cette façon.

Quelle fonction dois-je utiliser ensuite pour parcourir les positions fermées?

 
Amon1953:

Quelle fonction dois-je utiliser ensuite pour parcourir les positions fermées?

Et qu'est-ce qu'il faut faire avec les commandes trouvées en général ?
 
MakarFX:
Que faut-il faire avec les commandes trouvées ?

J'ai besoin de trouver la dernière position SL fermée pour prendre une décision.

if(HistorySelectByPosition(ORDER_MAGIC==1))

{

int PosTotal= ? ?? quelle fonction utiliser ?

Alert("PosTotal ",PosTotal) ;

for(int i=PosTotal-1 ; i>=0 ; i--)

{

Alert("PositionsTotal ",PosTotal) ;

}}


 
Amon1953:

J'ai besoin de trouver la dernière position SL fermée pour prendre une décision.

Il y a une énorme différence entre

a) Déterminez si la dernière position a été fermée au stop, et

b) Trouvez la dernière position fermée par un stop.

--------

De quoi avez-vous besoin ?

 
Amon1953:

J'ai besoin de trouver la dernière position SL fermée pour prendre une décision.

Je ne suis pas bon en MQL5, mais je pense que la recherche devrait commencer comme ceci

      if(HistoryOrderSelect(ticket))
        {
         if(HistoryOrderGetInteger(ticket,DEAL_TIME)>=CurrentTime)
           {
            if(HistoryOrderGetInteger(ticket,DEAL_MAGIC)==Magic)
              {
               if(HistoryOrderGetInteger(ticket,DEAL_TYPE)==DEAL_TYPE_BUY)
 
MakarFX:

Je ne suis pas bon en MQL5, mais je pense que la recherche devrait commencer comme ceci

J'ai besoin d'une position fermée, pas d'une transaction ou d'un ordre.

 
Amon1953:

J'ai besoin d'une position fermée, pas d'une transaction ou d'un ordre.

Confus

HistoryOrderSelect


 
MakarFX:

Confus

HistoryOrderSelect


Comment un mandat peut-il aider ?

 
Artyom Trishkin:

Comment un mandat peut-il aider ?

La question initiale était

Amon1953:
C 'est probablement une question simple et naïve, mais je me suis déjà creusé la tête à propos deHistorySelectByPosition(ORDER_MAGIC==1) J'ai besoin d'un historique des positions avec magic = 1. Quelque chose que je ne comprends pas. Quoi que je fasse, je n'ai pas l'histoire. Où dois-je inscrire le numéro d'un magicien ?
      if(HistoryOrderSelect(ticket))
        {
         if(HistoryOrderGetInteger(ticket,ORDER_MAGIC)==Magic)


 
MakarFX:

La question originale était.


En cinq, ordre !=position. Et une transaction. Un ordre (commande) génère une transaction. Et un accord donne lieu à une position, soit en la modifiant, soit en la fermant.

Par conséquent, pour savoir comment une position a été clôturée, vous devez sélectionner les transactions de cette position, trouver la transaction de clôture et regarder ses propriétés - la raison de la clôture peut y être spécifiée.