/// <summary> /// Обработчик появления новых данных /// Вычисляет среднюю за период /// Вычисляет отклонение источника от средней за период /// </summary> ///// <param name="item">Bar</param> //public override void OnEvent(long id) public void Do(long id) { ///вычисляем новые занчения ///Input var input = Input.Value.ToList <Bar>(); double iAverageTrueRange = TRx.Indicators.BarSource.Indicator.AverageTrueRange_i( input, input.Count - 1); AverageTrueRange.Add(iAverageTrueRange); ///вызываем обработчики значений foreach (var handler in HandlersAverageTrueRange) { handler.Invoke(AverageTrueRange.Last()); } ///упаковка посчитанных значений ValueAverageTrueRange.Add(new ValueDouble() { Id = id, //DateTime = item.DateTime, //TODO 4. сейчас отрисовывается по имени MaFast, надо переделать на стороне отрисовки Name = "AverageTrueRange", Value = iAverageTrueRange }); ///отправка посчитанных значений foreach (var handler in HandlersValueAverageTrueRange) { handler.Invoke(ValueAverageTrueRange.Last()); } }