using System; using System.Linq; using TSLab.Script.Realtime; using System.Collections.Generic; using TSLab.Script; using TSLab.Script.Handlers; // ReSharper disable UnusedAutoPropertyAccessor.Global // ReSharper disable MemberCanBePrivate.Global // ReSharper disable UnusedMember.Global namespace TSLab.Script.Handlers { [HandlerName("Профит Предпоследней закрытой позиции Шорт")] [HandlerCategory("777")] public class HasTwoLoss__ : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs { public double Execute(ISecurity source, int barNum) { var list = source.Positions.Where(pos => !pos.IsActive && pos.IsShort && pos.EntryBarNum < barNum).OrderByDescending(pos => pos.ExitBar.Date).ToArray(); if(list.Length < 2) { return 0; } return list[1].Profit(); } }}