Спасибо, Nektodron, будем рассчитывать. С определениям кол-ва баров в открытой позиции разобрался, Ваш пример не работал, т. к. стратегия переворотная и проблемма была из-за IOrder lastOrder=null; Подошёл вариант расчёта предложенный anothar: int barShift=0; if(sec.Positions.LastPositionActive!=null) barShift=k-sec.Positions.LastPositionActive.EntryBarNum;
В заключении ещё один вопрос, т. к. в расчёте скрипта всё чаще используется цена открытия позиции, то её изменение после проведения клиринга становится более критично. Можете подсказать какой-нибудь метод чтобы после проведения клиринга в расчёте использовалась оригинальная цена открытия позиции до клира?