投资者咨询:
昨日最高价的表达式 (文华财经WH8赢智V8.2)来源:文华财经 日期:2018-8-24 10:20
老师好,我看到老师们写的源码,昨日最高价写成
ZH:=REF(HHV(H,DAYBARPOS),DAYBARPOS);//昨日最高价
请问与ZH:=REF(H,1);区别是什么
加载在分钟周期可以取昨天的最高价
ZH:=REF(HHV(H,DAYBARPOS),DAYBARPOS);//昨日最高价 而ZH:=REF(H,1);是取前一根K线的最高价 使用第一种写法就是满足您的思路的
投资者咨询:
昨日最高价的表达式 (文华财经WH8赢智V8.2)来源:文华财经 日期:2018-8-24 10:20
根据您的提示,老师您看我这么理解这个指令对吗?
DAYBARPOS表示的是当根K线是当天的第几根K线值,而REF(X,N)表示的是取N周期前X的值,由于N=DAYBARPOS,而从今天开始算的日线是第一根,即DAYBARPOS=1,所以用REF函数让计算机从昨天的高点里去找,而HHV(H,DAYBARPOS)函数里用DAYBARPOS则让计算机找日线上的最大值。
可以这样理解
投资者咨询:
昨日最高价的表达式 (文华财经WH8赢智V8.2)来源:文华财经 日期:2018-8-24 10:20
那请问老师,随着今天时间的推移,今天分钟图上的K线越来越多,这个表达式还是说的昨天的最高价吗
ZH:=REF(HHV(H,DAYBARPOS),DAYBARPOS);
还是的
DAYBARPOS是取当天的K线数值,使用REF(A,DAYBARPOS)就相当于是取昨天的A 而这里的A就是HHV(H,DAYBARPOS),也就是当天的最大值。因此这里一直取的就是昨天的最大值 您回测看下返回值就明白了
投资者咨询:
昨日最高价的表达式 (文华财经WH8赢智V8.2)来源:文华财经 日期:2018-8-24 10:20
谢谢老师。因为觉得这个函数用的频率很高,所以想弄清楚,以后自己写的时候也能用上。
您说DAYBARPOS就是取今天的K线数值,也就是说,不管是分钟线,还是小时线,还是日线,这个就是指的今天的K线。
但是对于REF函数来说,第二项N不是必须用数字来表示吗?那这个DAYBARPOS放在N的位置是说明它是个逻辑判断函数吗?查函数表里说DAYBARPOS是可以赋值的,比如DAYBARPOS=1说明是今天的第一根K线。
是不是说REF和HHV这些函数,N除了可以用数字之外,还可以用DAYBARPOS这种非数字表示,这是我迷糊的地方。
您理解有不对的地方
DAPBARPOS=1并不是赋值,而是判断。在DAYBARPOS的返回值等于1的时候,该条件成立
DAPBARPOS实际上就是一个取值函数,返回的是当天的K线根数。因此返回的也是数值
而逻辑判断函数,是满足条件返回1,不满足返回0的。这里就很容易看出区别来
您再综合本帖理解下
投资者咨询:
昨日最高价的表达式 (文华财经WH8赢智V8.2)来源:文华财经 日期:2018-8-24 10:20
就是说,DAYBARPOS既可以用于判断,比如ZH:=REF(HHV(H,DAYBARPOS),DAYBARPOS);
也可以用于取值,比如HHV(H,DAYBARPOS);
这个理解对吗?
ZH:=REF(HHV(H,DAYBARPOS),DAYBARPOS);这句也是在取值呀如果这个太抽象,给您举个具体点的例子,比如当前到现在一共走出了5根K线,DAYBARPOS就是返回5 那么REF(A,5),就相当于取5跟K线前的A的值 您再理解理解