Great article, I especially like your discussion of feature engineering. Too many ML approaches in finance simply try to predict the next price in the time series. Those always fail miserably. Using indicators builds in a form of memory to your model without having to use non specific memory like LSTMs.
I would like to see you explore the actual ROI of your model in simulated trading. Your current model performance metrics like accuracy, RMSE, etc. give only a partial indication of whether the model would be successful in the real world. I have found that models with accuracy of just 60% can produce fantastic returns. On the other hand, a model with 80% accuracy can do very poorly if for example it sends opposite signals and flip-flops often.