Fast execution Slow impact
I have an app running on a real money account. Most of the time the API works fine, but yesterday, the following happened.
My app sent a "buy" request at 20:06:16.019 GMT, and the reply came at 20:07:11.419 GMT. The order entered right after that. The logs confirm that the websocket was functioning perfectly, many requests were sent and many responses were received during those 55 seconds.
It turns out that the order was confirmed rapidly on the server, and the trade did enter immediately afterwards - the entry_tick_time confirms this, but my app was not appraised of this fact for another ~54 seconds.
During those 54 seconds no "transaction" message, nor "statement" message mentions the contract_id of this trade. This suggests that your servers confirmed the order rapidly, but didn't actually take the money from the account for another 55 seconds. What would have happened if I had tried launching a second trade using 100% of my apparent capital during those 55 seconds? Would the trade have been permitted even though I didn't have enough money left to buy the second option?
Would your servers to allow me to loose more than my capital in this case?
Sure, race conditions can happen, and they are hard to deal with. But 54 SECONDS is a little too much.