PositionGetTicket

La fonction retourne le ticket de la position située à l'indice spécifié dans la liste des positions ouvertes et sélectionne automatiquement la position pour l'utiliser ensuite avec les fonctions PositionGetDouble, PositionGetInteger, PositionGetString.

ulong  PositionGetTicket(
   int  index      // Le numéro de la position dans la liste
   );

Paramètres

index

[in]  L'indice d'une position dans la liste des positions ouvertes, la numérotation commence à 0.

Valeur de Retour

Le ticket de la position. Retourne 0 si la fonction échoue.

Note

Pour le "netting" des positions (ACCOUNT_MARGIN_MODE_RETAIL_NETTING et ACCOUNT_MARGIN_MODE_EXCHANGE), seule une position peut exister pour un même symbole à tout moment. Cette position est le résultat d'une ou plusieurs transactions. Ne confondez pas les positions avec les ordres en attente valides, qui sont également affichés dans l'onglet Trading de la fenêtre Boîte à Outils.

Si les positions individuelles sont autorisées (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING), plusieurs positions peuvent être ouvertes pour un même symbole.

Pour être sûr d'utiliser les données à jour d'une position, il est recommandé d'appeler PositionSelect() juste avant son utilisation.

Exemple :

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- boucle sur toutes les positions du compte
   int total=PositionsTotal();
   for(int i=0i<totali++)
     {
      //--- obtient le ticket de la position suivante en sélectionnant automatiquement une position pour accéder à ses propriétés
      ulong ticket=PositionGetTicket(i);
      if(ticket==0)
         continue;
      
      //--- récupère le type de position et affiche la description de la position sélectionné dans le journal
      string type=(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE ? "Buy" : "Sell");
      PrintFormat("[%d] Selected position %s #%I64u"itypeticket);
     }
   /*
   résultat :
   [0Selected position Sell #2810802718
   [1Selected position Buy #2810802919
   */
  }

Voir également

PositionGetSymbol(), PositionSelect(), Propriétés d'une Position

OSZAR »