On IB API, can I use Good After Time order instead of limit take profit in a bracket?


Thanks @HobbyTrading. I've seen those -- pretty comfortable with the OCA group part. It's specifically getting an OCA group (with a GAT in it) to follow a parent's size that I'm hoping @southall can confirm he's done.

And the API docs don't inspire confidence. E.g., the bit on attaching orders here says:
Advanced orders such as Bracket Orders or Hedging involve attaching child orders to a parent... When an order is attached to another, the system will keep the child order 'on hold' until its parent fills. Once the parent order is completely filled, its children will automatically become active.

From what everyone on this thread says, the children are active after even a partial fill, so that "completely" looks wrong.
 
Thanks all for your responses!

@southall Yeah, I'd really like fire-and-forget for this too. Two questions, if I may:
  1. So, children become active when parent partially fills. But just to make doubly sure -- in your experience, children stay active in partial fill size even after the parent LMT expires, correct?

  2. When you used OCA GATs, did you use them as part of a bracket? Because the STP and the GAT MKT would be part of an OCA group, but both would follow a parent LMT order (before you switched to MITs) so that their size equals filled position. Just wondering if you did this via a bracket or separately (and if separately, how -- using a parent ID?).
Thanks again.


1) I don't know what will happen to the partial children if the parent expires before a complete fill. I never expired my limits always left them open.
I would try testing with Demo Trader platform to see what IB does on the back end with partial child orders when the parent expires quickly.

2) Yes i use STPs and GAT MKTs as part of an OCA group bracket attached to the parent order not separate.
 
From what everyone on this thread says, the children are active after even a partial fill, so that "completely" looks wrong.
That is exactly what I am not sure about, which is why I described the way I handle OCA orders in a different way than IB's preferred solution. As you also point out, does IB's documentation say something different from what other posters mention here.
 
Yeah, your approach is understandable. Our engineering is just not as robust (recovery from failure, race conditions, etc.) as we'd need it to be before attempting to do it ourselves.

Regardless, I need to double-check with IB on all this.
 
Back
Top