/// <summary> /// Сеттер для калькулятора. /// </summary> /// <param name="data"> Исходные данные о курсе валют. </param> public void SetCalc(ChartData data) { if (data == null) { throw new ArgumentNullException(); } calc = new PredictionCalculator(data); }
/// <summary> /// Конструктор класса Investment. /// </summary> /// <param name="name"> Название варианта инвестиции. </param> /// <param name="amount"> Количество валюты. </param> /// <param name="currency"> Валюта. </param> /// <param name="period"> Период прогнозирования. </param> /// <param name="calc"> Калькулятор, прогнозирующий изменения курса валют. </param> public Investment(string name, decimal amount, CurrencyType currency, int period, PredictionCalculator calc) { InvestmentName = name; Amount = amount; Currency = currency; PredictionPeriod = period; ValuesOverTime = calc?.PredictCurrencyValues(period, currency); RiskEstimate = CalculateRiskEstimate(); ProceedsEstimate = CalculateProceedsEstimate(); ProfitPercentage = CalculateProfitPercentage(); }