CheckTrailingStopLong

未決済のロング(買い)ポジションのトレール注文条件をチェックします。

virtual bool  CheckTrailingStopLong()

戻り値

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

注意事項

未決済のロング(買い)ポジションのトレール注文条件をチェックします。(Expert Trailing オブジェクトのCheckTrailingStopLong(...) メソッド)。条件が満たされている場合は、ポジションパラメータが変更されます(TrailingStopLong(...) メソッド)。

実装

//+------------------------------------------------------------------+
//| ロングトレールストップ/プロフィット注文をチェックする                     |
//| 入力:なし                                                     |
//| 出力:取引操作が処理された場合は true、 それ以外の場合は false     |
//| メモ:なし                                                     |
//+------------------------------------------------------------------+
bool CExpert::CheckTrailingStopLong()
 {
  double sl=EMPTY_VALUE;
  double tp=EMPTY_VALUE;
//--- ロングトレイルストップ操作をチェックする
  if(m_trailing.CheckTrailingStopLong(GetPointer(m_position),sl,tp))
    {
    if(sl==EMPTY_VALUE) sl=m_position.StopLoss();
    if(tp==EMPTY_VALUE) tp=m_position.TakeProfit();
    //--- ロングトレイルストップ操作
    return(TrailingStopLong(sl,tp));
    }
//--- 操作なしで返る
  return(false);
 }