1. A computer-implemented method for determining an optimal forecasting hierarchy, the method being performed using a processing unit, the method comprising: setting, by the processing unit, a plurality of parameters for which the optimal forecasting hierarchy is being determined; setting, by the processing unit, a plurality of hierarchies by setting each hierarchy in terms of a hierarchy structure, each hierarchy structure having a plurality of components at a plurality of levels, each component being identified in correlation with its location in the hierarchy structure; defining base forecast levels at each level for each hierarchy, each base level forecast being made based on a time series at each level; generating top level forecasts for a testing period, each top level forecast being based upon an aggregation of the base forecast levels; calculating a forecast error by analyzing data associated with the testing period, the top level forecasts and forecast error being processed by the processing unit; conducting an optimization routine with the processing unit, the optimization routine comprising: determining an optimal hierarchy H* and determining an optimal base level x* within the optimal hierarchy H*, both the optimal hierarchy H* and optimal base level x* being based upon a smallest associated forecast error; calculating a deficiency ratio for each level within each hierarchy by comparing data associated with the optimal base level x* and the optimal hierarchy H* to data associated with each of the other base levels and hierarchies; and comparing the deficiency ratio to a significance level in order to determine the optimal forecasting hierarchy.