Measuring IB Trade Executions

Discussion in 'Order Execution' started by sf631, May 24, 2011.

  1. sf631


    I'm wondering whether anyone uses - or knows of - an API based tool that allows you to monitor the quality of execution you're getting from IB. My specific need is to understand three things:
    (1) what my total transaction costs are (including the cost of the market moving away from me while my order remains on the limit book)
    (2) whether I'd be better off with a liquidity consuming strategy (market orders etc...) than my liquidity providing strategy
    (3) how good SMART is at price improvement

    It seems that the IB APIs could be applied to collect order & execution information for trade analysis, and I'd happily pay a reasonable fee for such a tool, if one exists.

    If it doesn't... is this a need that others have as well? I'm considering building something custom for my own usage and would potentially license/sell to others if a demand exists.

    What are your problems / needs in this area? Do you consider your order execution setups (e.g., your choice of IB_algos) to be a source of advantage? How do you know which is the optimal trade settings to use? Do you know if SMART does what it says for your unique situation?

    Thanks for any feedback
  2. I built my own custom tools for this, but generally speaking if you get a passive fill on IB the market is probably about to move through you. So your question is model dependent, and if you're ok with getting cut through or not. If your time horizon is longer and you don't care because you just want to save money on commissions as the price drifts about your entry zone, then yeah, you should park an order in such a manner that you get the cheapest commissions possible.

    In terms of removing, whether SMART is good or not kind of depends on what you think you could have gotten at the time SMART gave you a fill, and whether you're able to reconstruct some view of the market and all the different venues to go back and figure out whether SMART did the right thing. It "seems" like IB does what's OK, but I don't think SMART is perfect.

    For the record, I don't think IB gives me any short-term execution advantages, other than that their commissions structure is far, far better than other retail brokers. If you're going to remove at an inefficient price in the short term based on some longer-term forecast, IB is the place to do it.
  3. sf631


    Thanks for the reply and your comments. I'm interested in anything you're able to share about what you've designed your custom tools to do. I suspect this isn't the secret sauce of your trading methods so maybe you could share some ideas...

    I'm going to develop something of my own to measure fill quality and may consider distributing to others if there's a wider interest in this.

    Specifically, I'm looking to develop an applet that sits on my desktop alongside TWS which monitors all orders placed, changed, cancelled, or filled. There are many possible ways this could be applied:
    * measuring against true VWAP benchmarks during the period an algo (accum/distrib, REL etc...) is working
    * measuring against true VWAP benchmarks during the period that you're placing discretionary trades
    * Measuring the trade-off between liquidity providing (limit) trading vs. liquidity demanding (market) by comparing actual execution price with NBBO at time of order placement
    * tracking market impact of your orders
    * recording Time/Sales logs from time of placing an order to time of execution for future review

    And probably others. If anyone is interested in - or has already thought through - these issues, what are your needs/use cases? If you're potentially interested in whatever I develop, pls reply to this thread or PM me.