在日内1分钟周期上用valuewhen(追止信号,当日最低价)引用值,
当今日内的追止信号不满足时valuewhen引用的值是好几天前的,
如何才能让引用的值是今日的呢?
无所谓什么信号啊,只要条件不满足valuewhen引用的值是不分日期的,日内如何才能限制到当日内数据
M:=BARSLAST(DATE<>REF(DATE,1) )+1;
h30:=VALUEWHEN(TIME<=093000,HHV(HIGH,M));
l30:=VALUEWHEN(TIME<=093000,LLV(LOW,M));
类似这样算出来的,就是当日9:30之前的最高最低价
这个有一个不好的地方,如果 TIME 已经走到 10:00后,如果对H30,L30重置数值,如果重置数值放在这个语句之前,如果再执行l30:=VALUEWHEN(TIME<=093000,LLV(LOW,M)); 原来赋的值,就会没了. 而 LLV, VLUEWHEN不能放在IF条件语句里。真麻烦,实际上条件不满足的时候,就不要返回值就可以了。VALUEWHEN 的条件有一点不伦不类。我在程序为了避免这种情况,只好用最低级的GOTO语句。。。。。。
为什么不用控制语句呢,这样可以吗?
aa:=if(date<>ref(Date,1),DRAWNULL,h);
a:VALUEWHEN(h>ref(h,5) or aa<>h,aa);