I'm try out optimal reconciliation using hts package in python. I'm referring https://scikit-hts.readthedocs.io/en/latest/usage.html#reconcile-pre-computed-forecasts as an example.
For my data I get negative reconciled values. Why is that so ?
I'm try out optimal reconciliation using hts package in python. I'm referring https://scikit-hts.readthedocs.io/en/latest/usage.html#reconcile-pre-computed-forecasts as an example.
For my data I get negative reconciled values. Why is that so ?
When reconciling our original forecasts $Y$ we get a weighted recombination of our existing forecasts based on some estimated matrix $W$; $W$ matrix can be constructed in many ways and using multiple different criteria but usually we estimate such that it minimises our metric of choice - usually something quantifying the bias and variance of our reconciled forecasts compared to our original raw forecasts. (They are some technique doing some non-linear combinations too but there are not relevant for this answer). If this recombination allows for negative weights in $W$, when combining our raw estimates based on the weights $W$ to get our reconciled estimates, we might end up with negative values even if all our original forecasts $Y$ are positives.
For the case you mention in particular OLS
(i.e. ordinary least squares) is used to construct the forecast recombination matrix $W$. Here the values of $W$ can be negative. You might want to consider something like Average Historical Proportions (AHP
) or simple Bottom-UP (BU
) to ensure that you get positive values. They are other technique (e.g. using non-negative least squares - see Timmermann (2005) Forecast combinations Sect. 2 & 3).
NOTE: I unfortunately do not have time anymore to dedicate to this project, contributions are welcome.
😟 $\endgroup$