Interactive Brokers TWS : the bug that can blow your account in one click

Discussion in 'Retail Brokers' started by Tabernak, Jul 14, 2015.

  1. Tabernak


    In this thread, I will expose the workings of this nuclear bomb inside a 2014 version of TWS. I discovered a bug in IB TWS that can potentially destroy your account in one click. I use an older version of TWS like many IB customers who wish to avoid the frequent issues on new TWS releases. So this may not be of concern to you, but nonetheless it's a fact that IB exposed some customers to debilitating losses, most damning is the fact that IB did not acknowledge the problem and apparently did not even investigate it.

    I discovered this bug after a series of erroneous trades of the type "fat finger mistake". After a while, I started to question whether it was just me or whether TWS played a role in it. I couldn't possibly make those fat finger mistakes again and again ! Fortunately, I got lucky, every time I managed to exit the erroneous trades with very small losses equivalent to the spread, because the trades were mostly on IDEAL FX at times where volatility had come way down and my size preset were in accordance with account size and very reasonable. As you will understand, your size preset is a key part of this bug or flaw, whatever you call it. Actually I will say the issue is two pronged; there is a "flaw" and there is a bug that prevents you from realizing what the problem is, i.e TWS hid from me the real order that was sent.

    Eventually I realized there was something wrong with IB TWS, but I couldn't quite understand what caused the erroneous trades. I couldn't prove anything.
    I kept using the same version paying extra attention when placing orders. But of course, it had to happen that one day I would place an order in a hurry and make the "fat finger" mistake AGAIN ! And this time, I really lost money, it wasn't a FX trade it was in a highly volatile and illiquid stock in after hours. Fortunately, the loss was just average but enough to cause my anger . I realized I could have blown my account on that "mistake". I decided to thoroughly investigate the matter, going through all the steps I made when placing the order.

    When I found out IB TWS could lead a customer to send erroneous trades with a multiple of its chosen size, all the while hiding the actual working order, IB customer service denied the whole thing and buried the matter in a hurry.

    The story will continue tomorrow ...
    Last edited: Jul 14, 2015
  2. sprstpd


    I don't think I'll be able to sleep tonight.
    Brighton and TimtheEnchanter like this.
  3. FXTrad3r


    Sell flips to buy (or buy flips to sell), when you change order type?
  4. Tabernak


    The stock trade mentioned above infuriated me as I realized this TWS malfunction could have the direst consequences on someone's account. That day, I wanted to sell just a few shares of an odd lot which I had held in the account for a long time. But my preset size was several hundreds shares. I adjusted the size twice manually then sent the order, the spread was unusually high as the trade took place in after-hours well after the 4pm close.
    Instead of selling just a few shares, I ended up selling those shares plus a few hundred more. Therefore I was now short hundreds of shares of a volatile stock !

    Now you send an order like that in US market after-hours, you could be wiped out.
    I actually got somewhat lucky, because as I adjusted twice the size , the second adjustment did not get recorded, the mistake in the first adjustment was a failure to delete one digit, but conceivably with bad luck it could have been adding a zero or two . I would have then sent an order for several thousand shares or several ten thousand shares.
    TWS would have accepted the order because there was margin.

    Correcting the trade immediately so as to avoid a potential disaster the next day (gap) meant TAKING AN INSTANT LOSS on the huge bid/ask spread in after-hours.
    I explained what was happening to IB CS but they themselves could not see where the issue was, because their system did not show exactly what TWS did on my desktop. I asked them if they could get me out of the trade, since they are also MM, I asked whether they could reduce that ridiculous spread so I didn't have to take an instant loss. Of course , there was no way they would do that . And I understand that wasn't possible.

    But what followed next, told me that despite all the good things I experienced with IB in more than a decade, their customer service won't be there WHEN the SHTF ! You will be on your own if a bug destroys your account, yes just like at one of those crooked brokers.
    Last edited: Jul 15, 2015
  5. sprstpd


    You still haven't described the bug in detail. How do I reproduce it? Don't you double-check your order size before you submit?
  6. Tabernak


    You can double check , and redouble check, won''t do any good since IB TWS shows your modified size before you send and after, when the order is working(on quote page and pending page) . So you don't see the error, but on the exchange an order for an erroneous size is working. If you trade near the market, you don't have time to ask yourself what's going on anyway. You think you sent an order with a size of your choice and BAM ! you get an execution for the size pre-manual modification !

    This is the bug that I am talking about, TWS hides the real order working on the exchange !
    The "flaw" which may be a bug too, is the fact that a change by typing a different size requires "confirmation" while a size change via the scroll function does not. I have used TWS for more than 10 years and until last year
    I can't recall an instance where I experienced an unconfirmed, unrecognized change to an order and an erroneous execution. It seems to me this is new since I was forced to upgrade last year. But I could be wrong. In the past I traded more actively often at my preset sizes or in lots of hundreds (using the scroll menu to adjust) , nowadays I just manage a portfolio and thus often trade in odd lots. And I have used the typing method to change the size very frequently. But I am sure I have used it before and yet never sent those kind of erroneous trades.
    Last edited: Jul 15, 2015
  7. Tabernak


    The question remains as to whether the need to "confirm" a typed size change has long been a feature of TWS order entry process as claimed by the rep I talked to.
    But even if it is, I would call this a "bug" or a flaw because of the inconsistency with the change via scroll menu. How is a customer supposed to be aware of that subtle difference and of the need to confirm the change when typing ? And then if TWS shows a working order which is not the real one, how can the customer realize their mistake ?

    To me typing a new size did not require confirmation by hitting ENTER, or by clicking elsewhere (which I often did not knowing it was "confirming" the change). If it's new, I shouldn't have to review a 500 page manual every year in order to prevent catastrophic "misuse" of the platform, especially as a long time customer, especially since I don't use most of the features introduced in the past 5-7 years. And if it's always been like that (which I question) then it 's clearly inconsistent with the fact that a change via the scroll menu does not require confirmation, an immediate click on Transmit sending the modified order.
  8. sprstpd


    I'm probably missing something here. Maybe you should make a small video clip of what is going on for clarification. However, when I type in an edit box, how is a program supposed to know if I'm done typing my input unless I unfocus or press enter?
  9. Tabernak


    Well I am not a programmer, and I am still not sure whether TWS always worked like that. But it seems to me it shouldn't be that way, developers should find a way to allow a typed modification to be automatically confirmed.

    But the real bug is where TWS hides the real size working on the exchange !

    I do have a video, but for some reason it didn't come out very well, when I play it it's also upside down, posting it would also be a lot of editing work and so on.

    To check if you have the same issue on your TWS (the one I am running is about 1 year old) , do the following . If you can, use a paper trade account.
    Pick a liquid market at a quiet time, say a forex pair. Click on a quote to create an order, if using a live account make sure you first modify the price so as not to trade at market (you don't want an execution), record that change to price (ENTER or click anywhere). You now start as if you were creating an order (only you have made a change to price beforehand), place the cursor in the size field, hit the backspace button, delete the preset size, enter the size of your choice. Move your mouse straight to Transmit and click on it (as it should be to be consistent with the scroll method to change size).

    Now check pending page, see what size is there, is it the modified size you just typed ? Then go back to the quote page, hit a hot key to cancel the order. Watch the size, if it reverts back to your preset size just before the order is cancelled and disappears, you have the same issue .
  10. sprstpd


    Okay I must not be trading the same products as you or am not using the same interface. But when I change my size and do not press enter and then press the Transmit button, the size does take and the change is recorded correctly. It is possible you have uncovered a bug in a particular section of IB's user interface. It would be helpful to see screen captures or something to see where you are in the interface. For example, I don't even know what you are talking about when you say "the scroll method."

    However, one thing is for sure - when you press a Transmit button that is outside of a size field edit box, the edit box should unfocus and that should trigger the "confirmation" of the size.
    #10     Jul 15, 2015