# calculating aggregate confidence intervals for forecasts

I'm using ARIMA models to estimate sales forecast for a company. The company's sales channel is broken down into 4 sales channels and I'm running 4 different models to estimate the sales for each channel. Eventually, I'm going to aggregate the sales of these channels to find the total forecasted sales for the whole company. My questions is, how should i go about finding the confidence interval for the overall forecast? Adding up the confidence intervals of each channel is not correct since that will give me a very large interval.

I'd really appreciate if anyone can give me some idea on how to approach this sort of issue. Thanks in advance!

Two ways, basically.

One is two use vector models, of which there's a ton. For instance, VAR (vector autoregression) on differences, VARMA etc. This sounds proper but the problem is usually with availability of data. With 4 variables, you have 4x4 coefficients per lag to estimate. You'll probably run out of observations quickly on sales data. However, if you have data, consider this seriously.

The second way is to estimate the models separately, then obtain residual correlation matrix. Next, run Monte Carlo with correlated errors. You can use Copulas if the errors are not normal. For normal errors, it's easier, a simple Cholesky decomposition will let you generated correlated errors.

Monte Carlo may sound cumbersome, but it's very flexible, you can easily calculate higher moments or percentiles for fan charts. Another thing is you can plug in your assumptions. Let's say you have a bunch of assumptions when forecasting sales, which is not unusual. Now you can form a distribution for assumptions, and calculate the confidence intervals including the uncertainty of assumptions.

• Hello, I'm dealing with a similar situation but with dozens of forecasting models per aggregation level. Those models will be of one type, but one of the following: ARIMA, ETS or Prophet. Is y our approach applicable to other than ARIMA models? Also, could you explain in more detail how you e.g. obtain correlation matrix, run Monte Carlo with correlated errors, etc. Thanks for your help! – Kasia Kulma Mar 25 '19 at 15:39

This is elementary using the discipline of probability management in which each stochastic forecast is stored as an array of realizations called SIPs. You can simply add the SIPs of each channel and then find any percentile on the total.