PositionSelect

Einloggen oder registrieren, um einen Kommentar zu schreiben
amando
2893
amando  

Hallo, 


mal eine frage,


angenommen ich habe mehrere Positionen offen und will von der ältesten die Lotzahl wissen

double OldestPositionLotExpert(const string symbol,const int MagicNumber) //Gewinn der Gesamtposition
  {

   int total=PositionsTotal(); // Anzahl offener Positionen   
   double volume=0;
//--- in allen offenen Positionen suchen

   for(int i=0; i<total; i++)
     {
      //--- Parameter der Order
      ulong  position_ticket=PositionGetTicket(i);// das Ticket der Position
      PositionSelectByTicket(position_ticket);
      
      string position_symbol=PositionGetString(POSITION_SYMBOL); // Symbol 
      ulong  magic=PositionGetInteger(POSITION_MAGIC); // MagicNumber der Position
      double position_lot=PositionGetDouble(POSITION_VOLUME);

      //--- wenn die MagicNumber übereinstimmt, sind Stop Loss und Take Profit nicht gesetzt
      if(position_symbol==symbol && MagicNumber==magic)
        {
         volume=position_lot;
        }
     }
   return(volume);
  }


Ich bekomme in der schleife ja immer die letzte raus,

ist die letzte bei 

i++ die neueste

oder  bei

i— die neueste?


die doku ist da ein wenig kryptisch


logisch würde ich sagen, ich muss von oben runterzählen,aber ist das so?


danke für imfo

amando

Carl Schreiber
Moderator
9869
Carl Schreiber  
amando:

Hallo, 


mal eine frage,


angenommen ich habe mehrere Positionen offen und will von der ältesten die Lotzahl wissen


Ich bekomme in der schleife ja immer die letzte raus,

ist die letzte bei 

i++ die neueste

oder  bei

i— die neueste?


die doku ist da ein wenig kryptisch


logisch würde ich sagen, ich muss von oben runterzählen,aber ist das so?


danke für imfo

amando

Da Du nicht sicher sein kannst, dass die Reihenfolge die die der Server/das Terminal bietet der zeitlichen entspricht, musst Du die Eröffnungszeiten (sind ja Sekunden seit 1.1.1970) vergleichen!

amando
2893
amando  
Carl Schreiber:

Da Du nicht sicher sein kannst, dass die Reihenfolge die die der Server/das Terminal bietet der zeitlichen entspricht, musst Du die Eröffnungszeiten (sind ja Sekunden seit 1.1.1970) vergleichen!

bin ich froh, das metaquotes so eine Qualität liefert ;-)

gut das schaff ich, danke für die info, steht ja in der Position, muss man nur rauslesen

dachte es ist übersichtlicher wenn ich die pos Nummer nehme und einfach durchlaufen lasse

Einloggen oder registrieren, um einen Kommentar zu schreiben