Competing orders is where you send like ExitLong() and EnterShort() at the same time. The enter method is already designed to reverse, so the separate ExitLong() is not needed and could result in an overfill.
You snippet just seems to check if the order is cancelled and no part of it was filled. It's appropriate in OnOrderUpdate(), but would never be true in OnExecution() handler, which is only true for orders that are filled or part filled.

Comment