I intend to take-up a development project to adopt IB Controller as per my requirement(adding a couple of algos). I will be taking help of third party for coding as I don't know coding in C++. I am working on scope of the project. Please educate me whether the source code provided at http://www.amibroker.com/members/bin/IBController138src.zip (123 573 bytes) contains all the features and functionalities of running version of BrokerIB.Exe ? Will it suffice to takeup modification of IB Controller to include algos orders or I need to takeup re-devlopment?
Please advise.
Yes it does include everything.
Thank you very much!!
The following is a debatable feedback but some points need consideration. I posted a project for Modifying IB Controller 1.38 to include few new features. Few developers on freelancer and up-work commented the following:-
"Modifying IB Controller was not a good idea. It uses very old version of TWS. The classes and members of new TWS versions are different. C++ version of IB Controler is also old as it showed lot of errors on VS 2017. The bidders mentioned that considering a new interface altogether with new C++ and TWS versions would make sense, if someone has to pay for such a thing!".
Now my views:-
Most of the charting apps are coming up with a good trading integration tools. I have been user of AmiBroker since 4+ years. I have witnessed that it is unparalleled by any tool available in market for analysis. But to be honest, it does not have a trading interface that complements it. Lovers of AmiBroker may say to me "you develop your own trading bridge or get it developed or go to other apps that give you good trading bridge!!" As I love AmiBroker too, I would like to hear that IB Controller of 2012-13 will be revived to latest version by taking survey of requirements from users and make it stay alive and current with timely revisions in future at least once in two years. If anything is already in the offing , the same may be mentioned. We may request for features that we are looking for.
What you heard from your "freelance" guy is nonsense. The guy who commented has simply no clue. The code is backward AND FORWARD compatible with ALL versions of TWS including most recent ones.
You might be lucky that you didn't use that freelancer. In addition to Tomasz's comment, the build issue is a setting issue easily found with Google. This one change made it work for me on VS2017 out of the box some time ago -
https://stackoverflow.com/questions/38290169/cannot-find-corecrt-h-universalcrt-includepath-is-wrong
There is also a post-build target error message in the project out of the box - which is normal for unique target paths.
I believe the freelancers have the clue, given the kind of projects they have done, (including Amibroker and IB API).
I am not going by the freelancers' feedback altogether, though.
A DOS application of 90's, if still can be used in Windows 10, it is Windows 10 that is backward compatible. So, TWS 9.76 (the most recent version) is backward compatible and still allowing applications using old versions and may remain so for longer time, unless the program architecture changes. It is the old version app that can benefit by changing and incorporating the new features.
Today I cannot even pass an order pegged at bid/ask/last +- offset to IB(TWS), which will dynamically adjust my buy/sell price for a better fill. Why ? because IBController does not have a basic method to send an order with a string PegTo Bid/Ask/Last, that IB's API takes care of.
I repeat, I love using AmiBroker. It is powerful and yet simplest tool. I am also well aware of amount of effort that goes in the background. So, an app like IBCobntroller, periodically updated and even offered at an extra subscription like AmiQuote/ AFL Wizard, as a standard solution is well thought feedback and a balancing act for this powerful tool.
And I know who has the last word here!!
Hi abbruiser, thank you for the link.
So, as you mentioned, it was an out-of-the-box solution still! You will agree with me we are using most current version of AmiBroker 6.3 and should complement it by an equally contemporary trading integration!
I have more faith in Tomasz and the team. If the solution is not around here, given the profile of projects handled and awareness about what they are talking, we have no option but to use one of those freelancers!!
Hi SteevH,
To be on the same page regarding your comments "Easy for anyone to read, see what's going on....", my reply is :-
What is going on here is "a simple request for upgraded IBController from the source!"
Being not a "competent programmer" , the simplicity of AmiBroker has been of immense value to me. It gives me power of C++ , without knowing much about it. No doubts about IBController too. I have got done a bit of tweaking to IBController to add some order features, order types and include TWS API Version 9.72. So I am managing it.
I have got email from Tomasz earlier, regarding the huge task of pending feature requests. So I am ok with my own present arrangement and look forward for the upgrade as and when it comes from the source.
So nothing wrong is going on here!
If you are doing something about it, kindly consider including these features and give the code to interested parties like us for testing and giving feedback:-
(a) Include "hidden" order parameter in PlaceOrder method.
(b) Create method for porting bid/ask/last price data. This will help in pegging limit orders.
(c) Include parameters required to place TRAIL LIMIT stoploss orders in the PlaceOrder method
(d) Create methods for SacleTrader and AccumulateDistribute order types.
Regards
Assumption that everyone wants to code or has time to code renders above reply irrelevant and makes one to venture to empathize, comment about competence, confidence etc . The reply is far from what was objectively and humbly sought from this thread i.e., seeking upgraded IBController from the source.
Objectively, the completed ACTIONS were :-
(1) "yes/no" reply and what needs to be done next, which has been communicated by the owner, crisply.
(2) I have got IBController modified to to include order features, order types and include TWS API Version 9.72, those I needed at present.
You said you haven't worked with the IBController before. I still do not assume something else and jump to advise you to work on it first and then comment here. But I do assume that your intentions were not bad. So if you are planning to work on IBController, can you objectively cover points(a) to (d) of my reply dated 23 Oct 2019 and contribute something meaningful here? It would be even great if you can make PlaceOrder method of IBController execute all /some more order types mentioned in the IB Controller document but not feasible at present? You may like to refer http://interactivebrokers.github.io/tws-api/basic_orders.html.
To use real estate on this forum page meaningfully, let us not do Napoleon Hill or Stephen Covey here please!.
Hi abbruiser,
Your suggestion helped my developer take care of my present requirements.
Thank you.