ReverseLong

Executa operação de reversão de posição comprada.

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

Parâmetros

price

[in] Preço.

sl

[in] Preço onde finaliza a perda de uma posição (Stop Loss).

tp

[in] Preço onde finaliza a posição com lucro (Take Profit).

Valor de retorno

Verdadeiro se a operação de negociação foi executada, caso contrário falso.

Observação

Obtém a reversão de posição do volume (método LotReverse()) e executa a operação de negociação de reversão da posição comprada (método Sell() do objeto Trade) se o volume de negociação não for igual a 0.

Implementação

//+------------------------------------------------------------------+
//| Long position reverse                                            |
//| INPUT:  price - price,                                           |
//|         sl    - stop loss,                                       |
//|         tp    - take profit.                                     |
//| OUTPUT: true-if trade operation processed, false otherwise.      |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
bool CExpert::ReverseLong(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUEreturn(false);
//--- get lot for reverse
   double lot=LotReverse(sl);
//--- check lot
   if(lot==0.0) return(false);
//---
   return(m_trade.Sell(lot,price,sl,tp));
  }