The code in this post. Submit the order twice. Once without transmitting, wait a few seconds, submit again and transmit the order this time. Still waiting for IBKR to get back to me about why this works. https://www.elitetrader.com/et/thre...d-price-api-vs-tws.344406/page-2#post-5093185
They responded and said the reason the error message said "invalid price" was because my account number was missing without acknowledging that submitting literally the same object with transmit = True after 0.25 seconds works. I like IB most of the time except these times.
Hmmm. Not really a plausible reason. They must have thought you were just a noob? You only need to supply an account number if you have more than one Uxxx numbers. I did encounter "invalid price" error messages in the past. But those were all caused by using incorrect prices, either caused by rounding errors, or by not knowing the correct price step for an instrument. Having to submit an order in two stages, with a pause in between, is something I haven't seen before.