ReverseLong

Realiza la operación inversa de la posición larga.

virtual bool  ReverseLong(
   double    price,    // precio
   double    sl,       // Stop Loss
   double    tp        // Take Profit
   )

Parámetros

price

[in] Precio.

sl

[in] Precio Stop Loss.

tp

[in] Precio Take Profit.

Valor devuelto

true si la operación se ha ejecutado; en caso contrario false.

Nota

Obtiene el volumen de la posición inversa (método LotReverse()) y realiza la operación de la posición larga inversa (método Sell() del objeto Trade) si el volumen de trading no es igual a 0.

Implementación

//+------------------------------------------------------------------+
//| Posición larga inversa                                            |
//| ENTRADA:  price - precio,                                           |
//|         sl    - stop loss,                                       |
//|         tp    - take profit.                                     |
//| SALIDA: true si se procesa la operación, false en caso contrario.      |
//| OBSERVACIONES: no.                                                      |
//+------------------------------------------------------------------+
bool CExpert::ReverseLong(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUEreturn(false);
//--- obtiene el lote de la posición inversa
   double lot=LotReverse(sl);
//--- comprueba el lote
   if(lot==0.0) return(false);
//---
   return(m_trade.Sell(lot,price,sl,tp));
  }