CheckOpenLong

ロング(買い)注文を出す条件をチェックします。

virtual bool  CheckOpenLong()

戻り値

取引操作が実行された場合は true、それ以外の場合は false

注意事項

ロング(買い)注文を出す条件をチェックし(Signal オブジェクトの CheckOpenLong() メソッド)、必要な場合はポジションを取ります(OpenLong() メソッド)。

実装

//+------------------------------------------------------------------+
//| 買い注文または逆指値/指値注文確定をチェックする             |
//| 入力:なし                                                     |
//| 出力:取引操作が処理された場合は true、 それ以外の場合は false     |
//| メモ:なし                                                     |
//+------------------------------------------------------------------+
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(false);
 }