CheckOpenLong

Comprueba las condiciones de apertura de la posición larga.

virtual bool  CheckOpenLong()

Valor devuelto

true si se ha ejecutado alguna operación, false en caso contrario.

Nota

Comprueba las condiciones de apertura de la posición larga (método CheckOpenLong() del objeto Signal) y abre una posición larga (método OpenLong()) si es necesario.

Implementación

//+------------------------------------------------------------------+
//| Comprueba la apertura de la posición larga u orden limit/stop             |
//| ENTRADA:  no.                                                      |
//| SALIDA: true si la operación se procesa, false en caso contrario.      |
//| OBSERVACIONES: no.                                                      |
//+------------------------------------------------------------------+
bool CExpert::CheckOpenLong()
  {
   double   price=EMPTY_VALUE;
   double   sl=0.0;
   double   tp=0.0;
   datetime expiration=TimeCurrent();
//--- comprueba la operación de entrada larga
   if(m_signal.CheckOpenLong(price,sl,tp,expiration))
     {
      if(!m_trade.SetOrderExpiration(expiration))
        {
         m_expiration=expiration;
        }
      return(OpenLong(price,sl,tp));
     }
//--- devuelve sin operaciones
   return(false);
  }