Скачать MetaTrader 5

CloseShort

Выходит из короткой позиции.

virtual bool  CloseShort(
   double    price    // цена
   )

Параметры

price

[in] Цена входа в рынок.

Возвращаемое значение

true - выполнена торговая операция, иначе - false.

Примечание

В "неттинговом" режиме учета позиций закрытие производится методами CExpertTrade::Buy или CExpertTrade::Sell. В "хеджинговом" режиме - методом CTrade::PositionCloseByTicket.

Реализация

//+------------------------------------------------------------------+
//| Short position close                                             |
//| INPUT:  price - price for close.                                 |
//| OUTPUT: true-if trade operation successful, false otherwise.     |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
bool CExpert::CloseShort(double price)
  {
   bool result=false;
//---
   if(price==EMPTY_VALUE)
      return(false);
   if(m_margin_mode==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING)
      result=m_trade.PositionCloseByTicket(m_position.Identifier());
   else
      result=m_trade.Buy(m_position.Volume(),price,0,0);
//---
   return(result);
  }