为什么会闪烁

if(TrueDate(0) <> TrueDate(1)) { a = 0; } result = 1 ; for j = 0 to DataSourceSize-1 { result = result * Data[j].BarExistStatus; } if (result<>1)return; if (Time== 0.2105 and a<1) { myArray = []; id = []; Range[i=0 : 41] { Data[i].MinPoint = Data[i].MinMove*Data[i].PriceScale; zhangfu=(Data[i].Close[1] - Data[i].Close[10])/Data[i].MinPoint; ArrayPushBack(myArray,zhangfu); print("合约:" + (Data[i].Symbol)); print("MinPoint" + Text(Data[i].MinPoint)); print("zhangfu" + Text(zhangfu)); id[i] = i; } for i = 0 to 4 { Data[id[i]].SellShort(1,Data[id[i]].Close-3*Data[id[i]].MinPoint ); a = a+1; } for i = 37 to 41 { Data[id[i]].buy(1,Data[id[i]].Close+3*Data[id[i]].MinPoint); } } if (Time == 0.2108) { for i = 0 to 4 { Data[id[i]].BuyToCover(1, Data[id[i]].Close+3*Data[id[i]].MinPoint); } for i = 37 to 41 { Data[id[i]].sell(1,Data[id[i]].Close-3*Data[id[i]].MinPoint); } }上述代码 实盘运行时会出现信息中心提示 信号闪烁 , 图表 信号显示 有平仓 但实盘不发信号 (偶尔也会发平仓单 )但发建仓单 基本上正常。 这是为什么呢 查了好多资料 及视频 就是解决不了问题 能不能请开发的人员 给解决一下 。

是不是上面有全局变量啊

回复:Series<Numeric> MinPoint; Series<Numeric> zhangfu; Global Numeric a; Global Array<Numeric> myArray; Global Array<Numeric> myArray_Symbols; Global Array<Integer> id; Global Array<Numeric>layerId; Array<String> Symbols; Array<String> Symbols1; global Integer k; global Integer i; global Integer j; Numeric result; 是的 有的

回复:你最上面有个a的条件,然后开仓还在里面修改a的值那肯定会闪烁吧

回复:那我想只开仓一次 防止重复开仓 ,怎么写呀

回复:图表使用序列变量控制