onorder域里无法print
想在onorder域里进行一些业务运算同时打印一些变量,不知道为什么打印不出来,请问下什么原因呢?比如以下一段代码,红色的打印语句在控制台里就是不打印:Params Numeric FastLength(5);// 短期指数平均线参数 Numeric SlowLength(20);// 长期指数平均线参数Vars Series<Numeric> AvgValue1; Series<Numeric> AvgValue2; Global Numeric a; Global Numeric b; Global Numeric buynum; Global Numeric sellshortnum;Events OnReady() { SetBackBarMaxCount(1+Max(FastLength,SlowLength)); Range[0:DataSourceSize() - 1] { setPlotOption("MA1", "begin-bar", FastLength); setPlotOption("MA2", "begin-bar", SlowLength); } } OnOrder(OrderRef ord) { Print("OnOrder triggered: Order ID: " + Text(ord.orderid)); print("ordertext"+text(ord)); if(ord.side==Enum_Buy and ord.combOffset==Enum_entry) { a = ord.orderid; print("buytime:"+text(time)); print("a:"+text(a)); buynum=buynum+1; } if(ord.side==Enum_Sell and ord.combOffset==Enum_entry) { b = ord.orderid; print("sellshorttime:"+text(time)); print("b:"+text(b)); sellshortnum=sellshortnum+1; } } OnBar(ArrayRef<Integer> indexs) { AvgValue1 = AverageFC(Close,FastLength); AvgValue2 = AverageFC(Close,SlowLength); PlotNumeric("MA1",AvgValue1); PlotNumeric("MA2",AvgValue2); print("a:"+text(a)); print("b:"+text(b)); print("buynum:"+text(buynum)); print("sellshortnum:"+text(sellshortnum)); If(MarketPosition <>1 && AvgValue1[1] > AvgValue2[1]) { Buy(0,Open); } If(MarketPosition <>-1 && AvgValue1[1] < AvgValue2[1]) { SellShort(0,Open); } }