Improving bagging

We can further improve bagging as its performance is worse than any previous model. First, we can experiment with shallow trees, which will further reduce variance in the ensemble. By utilizing trees with a maximum depth of 3, using lr = BaggingRegressor(base_estimator=DecisionTreeRegressor(max_depth=3)), we can improve the model's performance, generating an MSE of 17.59 and a Sharpe value of 0.15. Further restricting the trees' growth to max_depth=1, allows the model to achieve an MSE of 16.7 and a Sharpe value of 0.27. If we examine the model's trading plots, we observe a reduction in the number of trades, as well as a considerable improvement in performance during periods in which Bitcoin's price significantly drops. This indicates that the model can filter noise from actual signals more efficiently.

The reduction in variance has indeed helped our model to improve its performance: 

Final Bagging profits and trades

The following table summarizes the results for the various bagging models we tested:

Metric

DT_max_depth=1

DT_max_depth=3

DT

MSE

16.70

17.59

19.45

Sharpe

0.27

0.15

0.09

Table 3: Bagging results
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset