Limit orders are filled on first-come-first-serve basis. Your orders are probably way behind in the queue. $0.9999 / $1.0002 will fill either of your order.
There is nothing wrong here.
From the screenshot you provided, the filling price is 1.0000 to 1.0001.
And your order that buy at 1.000 and sell at 1.0001 is waiting at queue. Like what @quint said, it’s first come first trade, there are many orders in front of you. So you have to wait until your order to be filled. Or you can try market order, the order will be executed with the current best price.
I see. Never noticed this using other symbols (i.e. they are almost immediate). Maybe the high amount of orders/volume? Don’t know, but thanks for clarify.
About market orders: is there any “tick” on which the current price is updated?
For example, if the price oscillate between 1.0000 and 1.0001 and I want to buy at 1.000 (because if I buy at 1.0001 I will lose a whole integer amount), would be nice to know if the current price is refreshed at some freq.
This way, I could make an API request to get the current price and if 1.0000, place a market order and buy at 1.0000 (if the whole request are within the refreshing freq span, otherwise the current price could be changed).
What would you suggest for this scenario? Otherwise I could often “lose” instead of buy without any profit (which is what I’m looking for)…
Also: what (on buy) if I set a STOP_LOSS_LIMIT with stop at 1.000 and limit at 1.000? It should use “market” order only when reach 1.000, filling it constantly (since marker nature of order). Could it works in your opinion?