Основное предназначение журнала – хранение и обработка всех позиций, принадлежащих одной вкладке. В журнале имеется как общий список для всех хранящихся в нем позиций, так и разбиение по нескольким спискам на основании состояния или типа позиции.
public Position PositionsLast
Возвращает ссылку на последнюю позицию в списке всех позиций или null, если список позиций пуст.
public List<Position> PositionsAll
Свойство возвращает список всех позиций, принадлежащих вкладке, в каком бы состоянии они не находились.
public List<Position> PositionsOpenAll
Возвращает список всех открытых позиций. Позиция считается открытой в случае, когда по открывающему ордеру прошла как минимум одна сделка. Например, при открытии позиции выставляется ордер на покупку объемом 100 лотов. Проходит сделка в 1 лот, ордер будет находиться в состоянии Partial, но позиция будет уже считаться открытой и иметь состояние Open. При написании торговой логики следует учитывать этот факт.
public List<Position> PositionsCloseAll
Возвращает список всех закрытых, а также не открывшихся позиций. Сюда входят все позиции с состоянием Done и OpeningFall. Позиция получает статус Done, когда суммарный исполнившийся объем закрывающих ордеров станет равен аналогичному значению открывающих ордеров. В OpeningFall состояние переходит при отмене открывающего ордера в случае, если по нему не было ни одной сделки.
public List<Position> PositionOpenLong
Данное свойство возвращает список открытых длинных позиций. Сюда попадают позиции, имеющие следующее состояние:
public List<Position> PositionOpenShort
Данное свойство возвращает список открытых коротких позиций. Сюда попадают позиции, имеющие следующее состояние:
Если в позиции имелся закрывающий ордер, но был отозван или не принят торговой системой, ее состояние переходит в ClosingFall. Такую позицию необходимо повторно закрыть, используя один из закрывающих методов.
Состояние ClosingSurplus появляется у позиции в момент превышения объема закрывающих ордеров. Например, было куплено 100 лотов, а суммарный исполнившийся объем закрывающих ордеров равен 110 лотам. В таком случае в позиции будет отображаться отрицательный текущий объем -10. Такое может произойти по ряду причин, но в любом случае необходимо принять меры для выравнивания ситуации.
public List<PositionOpenerToStopLimit> PositionOpenerToStopsAll
Данное свойство возвращает список всех отложенных позиций. Напомню, класс PositionOpenerToStopLimit описывает условие пересечения ценой заданного значения, после чего создается реальная позиция.
public List<PositionOnBoard> PositionsOnBoard
Хотя данное свойство и не относится к журналу, тем не менее его стоит упомянуть в текущем контексте. При вызове свойства возвращается список биржевых позиций, соответствующих инструменту вкладки.
Комментарии