标记部分删除
我想删掉前面几个标记,这里我用变量代替回溯的数值怎么有问题,直接输入数值345等,就是正确的。这里面的回溯参数不能用变量代替吗;我希望实现的功能就是之前标记了一些数值,达到一定条件的情况下, 把前面一个区间的标记给删掉。unplot函数用的时候一样也有这个问题,但是用close【backnum】是正常的,commentary出来的backnum数值也是没有问题的,是不是变量不能在这里替代,用这个函数该如何实现呢,需要用其他的逻辑来实现吗。
我想删掉前面几个标记,这里我用变量代替回溯的数值怎么有问题,直接输入数值345等,就是正确的。这里面的回溯参数不能用变量代替吗;我希望实现的功能就是之前标记了一些数值,达到一定条件的情况下, 把前面一个区间的标记给删掉。unplot函数用的时候一样也有这个问题,但是用close【backnum】是正常的,commentary出来的backnum数值也是没有问题的,是不是变量不能在这里替代,用这个函数该如何实现呢,需要用其他的逻辑来实现吗。
你这部分完整代码有吗?这种问题要加载了看
回复:Params //此处添加参数 Vars //此处添加变量 Series<Numeric> up_count; Series<Numeric> dw_count; Series<bool> up; Series<bool> dw; plot plt3;//up: plot plt4;//dw:Defs //此处添加公式函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { plt1.setOption(\"stoploss_sell\",\"line-type\",Enum_Dash_Dot); plt2.setOption(\"stoploss_buy\",\"line-type\",Enum_Dash); plt3.setOption(\"up:\",\"color\",Red); plt4.setOption(\"up:\",\"color\",Green); } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { up = close>Close[4]; dw = close<Close[4]; upp = close>Close[2]; dww = close<Close[2]; Numeric barnum_up; Numeric barnum_dw; if(up) { up_count = up_count[1]+1; //dww_count = 0; } Else { up_count = 0; } if(up_count > 0 and up_count<=9) { Plt3.text(\"up:\",High*1.01,Text(up_count)); } if(up_count > 9) { Plt3.text(\"up:\",High*1.01,Text(mod(up_count,9))); } if(up_count == 0 and up_count[1]>0 ) { //Numeric i; Numeric backnum_up; backnum_up = up_count[1]; Commentary(\"backnum_up:\"+Text(backnum_up)); plt3.clear(\"up:\",date[backnum_up]+time[backnum_up],date+time); }if(dw) { dw_count = dw_count[1]+1; //upp_count = 0; } Else { dw_count = 0; } if(dw_count > 0 and dw_count<=9) { Plt4.text(\"dw:\",low*0.99,Text(dw_count)); } if(dw_count > 9) { Plt4.text(\"dw:\",low*0.99,Text(mod(dw_count,9))); } if(dw_count == 0 and dw_count[1]>0 ) { //Numeric i; Numeric backnum_dw; backnum_dw = dw_count[1]; Commentary(\"backnum_dw:\"+Text(backnum_dw)); plt4.clear(\"dw:\",date[backnum_dw]+time[backnum_dw],date+time); }}