FORTS Как отследить ордер с исполнением IOC ?

 
void OnTradeTransaction( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result )
{
  switch( trans.type )
  {
    case TRADE_TRANSACTION_HISTORY_ADD:  switch( trans.order_state )
                                         {
                                           case ORDER_STATE_FILLED:   {???}
                                                                      break;
                                           case ORDER_STATE_PARTIAL:  {???}
                                                                      break; 
                                           case ORDER_STATE_CANCELED: {???}
                                                                      break;
                                         }
                                         break;
                                  
  }
}

Добрый день!

Проблема заключается в том, что при добавлении ордера в историю с таким исполнением(IOC), ЧАСТИЧНО исполненым,

он добавляется как ORDER_STATE_CANCELED (оень странно почему разработчики не подумали об этом н-р: ORDER_STATE_PARTIAL_CANCELED ).

Кто-нибудь знает, как грамотно отследить, что же произошло с ордером? ( снялся ли он или частично исполнился )?


Причина обращения: