...
The set of all factors that the system takes into account is set by the user and can be individually adapted. The default set of factors is described in the "Default Predictors" section.
Daily forecast adjustment
After completing all forecast calculation stages, the system adjusts it for the upcoming weeks (usually two, which is a configurable parameter) based on the most recent days of sales data. To do this, the system loads sales data at the SKU-store-day level for the last 28 days (configurable parameter) and selects the most relevant 7 (or fewer, also configurable) days of sales:
Separating promotional and non-promotional sales. Past promotional sales adjust only the promotional forecast for the next one to two weeks, while regular sales adjust the regular forecast accordingly.
Filtering out days with insufficient stock. The stock level must be greater than zero and also exceed 30% of the average daily sales (configurable parameter). In some cases, a minimum absolute stock level can be set as a parameter.
Handling cases of insufficient stock. If sales occurred despite low stock, the system may still consider them under certain conditions. For example, if a given day’s sales exceeded 75% of the forecast for that day, the system applies an upward adjustment factor. The assumption is that if stock had been sufficient, sales would have been higher:
By 50%, if the product likely ran out in the second half of the day.
By 25%, if the product likely ran out at the end of the day.
Filtering out days with significant price variations. Days where the price deviation exceeded 15% (configurable parameter) are excluded.
Calculating lost sales
For days when an item was part of the assortment matrix in the last 1–2 weeks (configurable parameter), the system calculates lost sales or missed demand for days when there was no stock or an insufficient stock level.
Similar to the Daily Forecast Adjustment calculation, insufficient stock means that either:
The stock level was zero at the end of the day, or
The stock was less than 30% (configurable parameter) of the forecasted sales for that day.
When distributing the weekly forecast into daily values, the system also applies day-of-week coefficients and considers price elasticity if the price changes during the week.
If the system finds valid sales data from the last 28 days (configurable parameter) that meet the required criteria (i.e., sufficient stock was available, promotional and regular sales are considered separately, and price fluctuations were within acceptable limits), it calculates the average daily sales. This calculation adjusts the identified 7 or fewer (configurable parameter) sales days using the same factors applied in the daily forecast adjustment:
Day-of-week coefficients
Price elasticity and discounts
Seasonality, weather, and other influencing factors
During the adjustment of average daily sales, the system takes into account the seasonality and weather conditions of the week in which the stock shortage occurred, as well as the day-of-week coefficient, price, and discount on the specific date for which the calculation is performed.
As a result, the system generates an adjusted forecast for the specific date.
Lost sales are calculated using the formula:
Lost Sales = max(Forecast} - Actual Sales, 0)
This applies only if stock was insufficient according to the criteria described above.
Lost sales calculated during the forecast process are stored in the FCST_SKU_LOST table, linked to the forecast ID for the last 2 weeks (configurable parameter). Based on this table, the SALES_SKU_LOST table is updated, maintaining a long-term history of lost sales at the SKU-store-day level. Additionally, data may also be aggregated and stored in the SALES_SKU_LOST_WEEK table, which contains weekly-level lost sales information.
Next, the system adjusts daily sales based on influencing factors, aligning past data with future forecast weeks:
Day-of-week coefficients
Price elasticity and discounts
Seasonality, weather, and other factors
Finally, for each future week—separately for promotional and regular sales—the system calculates adjusted average daily sales. The forecast is then fine-tuned within acceptable limits, which depend on the number of selected days and can be defined via parameters.
Parameters
"Parameters" area is designed to choose and configure the basic parameters of the forecast model. It consists of the following categories:
...