Tradier.com is another one. They have an API for developers. It's not as mature as IB, but if you are looking to start/play with something with no/minimal initial investment check it out - https://developer.tradier.com
I know that instavest.com (YC company) is powered by them as well.
It doesn't execute unless you decide to execute it. It is building the sql string and giving that back to you. You can use any library that'll take sql to execute it against a connection.
I got some great feedback today - it seems that ES6 might have some good support for doing something like this. see the following:
Notes on how Braintree handles planned maintenance, unplanned failure, and people mistakes to support processing transactions at the rate of $22k/min or $12 billion yearly.
It was great to have Pete Skomoroch speak about this at the hadoop meetup in DC. I am really glad that it is being shared with the rest of the community now. Cloudera is collecting good use cases and providing innovative ideas in their blog. Thanks again for sharing Pete.
http://www.amazon.com/Mans-Search-Meaning-Viktor-Frankl/dp/0...