PositionGetTicket

Функция возвращает тикет позиции по индексу в списке открытых позиций и автоматически выбирает эту позицию для дальнейшей работы с ней при помощи функций PositionGetDouble, PositionGetInteger, PositionGetString.

ulong  PositionGetTicket(
   int  index      // номер в списке позиций
   );

Параметры

index

[in]  Индекс позиции в списке открытых позиций, начиная с 0.

Возвращаемое значение

Тикет позиции. В случае неудачного выполнения возвращает 0.

Примечание

При "неттинговом" учете позиций (ACCOUNT_MARGIN_MODE_RETAIL_NETTING и ACCOUNT_MARGIN_MODE_EXCHANGE) по каждому символу в любой момент времени может быть открыта только одна позиция, которая является результатом одной или более сделок. Не следует путать между собой позиции и действующие отложенные ордера, которые также отображаются на вкладке "Торговля" в панели "Инструменты".

При независимом представлении позиций (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING) по каждому символу одновременно может быть открыто несколько позиций.

Для гарантированного получения свежих данных о позиции рекомендуется вызывать функцию PositionSelect() непосредственно перед обращением за ними.

Пример:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- в цикле по всем позициям на счёте
   int total=PositionsTotal();
   for(int i=0i<totali++)
     {
      //--- получаем тикет очередной позиции, автоматически выбирая позицию для доступа к её свойствам
      ulong ticket=PositionGetTicket(i);
      if(ticket==0)
         continue;
      
      //--- получаем тип позиции и выводим описание выбранной позиции в журнал
      string type=(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE ? "Buy" : "Sell");
      PrintFormat("[%d] Selected position %s #%I64u"itypeticket);
     }
   /*
   результат:
   [0Selected position Sell #2810802718
   [1Selected position Buy #2810802919
   */
  }

Смотри также

PositionGetSymbol(), PositionSelect(), Свойства позиций