OnBarOpen(ArrayRef indexs)
这是个驱动域。 如何设定 只在当日开盘时驱动一次?
不要加载图层 用这个函数 GetSessionStartTime(0) 。 If(BarStatus == 2 And TradingBeginDatetime == GetSessionStartTime(0)) 这样判断行吗?
用GetSessionStartTime当然OK
//=================--------------供您参考--------------================
//如果数据源是日线
If(ArrayFind(indexs,0))//想要控制的图层号,如果只有data0且是日线就不需要
{
If(Data0.BarStatus == 2 && Data0.QuoteStatus == Enum_QuoteStatus_RealTime /*&& Data0.Q_Status == Enum_QStatus_Trade*/)//最后bar,且实时交易状态驱动;
//如果每个日线都驱动一次,就不需要这个判断
{
//业务逻辑处理
}
}
//如果数据源data0不是日线,限定只驱动一次
最方便的方法:
加载一个日线数据源 比如Data1
If(Data1.TradingBeginDatetime == Data0.TradingBeginDatetime)
{
//业务逻辑处理 仅驱动一次
}
或者采用
If(ArrayFind(indexs,1))//Data1为日线
{//业务逻辑处理}
判断 行情状态==实时行情 && bar状态 ==2 行不行?
你是指开盘那条还是 你要进集合竞价的
默认应该是行情动的时候会驱动一次
我开盘时间再确认下