It's been 30 minutes and the order has not yet been filled. So I canceled the order.
How long does it take for an order to be filled?
If you want you order to be filled immediately, you can change the 'limit order' to 'market order'.
If you want your order to be filled at a specific price, you can use the limit order. If you buy, the market price must be lower than the order price before your order would be filled. If you sell, the market price have to get higher than the order price before your order would be filled.
If you want your limit order to be filled immediately, you will buy at higher price to the market price, and sell at lower price to the market order.
...assume you are trying to purchase bitcoin and you placed your order at $25200, and bitcoin price dropped to $25190, your order won't be filled till bitcoin bounces back to $25200 or above.
Bitcoin at $25190 and you buy bitcoin at $25200. That is a higher price, which means the order would be filled immediately because you are buying at a higher price if compared to the market price.
For illustration:
Bitcoin at $25000
For long/buy
You open a limit order at $25010 (above $25000). The order will be filled immediately
You open a limit order at $24990 (below $25000). The order will not be filled. If the market price of bitcoin gets to or drop below below $24990, your order will be filled.
For short/sell
You open a limit order at $24990. Bitcoin at market price of $25000. The order will be filled immediately
You open a limit order at $25010. Bitcoin price at $25000. The order will not be filled. If bitcoin increase above $25010, your order will be filled.
I hope you will understand it better this way.
It is even harder to explain than using it while trading, once you start to trade you will notice how simple it is.
I will advice you to be careful of trading derivatives, because leveraging is very risky. Trading itself is very risky, not to talk of future trading which is far riskier.