Machine Learning in Algorithmic Trading: A Deep Dive