You don't need an API, you need to get into FIX http://www.fixtradingcommunity.org/. These days all the major banks and brokerages speak FIX. If you want C++ then use http://www.quickfixengine.org/ (or you can use Java or other) to capture your market data, do your analysis, submit your orders, and manage your risk with the bank or broker you choose.
That is unless you want charts based API stuff. For that, IB seems to be a good place to start although, as you say, a lot of people use MT4.