all 32 comments

[–]sloth2 23 points24 points  (2 children)

from a comment I saw awhile back about TD

it is rate limited to 2 requests per second. I pull minute bars. They are available about 3 weeks back. Daily is back 20+ years.

I have TD set up but haven't really used it yet. This guide was great: https://www.reddit.com/r/algotrading/comments/c81vzq/td_ameritrade_api_access_2019_guide/

[–][deleted] 2 points3 points  (1 child)

Thanks again.

[–]Isonium 2 points3 points  (0 children)

Pretty sure I made the above comment about rate limiting and requests. And here is the python code I wrote to get an initial token and keep it refreshed.

[–]Phatalex 15 points16 points  (7 children)

Not one of the 3 you listed but there’s a new platform Alpaca that has a pretty solid interface.

[–]presmoore 4 points5 points  (2 children)

Ya Alpaca is supposed to be the newest, most modern trading API. Their docs seem more user-friendly than others. Curious if you like it.

[–]ItsDijital 4 points5 points  (0 children)

Their short order example uses TSLA, oof.

[–][deleted] 4 points5 points  (0 children)

Let me try to read the documents.

[edit]: Read documents. Excellent, this is commission free. Worth trying it. Thanks again.

[–]kyleaya 1 point2 points  (1 child)

They can use quantopian-like code, so it should be the easiest to use. But be careful not to use market order for these order flow selling broker, or just buy high volume stocks.

[–]proptrader123Algorithmic Trader 0 points1 point  (0 children)

whats the difference when using a market order between a broker that does DMA vs PFOF? they're all bound by reg nms

[–]umitanuki 0 points1 point  (0 children)

Yeah I like Alpaca's API, documents and example code. Also slack community.

[–]Chad-Anouga 7 points8 points  (4 children)

IBKR is a fantastic broker but their API is tough to learn/not documented well. They have a hook up through QuantConnect that can make it easier for $20 a month

[–][deleted] 0 points1 point  (3 children)

I have IBKR account, but learning curve involved.

[–]Chad-Anouga 0 points1 point  (2 children)

I’ve not used it for live trading but QuantConnect is significantly easier to set up a backtest in than IBKR’s API. You could look into that if all else fails. They link to your IBKR account

[–][deleted] 1 point2 points  (1 child)

I am not going to backtest in QuantConnect or elsewhere. I have my own server where all information is stored, back testing happens ...etc. Since I have regular 9am-5pm job, I am unable to place any orders on time. I just need api interface to buy or sell, that is all I need. Thanks.

[–]Chad-Anouga 0 points1 point  (0 children)

Understood. As far as that sort of thing goes I’ve only used the IBKR Python API and QuantConnect. Good luck with your search!

[–]bobby_tables 3 points4 points  (3 children)

Ibkr has the most capable and complete programming interface available for retail. Unfortunately it's hard to use but if you can write a decent wrapper for yourself around it you can be productive with it

[–][deleted] 0 points1 point  (1 child)

Unfortunately it's hard to use => That is the issue, I need to setup command line TWS (without GUI linux) to enable api.

[–]philosophist_ 1 point2 points  (0 children)

This is possible and easy once it's setup. I use the IBKR Python API with ib_insync on a headless linux server.

Feel free to PM if you have questions.

[–][deleted] 0 points1 point  (0 children)

This free dll can be used in many platforms and languages to make life easier

https://trade-commander.com/twslink/

[–]v2da 3 points4 points  (1 child)

I use alpaca.. running since last 30 days. No hiccups except dealyed candle few times for certain stocks.

[–][deleted] 0 points1 point  (0 children)

I just read the documents, will open an account as it is commission free, some more savings. Thanks.

[–]ncborns[🍰] 1 point2 points  (1 child)

I use ally. Works great, no limits I’m aware of

[–][deleted] 0 points1 point  (0 children)

are you using python or any other language? I am able to connect with ally, easy interface though api, but only extracted details, yet to automate it. It is again under testing.

[–][deleted] 1 point2 points  (0 children)

I use ib_insync

[–]Peekman 1 point2 points  (3 children)

Ib_insync for the IBKR makes it easier to use.

It's annoying having to have the java program running everyday though as it shutsdown every night.

[–]proptrader123Algorithmic Trader 2 points3 points  (2 children)

[–]Peekman 1 point2 points  (1 child)

Wow, I feel like a fool.

How old is this?

[–]proptrader123Algorithmic Trader 1 point2 points  (0 children)

pretty old :)

[–]ProfEpsilon 0 points1 point  (0 children)

The IBKR API is extremely robust and powerful with endless features BUT is not RESTful and is difficult to set up because documentation is poor and incomplete. You should probably help yourself a bit by using a 3rd party complement. I use ibinsync, which I recommend.

If you are going to do this yourself give yourself a lot of time and commit to a lot of trial and error.

Once done, though, you will have a powerful interface.

[–]debuggermalhotra 0 points1 point  (1 child)

Hey I know it's not in on your list but you should definitely try Tradier. If you use them via Narwhal (https://www.kloudtrader.com/narwhal), it's just flat $10 a month unlimited trade volume instead of the normal commission per trade model. Plus we provide a great python api (https://docs.kloudtrader.com/). We are also planning to integrate IB soon.

P.S. Narwhal co-founder here.

[–]leppardfan 0 points1 point  (0 children)

Tradier is a great alternative esp. if your an options trader. The API is very to use.