The Best and Worst Stock and Option Trading APIs

In my quest to program and build my own trading system, I have discovered a lot of conflicting information on the “Internets” about trading APIs and stock and option price quotes.  In the past, I posted on HN news about some of my findings, only to get some great new insights. One thing I can’t find is a simple location for all trading APIs and I have stumble along some rabbit holes when dealing with the APIs, trying to see what works and what is no longer supported. With that said, I will will be launching a General information Git Repository, to hopefully provide links to SDK for trading API and price quote APIs, Etc. I will obviously do pull requests, but my opinions and finding on certain trading systems will be detailed below and on this site.

Finally, having built successful trading systems and algorithms, some of my work can be found here. I’m available for hire at Upwork or via email.

The repo can be found here.

Ally Financial (used to be Trade King api):

Pro: Open an account with as little as $50

  • Access to real time stock quotes and option chainss
  • Simple REST api calls, takes 5 minutes to get up and running.
  • Support email is responsive.
  • Documentataion is simple and concise.
  • Oauth2

Cons:

  • no paper trading account
  • no historical quotes
  • actually trading a stock or options is documented poorly

eTrade

Etrade has and an API, it doesn’t seem to be very well supported. Meaning it came out in I think 2012 and it hasnt been updated recentley (like the last few years).

Pros:

Sand box environment: I only made it to the sand box. Which really isn’t a test/development environment. It’s an environment that no matter what stock price you query it will return quotes for Apple, Google or Microsoft. This really isn’t a true testing environment.

  • SDK available

Cons:

  • Can take weeks to set up and become operational
  • Very little support from eTrade
  • documentation is clearly outdated
  • Very little documentation on Stackoverflow or google searchs

TD Ameritrade:

TD Ameritrade does infact have an brand new API, it seems to be a stealth launch.

Pro:

  • Documentation is pretty good, not great.
  • TD ameritrate has the best trading platform, which would be the Think or Swim (TOS) desktop application.
  • Can create API calls on the website.
  • Email support is responsive

Cons:

  • Still in soft launch phase
  • documentation is not complete, spelling mistakes, inconsistent.
  • No paper trading account.

Interactive Brokers:

Pro:

  • Probably the best API.
  • Recommend IB_insync wrapper, well supported with a large community.
  • Offers historical quotes so you don’t have to rely on Yahoo
  • Options, FX, Bonds, Stocks
  • There are infinite amount of ways to trade
  • Live Trading & paper trading

Cons:

  • At times overly complicated
  • Only works with Java, C++, Python, .NET (C#), C++, ActiveX, DDE
  • The Trader Work Station, which is not required, is grossly outdated and cumbersome.

ThinkorSwim on Ubuntu 15.04

I wrote a blog post about TOS, Ubuntu and 14.04 and based on traffic, there appears to be serious need for this issue. I have since upgraded to 15.04 and will probably upgrade to 15.10 here a few weeks.

Unfortunately, when I upgraded to 15.04, I’m no longer able to log into TOS. Has anybody had any success with 15.04 and TOS? If so please post a link in the comments and I will try do a write so everybody can figure this out, since Front running, Non Linux supporting TD Ameritrade has no interest in support there product.

ThinkorSwim on Ubuntu 14.04

It is clear that the TOS support desk is worthless when it comes linux and have no desire to work with any linux user. (I have emailed them twice with no response. Also there documentation still references ubuntu 12.10)

For those of us that have seen the future (but not everybody else has yet.) Here is a quick way to install TOS on to 14.04.

Assuming you have loaded

cd ~
cd Downloads
sudo sh ./thinkorswim_installer.sh

When the wizard comes up be sure to install into the following directory: /usr/local/bin “/thinkorswim” The wizard will add the tos folder. Also the wizard will open TOS for you and it should work. The problems that people seem to be having it is opening the application again. I had placed it in /opt and when I went to open it again it would hang on updates. With this method I just cd into /usr/local/bin/thinkorswim and then sudo sh ./thinkorswim

Obviously this isn’t perfect, but its up and running. As mentioned before TOS / TDameritrade doesn’t really care to much about linux users. (They are to busy front running your trades.)  But maybe this will help someone. The full thread can be found here.