поменял код на следующий:
public double Execute(ISecurity source, int barNum)
{
//var pos1 = source.Positions.LastPosition;
var pos2 = source.Positions.LastPositionActive;
var pos3 = source.Positions.LastPositionClosed;
//---- нет позиций, выход
if (pos2 == null && pos3 == null) return 0;
int p2 = pos2 == null ? 0 : pos2.EntryBarNum;
int p3 = pos3 == null ? 0 : pos3.EntryBarNum;
int maxpos = Math.Max(p2, p3);
//
return barNum > maxpos ? barNum - maxpos : 0;
}
и всё равно - иногда лаб после закрытия позиции некорректно отрабатывает
Attachments
общий вид.gif (79 downloads)укрупнённо.gif (76 downloads)
Отредактировано vito333 (Sat Aug 18 2012 06:44 AM)