Does TWS allow your construct when you key that in manually?
Reason why I ask is that I just went through a debug cycle for a very similar issue. In my case it was a MKT order with TimeCondition set to five minutes before market close that failed when transmitted in an OCA group. But it worked when entered in TWS through the "Order Ticket" screen in TWS.
So I compared the order object that I submitted via the API with the one that TWS created and quickly found the initialization issue in my code.
´³¨¹°ù²µ±ð²Ô