There could be a few reasons why your Pending Order is not executed:
Price Has Not Been Reached
Your pending order isn’t executed yet because the limit price has not been reached by the instrument.
Price Was Reached and Order Not Filled
The success of your limit order isn’t necessarily due to time and price priority on the markets. The order fill rate depends on a number of elements, such as market volatility, size and type of order, market conditions, and system performance.
Unstable Market Conditions
Whenever a market has drastic price changes, spikes or drops, and has no purchases or sales, your pending order might not be executed.
While these scenarios are rare when they occur the market will be halted for price volatility and your order will remain pending.
Extended Trading Hours
During extended trading hours (9–9:30 AM and 4–6 PM EST), orders may not fill due to lower volume and wider price spreads when compared to normal trading hours. Some instruments may also have limited trading ability during extended trading hours.