Скачать MetaTrader 5

OnTradeTransaction: Частный случай

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Все статьи доступны из MetaTrader 5. Поделись и ты своей!
Mikhail Filimonov
5931
Mikhail Filimonov 2015.02.09 00:03 

Добрый день!

Отправив команду OrderSendAcync на установку ордера, мы получили номер запроса (request_id).

В обработчике OnTradeTransaction мы должны получить билет ордера (my_ticket):

//+------------------------------------------------------------------+
// Expert Trade Transaction function                                 |
//+------------------------------------------------------------------+
void OnTradeTransaction( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result )
{
  switch( trans.type )
  {
    case TRADE_TRANSACTION_REQUEST:      if ( trans.order_state == ORDER_STATE_STARTED )
                                         {
                                           if ( ( request_id != 0 ) && ( result.request_id == request_id ) )
                                           {
                                             if ( result.retcode == TRADE_RETCODE_PLACED )
                                             {
                                               if ( result.order > 0 )
                                               {
                                                 my_ticket = result.order;
                                               }
                                               else
                                               {
                                                 //Что будет дальше, если мы окажемся здесь?
                                               }   
                                             }
                                           }
                                         }
                                         break;     
}

 А какого события ждать, если мы не получим билет, при ответе,

что запрос обработан (result.retcode == TRADE_RETCODE_PLACED)?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий