The most common reason is that incorrect prices have been referred to. You must refer to the bid prices to check whether the requested take profit price level on a buy trade has been reached or not. However, in the case of a sell trade, you must refer to the ask prices.
It is also important to note that mark-up on spreads on the standard account, does not reflect on the chart bid/ask line by default on Metatrader 5. To view the actual bid/ask price on the chart please install our special Metatrader 5 indicator 'True Bid Ask' which is free to download in your client portal.
This indicator shows the actual true bid/ask price on your chart that is recorded on the Market Watch.