Algorithmic and High-Frequency Trading