Refresh
Refresh
更新所有数据。
virtual bool Refresh()返回值
true 如果需要处理未来的报价, 否则 false。
注释
它可确定处理报价的需要。如果需要, 它更新所有的报价、时间序列和指标的数据并返回 true。
实现
//+------------------------------------------------------------------+
//| 刷新数据用于处理 |
//| 输入: 无。 |
//| 输出: true-若成功, 否则 false。 |
//| 备注: 无。 |
//+------------------------------------------------------------------+
bool CExpert::Refresh()
{
MqlDateTime time;
//--- 刷新率
if(!m_symbol.RefreshRates()) return(false);
//--- 检查处理需要
TimeToStruct(m_symbol.Time(),time);
if(m_period_flags!=WRONG_VALUE && m_period_flags!=0)
if((m_period_flags & TimeframesFlags(time))==0) return(false);
m_last_tick_time=time;
//--- 刷新指标
m_indicators.Refresh();
//--- ok
return(true);
}