14 double rollingAverage(
const std::vector<double>& values,
int window);
15 void trainModel(
const std::vector<Transaction>& history);
22 if (history.empty())
return 0.0;
24 for (
const auto &t : history) sum += t.amount;
25 double avg = sum /
static_cast<double>(history.size());
29 if (values.empty() || window <= 0)
return 0.0;
32 for (
int i = std::max(0, (
int)values.size() - window); i < (int)values.size(); ++i) { sum += values[i]; ++count; }
33 return count ? sum / count : 0.0;
Оголошення класу Transaction, що представляє одну фінансову операцію.
Definition ForecastModel.h:7
double confidence
Definition ForecastModel.h:10
int forecastHorizon
Definition ForecastModel.h:9
void trainModel(const std::vector< Transaction > &history)
Definition ForecastModel.h:35
double evaluateForecast(const std::vector< Transaction > &actual)
Definition ForecastModel.h:36
double forecastNextMonth(const std::vector< Transaction > &history)
Definition ForecastModel.h:20
double rollingAverage(const std::vector< double > &values, int window)
Definition ForecastModel.h:28