IB API Programmers

Discussion in 'Automated Trading' started by jones247, Jul 4, 2008.

  1. byzantium

    byzantium

    I agree that there are several products out there for autotrading that don't require much coding, or, at the least, provide an API to build on.

    I was just putting in my 2c on the price of programming services if one had the need for custom code.

    Many, probably most, traders' needs can be fullfilled with the product you mentioned, or something similar.

    b
     
    #21     Jul 11, 2008
  2. thanks for the advise guys...

    Walt
     
    #22     Jul 12, 2008
  3. CoolTrade looks like about as Micky Mouse as it gets... I would not spend even more than ten seconds on the website, let alone think that it is a worthwhile product...
    just my opinion though...
     
    #23     Jul 12, 2008
  4. edbar

    edbar

    Spoken by a true competitor! LOL
     
    #24     Jul 12, 2008
  5. Although I do all my own coding, I have hired programmers I know personally from my past life in the tech industry to write trading applications. It is amazing how quickly they were humbled. Sure they are better programmers than me in a general sense but there are so many quirks specific to trading and then even more specific to the quote/trading platform you are coding to that in a practical sense they were way over their head in this environment. They had a much bigger learning curve than they ever imagined.

    Sure, we can all write up a quick program to follow some basic strategy someone specifies in a few hours. But would you put serious money on it? I sure wouldn't.

    To code a robust trading platform that deals with bad quotes, slow quotes, crossed quotes, disconnects, handling the bid/ask, partial fills, lost order ID's, order events that didn't fire, thin stocks when want to move some size, you name it, is a much bigger challenge than it first appears.

    I know a guy who has dropped close to if not over 6 figs for professional financial coders to write him a program. Yes, he's paid it off and then some.

    So my suggestion to the OP. If you are really sure you have an edge here (using the term Martingale in your description doesn't fill me with much confidence you do), then maybe go with the cheapest qualified coder you can find to build you a bare bones version. Consider yourself the failsafe and baby sit the program and see if it works. If it does, use the profits to get a real robust platform going.

    One last point: one infinite loop from a bad coder will erase any savings and maybe erase your account.
     
    #25     Jul 12, 2008
  6. If you really want to do it properly, then not only does the code need to handle all these types of events, but it also needs to be tested. To do so you probably need to write some sort of test harness to generate exception conditions. This in itself is a significant bit of work.

    There really is a lot more work than many people here realise.

    You could also get a lot more subtle bugs that infinite loops - in particular race conditions and deadlocks in multithreaded code.
     
    #26     Jul 12, 2008
  7. Craig66

    Craig66

    What is meant by 'handling the bid/ask'?
     
    #27     Jul 13, 2008
  8. What do you as a human being do with the bid/ask?

    What would you want an automated trading system to do with the bid/ask?
     
    #28     Jul 13, 2008
  9. edbar

    edbar

    The Bid and Ask prices are one of the most important indicators or data points used in daytrading. Your system has to be able to interrogate the Level II screen.

    Since a market order buys on the Ask and sells on the Bid, if you buy a stock with a .50 spread (ask - bid), you are already down .50 on the trade right out of the gate. My trading system allows you to set the max ask-bid amount.

    I set the max spread to .05 in my strategies.

    Also, when you buy a stock, you have to sell it to close. You need to know the current bid price to know that you have reached your profit goal.

    Also, if you are looking to buy 5000 shares of a stock, it helps to know how many shares are available at the price you want.

    Professional traders live and die by the level II screen. I don't know a professional trader who could or would execute a trade without seeing those prices.

    Another important thing about automated trader development is that you cannot know EVERY rule you are going to use at the time the system is being developed. You have to be able to change your strategies WITHOUT having to call the programmer back. That of course is not possible. Therefore, what that means in the real-world, is that you are going to be paying that developer for a long, long time.

    I suggest saving yourself thousands of hours of programming (time and cost) and use an existing system already available. Some are free to a small monthly subscription fee and include live data feeds. If you use an indicator that doesn't already exist in the system, many times the company will add that indicator. I know many of the indicators in my system came from subscriber requests.

    Something else (and there are a lot more) that you need to consider is the daily programs (and problems) that you will have to run to keep your indicator database(s) up to date. A 200 Day Moving Average or Welles Wilder +-DMI doesn't just appear out of thin air.

    Ed
     
    #29     Jul 13, 2008
  10. The real challenge is not handling the core algorithm, it's handling all the things that can (and do) go wrong.

    One of trickiest aspect of automated trading is to figure out when your quotes are wrong, late or have stopped. Shreddog gave a good example of this: when the relationship between the bid/ask and last trade is "wrong". If for instance the last bid is 20.1, the last ask is 20.12 and the last trade is 19.5, something is off.

    The bid/ask example is one of 100s of things that can throw your auto system off and cost you a fortune in seconds. It's those "100s of things" that cost money to code; not the core algo, which often can be expressed and coded in a day or two.
     
    #30     Jul 13, 2008