I understand what you are saying, however if you are separating your backtesting algo from your live algo you might be introducing some issues without being aware of it. Perhaps you will use your approach for prototypoing?
Works for my game. Also for derivatives market, you might need to start looking at gpus at some point, because you might not be able to backtest enough in a timely fashion depending on complexity of your logic.
IQfeed is a decent option for sure, but once again, not for equities. They have servers in Chicago though as far as I remember.