CheckOpenShort

检查开空头仓位的条件。

virtual bool  CheckOpenShort()

返回值

true 如果交易操作已被执行, 否则 false。

注释

它检查开空头仓位的条件 (信号对象的 CheckOpenShort() 方法) 并在必要时开空头仓位 (OpenShort() 方法)。

实现

//+------------------------------------------------------------------+

//| 检查开空头仓位或挂单           |

//| 输入:  无。                                                     |

//| 输出: true-如果交易操作处理完毕, 否则 false。     |

//| 备注: 无。                                                     |

//+------------------------------------------------------------------+

bool CExpert::CheckOpenShort()

  {

   double   price=EMPTY_VALUE;

   double   sl=0.0;

   double   tp=0.0;

   datetime expiration=TimeCurrent();

//--- 检查空头入场操作信号

   if(m_signal.CheckOpenShort(price,sl,tp,expiration))

     {

      if(!m_trade.SetOrderExpiration(expiration))

        {

         m_expiration=expiration;

        }

      return(OpenShort(price,sl,tp));

     }

//--- 返回无操作

   return(false);

  }