Many recent posts talked about J-trader, X-trader, Pats and of course TWS. I would like to discuss in this thread only matters relevant to persons doing 100% automated trading software. Of course, IB's TWS is very popular and well known. In spite of some complaints, let's not forget that it has numerically the largest number of users, I think it is very easy to start up with because everything is really available from IB's website. Posters in different threads have pointed out that about the #1 one reason to look elsewhere has to do with the "static" commission schedule of IB. If you develop your system you pay $4.80RT, later if you ramp up volume you keep paying $4.80RT. Other online brokers make much better offers for volume and these conditions are clearly stated for all. Another aspect is the possibility to reach the broker in case of system/communication downs. Looking at other brokers, I found that it was often not too clear what was available for API. Monthly cost of API could be discussed. The quality of the documentation should be discussed. Are program examples available. What kind of interface: Activex, Java, Sockets. Languages supported: C++, VB, Excel, Delphi? I also found the fact that at IB you have your broker AND your API supplier has some distinct advantages. Other brokers offer API's supported and owned by third parties. I found this very user unfriendly at Pats for example. They oblige new applications to go through some kind of qualifying exam (cost $2000) before you can go online with your broker. Anyone interested in API's would greatly benefit from concentrating all this information in this thread. nononsense
Let's first start with a complaint.... I really like the IB API, but as far as I know, there's a SYMBOL limit of 40 symbols. And this includes the symbols you're viewing in your TWS. I think this really is a problem when working with the API. I would like to use their API for the purpose of handling multiple positions at once (More than I can handle manually) Now they announce a 40 symbol limit, including the TWS screen. IB please get this up to 100 or so....
I've done some work with Forex Capital Markets, Capital Market Services and GAIN Capital's APIs in Forex. I'm also interested in equities and futures brokers' APIs. Perhaps we could exchange information on some of these things. Please contact me directly at apeters@fabrefactum.com. I recently finished an automatic execution system (trading agent) that works on forex, but I'd like to eventually branch out into equities, futures, etc. I'm also interested in exploring creating DLLs for Tradestation 7 that integrate with other brokers that aren't currently supported. If you'd like you can evaluate my trading robot ('agent') for 10 days. Register a username here: http://www.fabrefactum.com/regedit.aspx and I'll activate your account immediately. The robot demo works with FXCM and CMS live and demo accounts. Andrew Peters Fabrefactum Software
I am in there for long enough to remember when IB did not have an API and did not want one.. lol.. anyway, it's a very good one.. there are some issues but nothing you can't work around. the cost is good the samples are very good imo. I use C++ and it's easy to start with the sample and build your own front end from there. other API are very good as well. But you too often have issues with validating your application and be taxed for that (ie PATS). the only advantage I see with PATS is the theoritical possibility to change broker and keep the same platform and your client application. if you build for IB, you have to stay with them. my only complaint at the moment is the refresh speed for market depth. I remember a time when the refresh speed for bid ask was very slow too. so I hope IB decides to improve on that (they likely limit the market depth updates to minimize load on their data servers and network). it's really a pity because having relevant and timely data is what trading is about. it's hard to complain too loud since their entire API is free. still, I'd wish more would complain about that so that we could get realtime market depth for the biggest volume contracts (ES/NQ/bonds) or all contracts for that matter, but at least the volume leaders. speed, stability, efficiency is all very good.
And lets not forget because TWS can be controlled from the keyboard using hotkeys, you can trade with a gamepad or any other type of programmable keypad. Trading using a Gamepad and IB's TWS http://www.elitetrader.com/vb/showthread.php?s=&threadid=18655
and this related thread Order Entry Keypad http://www.elitetrader.com/vb/showthread.php?s=&threadid=15587
I had a technical difficulty in IB's ActiveX API calls and asked for help. Here is what I got from IB tech support: "Unfortunately, we stopped supporting ActiveX for the Excel spreadsheet about 1 1/2 years ago due to reliability problems. We currently recommend the DDE connection method for Excel. The sample spreadsheet included with current API downloads is an example of this. Unfortunately we cannot support ActiveX for Excel." I did use Excel DDE before but recently switched to ActiveX. I was thinking ActiveX should be more reliable than DDE. Plus, with ActiveX you have all the Events, Methods that can tied to your Excel VBA functions, subs etc. I was really surprised by IB tech support's suggestion. I would like to have comments, especially from people who have experience in IB's DDE and ActiveX (developed in Excel, not VB6 or VB.NET). Thanks!
I know you mentioned that this was from Excel, and not from VB.Net, but it's kinda strange that VB->ActiveX->TWS works perfectly, but Excel->ActiveX->TWS does not, and is apparently sigificant work (by IB) to support. One would expect that if these were not identical, then they would be nearly so.