各位老师好。
我在使用HHVBARS这一函数时有这一问题:如果在某周期内有两个相同的高点,那么这个函数所求得的周期数默认是从第一个高点算起到当下的周期数。可我需要的是最近一个高点到现在的周期数。请问如何解决?
使用的品种和周期是什么?
a:HHVBARS(HIGH,30);
cc:BARSLAST(h=ref(h,a))+1;
在白银上看了下好像没问题,你本地看下这种方式能解决你的实际情况不,
随便又找了个品种和周期,问题一样,上图是螺纹1分钟。时间是:7月26日22:50分,和22:53分有两个相同的高点。但HHVBARS是从第一个高点开始算起的周期数。
如图:我使用的公式为:HHVBARST:HHVBARS(H,100);
在十字线的位置,如果是以最后一个高点为起点,则值应为1才对。但实际上的值为4,是以前一高点为起点算起的。
a:HHVBARS(HIGH,30);
cc:BARSLAST(h=ref(h,a))+1;
用您的公式试了下,可以,谢谢。
不过,整个的公式系统已经较累了,这又加多了一层计算。如果直接得出的就是最近的高点该多好啊。
而且,在走势图上,都是把最近一个高点做为高点值标注上,为什么到了HHVBARS就变了?想不通。
标识出的最高价是按最近的为标准。
而HHVBARS在在计算是只返回第一个符合条件的结果。
你可以尝试将代码整体运行流程上进行优化。