这个应为主周期是5分钟,在onbarblose事件中,辅助周期15分钟还没走完,这时候就会发生闪硕,要等2个周期走完才开仓,这如何改
其中Data1.VAR3>Data1.VAR4 And Data1.VAR3[1]<= Data1.VAR4[1] ,在onbarclose中因为时间周期不同产生闪烁,如何2个周期同步。
谢谢!
Params
Numeric Length12(7); //EMA12周期
String freq(\"15m\");// 大周期EMB\'mon\':月,\'w\':周,\'d\':日,\'h\':时,\'m\':分,\'s\':秒,
Vars
Series avgPrice;
Series VAR1;
Series VAR2;
Series VAR3;
Series VAR4;
//多周期
Global Integer layer1;
OnInit()
{
layer1 = SubscribeBar(Symbol,freq,BeginDateTime);
}
//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
OnBar(ArrayRef indexs)
{
// 主周期 5分钟
avgPrice=(Close+High+Low)/(3);
avgPrice=(Close);
VAR1=XAverage(avgPrice,Length12);
VAR2=VAR1[1];
//Data1 辅助周期 15分钟
Range[layer1:layer1]
{
avgPrice=(Close+High+Low)/(3);
avgPrice=(Close);
VAR3=XAverage(avgPrice,Length34);
VAR4=VAR3[1];
}
}
OnBarClose(ArrayRef indexs)
{
If (MarketPosition<>1 And VAR1>VAR2 And VAR1[1]<=VAR2[1] And Data1.VAR3>Data1.VAR4 And Data1.VAR3[1]<= Data1.VAR4[1] )
{
Buy(Lots,Close);
}
}
}
跨周期同样要使用固定的周期数据,也就是上一个周期的数据