Understanding Algorithms and High-Frequency Trading