Usually, when fitting predictive models onto financial data, variance is our main problem. Bagging is a very useful tool to counter variance; thus, we hope that it will be able to produce better performing models compared to simple voting and stacking. To utilize bagging, we will use scikit's BaggingRegressor, presented in Chapter 5, Bagging. To implement it in our experiment, we simply call it using lr = BaggingRegressor() instead of the previous regressors. This results in an MSE of 19.45 and a Sharpe of 0.09. The following figure depicts the profits and trades that our model generates:
Bagging profits and trades