... if you say so. Those are not brokerages we looked at, not our market. And at least Baxter didn't bother to update their SSL certificate.
View attachment 257122
It is not that. As I said, it is a friction point for the customer. For other brokerages, in our application, all they have to do is enter their existing login credentials, just like on the brokerage web site. With Alpaca, they would have an additional step of going to the web site and creating an API key, recording it and entering it in MT. If you ever did user support, you'd recognize this as a serious friction point.Who fucking cares? It's one line of code to pass in the api key. Goodness.
This topic could be great for another thread discussing/comparing various APIs, and I'd also would need to think of all the reasons I'd use one API vs another, but here are just a few requirements that any trader may have:
- API's ease of use. Alpaca's does seem very simple, though perhaps too simple for more advanced requirements. IB sucks, but there may be hidden benefits, like ~30 reasons for an order being rejected, often by exchanges, that you can analyze and handle appropriately.
- Support for stocks, futures, options and other derivatives, potentially crypto. Personally I trade options and need a broker and an API supporting those.
- Pre-market and after-hours trading. One look at Alpaca shows their very limited support of that. IB's support for pre-market and after-hours trading starting at 4am ET may even beat some other pro brokers.
- Market data. Both IB and Alpaca may not be sufficient, so many traders use 3rd party feeds. TDA indeed seems great with their free feed, but external feeds may still be better when wanting to continually scan all the stocks or options.
- Support for variety of order types and algos, including smart rouiting, midprice, access to dark pools, etc: https://www.interactivebrokers.com/en/index.php?f=4985
(and even more important for trading options, as I couldn't execute some option trades without IB or other pro platform like Wex that I'm eyeing)
- Uptime. All brokers experience issues here, so it may be the question of comparing or even knowing the details.
Broker-specific requirements:
- Broker stability and resilience to being wiped out. IB may be winning here since they don't allow anyone taking excessive risk for even a minute.
- Margin requirements and handling. I'm personally jealous of friends using TDA and getting literally 20x better margin on selling naked options (I don't trade much of those but sometimes end up with insufficient margin at IB even on low risk stuff that's well hedged). Though this could put TDA at risk.
- Handling of multiple accounts, linked accounts, sub-accounts, IRA accounts, client accounts, duplicate/trade copy accounts, etc.
- Reporting, including advanced custom reporting.
- Wide acceptance and integration/support by 3rd parties, including tax programs, algo software, FundSeeker, C2, code/C#/Python libraries, etc.
- Certain level of respectability, say in the hedge fund industry you could get away with IB but probably not with Alpaca. This also relates to the reporting and integration points above.
I could probably come up with 5 or more points when/if I fully awaken. Anyone else please feel free to expand on this as well.
Great Summary! @guru.This topic could be great for another thread discussing/comparing various APIs, and I'd also would need to think of all the reasons I'd use one API vs another, but here are just a few requirements that any trader may have:
- API's ease of use. Alpaca's does seem very simple, though perhaps too simple for more advanced requirements. IB sucks, but there may be hidden benefits, like ~30 reasons for an order being rejected, often by exchanges, that you can analyze and handle appropriately.
- Support for stocks, futures, options and other derivatives, potentially crypto. Personally I trade options and need a broker and an API supporting those.
- Pre-market and after-hours trading. One look at Alpaca shows their very limited support of that. IB's support for pre-market and after-hours trading starting at 4am ET may even beat some other pro brokers.
- Market data. Both IB and Alpaca may not be sufficient, so many traders use 3rd party feeds. TDA indeed seems great with their free feed, but external feeds may still be better when wanting to continually scan all the stocks or options.
- Support for variety of order types and algos, including smart rouiting, midprice, access to dark pools, etc: https://www.interactivebrokers.com/en/index.php?f=4985
(and even more important for trading options, as I couldn't execute some option trades without IB or other pro platform like Wex that I'm eyeing)
- Uptime. All brokers experience issues here, so it may be the question of comparing or even knowing the details.
Broker-specific requirements:
- Broker stability and resilience to being wiped out. IB may be winning here since they don't allow anyone taking excessive risk for even a minute.
- Margin requirements and handling. I'm personally jealous of friends using TDA and getting literally 20x better margin on selling naked options (I don't trade much of those but sometimes end up with insufficient margin at IB even on low risk stuff that's well hedged). Though this could put TDA at risk.
- Handling of multiple accounts, linked accounts, sub-accounts, IRA accounts, client accounts, duplicate/trade copy accounts, etc.
- Reporting, including advanced custom reporting.
- Wide acceptance and integration/support by 3rd parties, including tax programs, algo software, FundSeeker, C2, code/C#/Python libraries, compliance products and services, etc.
- Certain level of respectability, say in the hedge fund industry you could get away with IB but probably not with Alpaca. This also relates to the reporting and integration points above.
I could probably come up with 5 or more points when/if fully awaken. Anyone else please feel free to expand on this as well.
Great Summary! @guru.
Actually we have been through all the points you discussed during the past two years.
We now have live algo trading for futures on other platforms, not on IBKR, for obvious reasons you have already discussed.
We have yet touched automated options tradings.
We are now trying to take advantage of the commission free trading and fractional/odd shares trading just possible in the past year or so to deploy some algo that would not have been profitable if commissions are factored in, and not diversified/balanced (for minimum drawdowns) enough as a group if we cannot buy fractional/odd lots (AMZN GOOGL etc). The algos are mostly intraday on 1-5 minute bars.
@yc47ib, realistically, if you are in this long term, you will choose not based on how easy it is to get started, but the core feature or two you need. Sounds like you decided on Alpaca because of API+commission free. IB doesn't compete there, so just give Alpaca a try and see if strategy performs in live and executions are good.
If your commissions are negligible (typically for slower strategies) then you probably go with IB because of reputation, stability and wide range of products you can trade, all with API.
Since there was enough trashing of IB done, I'll add extra on the positive side:
IB API certainly is not friendly for beginners, but in a way, it teaches you how exchange works, event driven and highly optimized for fast delivery of a lot of messages per second. You might see it as an obstacle at the start, but once you get it and get used to it any "simplified" API might not be enough anymore. Another positive side effect of IB using lower level primitives is that it will be difficult to design your app to have performance issues. Since when coding with IB you will very likely build your own in-memory data model, which is, by design offers very fast to access to whatever you need for decision making.
PS. You mentioned that you or/and your programmer been struggling with IB for a year. There might be something wrong with the approach. Simple reacting to market events, watching positions and sending orders is a couple of weeks job. It will certainly take another month or two to add robustness and error handling, maybe a year to be able to leave it in peace while you are on vacation, but having a first version that you can run under close supervision shouldn't take more than a month. Whichever broker you are dealing with, go for the most simple implementation of your execution possible at first. Don't be fancy, no full automation on day1.
Most strategies won't survive live trading anyway so you wanna be mindful of the time you invest in automation before you find out if that one works or not.
Val