/// <summary> /// Загрузить настройки. /// </summary> /// <param name="settings">Хранилище настроек.</param> public override void Load(SettingsStorage settings) { base.Load(settings); Ema.LoadNotNull(settings, "Ema"); Roc.LoadNotNull(settings, "Roc"); }
/// <summary> /// Сохранить настройки. /// </summary> /// <param name="settings">Хранилище настроек.</param> public override void Save(SettingsStorage settings) { base.Save(settings); settings.SetValue("Ema", Ema.Save()); settings.SetValue("Roc", Roc.Save()); }
/// <summary> /// Обработать входное значение. /// </summary> /// <param name="input">Входное значение.</param> /// <returns>Результирующее значение.</returns> protected override IIndicatorValue OnProcess(IIndicatorValue input) { var candle = input.GetValue <Candle>(); var emaValue = Ema.Process(input.SetValue(this, candle.HighPrice - candle.LowPrice)); if (Ema.IsFormed) { return(Roc.Process(emaValue)); } return(input); }