extern string Base = "GBPUSD"; int start() { if(Symbol() != Base) { if(displayAlert == true && SignalValue!=285) DisplayAlert(" Currett Symbol is not "+Base+"!",1); SignalValue=285; return(0); } if (MA89SMA>SMA89now) { DispDownArrow(index,DeepSkyBlue); return (0); } return(0); }
1秒钟内,能够接收2~4个实时数据。每次接收都会运行start()。因此,在DisplayAlert()执行后,需要设置静态标志。
static bool flag=false;
在下面的代码中
extern string Base = "GBPUSD";
int start()
{
if(Symbol() != Base)
{
if(displayAlert == true && SignalValue!=285)
DisplayAlert(" Currett Symbol is not "+Base+"!",1);
SignalValue=285;
return(0);
}
if (MA89SMA>SMA89now)
{DispDownArrow(index,DeepSkyBlue);return (0);}
return(0);
}
前面已经报警了,但是好象后面的DispDownArrow()还是运行了,并且还在图表中画出了箭头!
我把上面的程序放在另外的货币对图表中运行,按我的理解,return(0);一定会执行, 那么它后边的代码应当不再执行才正确!也就是说画出了箭头的DispDownArrow()不应该再执行才正确!
但是非常不幸的是它就是的确会运行return(0);后面的代码!这是很严重的问题!
那位高手能指点一下!谢谢!