关于一段代码,无法PlotBool的问题,看了两个小时也没明白
请教一下各位老师,条件1倒是可以顺利打印,为什条件2中, 无论是写成PlotBool("condition2",condition2,Low-100); 还是写成PlotBool("condition2",condition2,Low); 或者是写成PlotBool("condition2",condition2,Low+500);都无法在图标上标记笑脸。 附上源码: Params Numeric Strengthb(8); Numeric strengths(8); Vars bool condition1; bool condition2; series<bool> var0b2(false); series<bool> var0b(false); Series<Numeric> var2b( 0 ); Series<Numeric> var1b( 0 ); bool var0s(false); Series<Numeric> var1s(0) ; Numeric minpoint; Events OnInit() { //=========数据源相关设置============== AddDataFlag(Enum_Data_RolloverBackWard()); //设置后复权 AddDataFlag(Enum_Data_RolloverRealPrice()); //设置映射真实价格 AddDataFlag(Enum_Data_AutoSwapPosition()); //设置自动换仓 //AddDataFlag(Enum_Data_IgnoreSwapSignalCalc()); //设置忽略换仓信号计算 } OnBar(ArrayRef<Integer> indexs) { Minpoint = MinMove* PriceScale; //条件1************************************************************************* condition1 = SwingHigh(1, High, Strengthb, Strengthb + 1 ) <> -1 ; if (condition1) { var0b = true ; var1b = High[Strengthb]; } Else { condition1 = ((var0b) and (High >= var1b + 1*Minpoint)) ; if (condition1) { var0b = false ; PlotBool("condition1",condition1,High+100); Commentary("var1b:"+Text(var1b)); } } //条件2************************************************************************* condition2 = Swinglow(1, low, Strengths, Strengths + 1 ) <> -1 ; if (condition2) { var0s = true ; var1s = low[Strengthb]; } Else { condition2 = ((var0s) and (low <= var1s - 1*Minpoint)) ; if (condition2) { var0s = false ; PlotBool("condition2",condition2,Low-100); Commentary("var1s:"+Text(var1s)); } } }