CheckOpenLong

Verifica as condições para abrir posição comprada.

virtual bool  CheckOpenLong()

Valor de retorno

verdadeiro se qualquer operação de negociação foi executada, caso contrário é falso.

Observação

Verifica as condições para abrir posição comprada (método CheckOpenLong() do objeto Signal) e satisfazendo a condição, abre a posição (método OpenLong()).

Implementação

//+------------------------------------------------------------------+
//| Check for long position open or limit/stop order set             |
//| INPUT:  no.                                                      |
//| OUTPUT: true-if trade operation processed, false otherwise.      |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
bool CExpert::CheckOpenLong()
  {
   double   price=EMPTY_VALUE;
   double   sl=0.0;
   double   tp=0.0;
   datetime expiration=TimeCurrent();
//--- check signal for long enter operations
   if(m_signal.CheckOpenLong(price,sl,tp,expiration))
     {
      if(!m_trade.SetOrderExpiration(expiration))
        {
         m_expiration=expiration;
        }
      return(OpenLong(price,sl,tp));
     }
//--- return without operations
   return(false);
  }