API 2.6.70
IMessage.getReasons() returns a sub-set of predefined reasons, specific to successful types of message (ORDER_CHANGED_OK, ORDER_CLOSE_OK, ORDER_FILL_OK):
ORDER_CLOSED_BY_SL, // Order closed by Stop Loss trigger.
ORDER_CLOSED_BY_TP, // Order closed by Take Profit trigger.
ORDER_CLOSED_BY_MERGE, // Order get merged
ORDER_CHANGED_SL // Stop Loss trigger was changed.
ORDER_CHANGED_TP, // Take Profit trigger was changed.
ORDER_CHANGED_AMOUNT // Order amount was changed.
ORDER_CHANGED_PRICE, // Order price was changed.
ORDER_CHANGED_GTT // Execution timeout (Good Till Time) was changed.
ORDER_CHANGED_TYPE // Order Command was changed.
ORDER_FULLY_FILLED // Order is Fully Filled.
Wiki diagrams updated:
https://www.dukascopy.com/wiki/#Order_state