- Design the Robinhood Marketdata API
- GET /quotes/{symbol}/live: real-time quote, ~10M qps
- GET /quotes/{symbol}/historical?range=(1d,1m,1y): historical range, ~1M qps
- They gave me a data source, NASDAQ Last Sale: two independent, redundant long-lived TCP connections (Conn A/B); about 7,000 symbols; peak of ~100k trades/s on each connection; 6.5 trading hours per day. Message format: symbol (4-5 ASCII characters), timestamp (epoch microseconds), price ("dollars.cents" string), seq_no (increases monotonically from 1 every day). After a disconnect you can replay from any seq_no of that day.
Consider this my data point contribution. I don't have the result yet, but I'm basically rejected. I spent all my prep time on a job scheduler.
Discussion
Loading comments…