Conditional orders

Am I correct that conditional orders (like profit target and stop) are not sent together with the parent signal by the ATI?

I would appreciate it if this can change. I want to place bracket orders in TWS, but then I need all three orders together. Placing a bracket order is safer because the stop and profit target are placed directly at the broker. In that way it does not depend on the possibly failing connection broker-me-C2-me-broker that must be followed after the trade opened.

Right now the only solution I can think of is to download the internetpage with the tradedetails and extract it from there.

They are sent together.


Then why did I receive only the parent order (signalid 27232847)?

Right now I don’t receive the parent signal anymore either, even though I did not acknowledge it.

Ah. I think I misunderstood you. It is true that you will not receive children orders until you ack the parent. Is this a problem for your application?

Is it enough to acknowledge that the parent signal has been received? (I will try that out next). In that case it probably won’t be a big problem because I will get the children a few seconds later. But if the parent has to be filled I would consider it a problem.

No, certainly you need not acknowledge a fill to receive children signals.

Hmm, I just acknowledged that I received the parent signal but I didn’t receive the children. Seems that the parent has to be filled first. Yes, that is a problem. I suppose you aren’t happy if I send a fake fill just to retrieve the children? I think that would make other applications convert their limit orders to market orders while the price is far off, so that would be unethical :wink: Can I work around it by acknowledging a fill with quantity 0?

If there is no way to work around this then I would appreciate it if you can build an option to get the conditional orders too, preferably in the same XML response as the parent. For example, the ?cmd=latestsigs request could contain an optional parameter


to indicate that all signals of the system should be sent, regardless of what has been filled. Which orders are conditional upon which parent can be indicated in the conditionalupon field.

Sorry, I didn’t see your answer when I wrote my previous post. In that case I can work around it (although I still think that the conditionalorders option would be better).

But then, why do I not get the conditional orders? When I go to my test system I see them still living, but I don’t get them in the XML response. Probably I make some very silly mistake.

Oh wait, I see the parent is expired now. Let me try again.

OK, that was it. Now it works. I can work with this.