老师:
M30:ref(STKINDI('','MACD.MACD',0,5,0),1) 与 M30:STKINDI('','MACD.MACD',0,5,-1) 在60分钟K线显示的数字是一样的,可在5分钟K线显示的就不一样。M30:ref(STKINDI('','MACD.MACD',0,5,0),1) 是表示什么?在5分钟数据下用这种写法调用60分钟数据,会否有未来?
另外,在5分钟数据下,可否同时引用30分钟和60分钟上一个周期的数据?
谢谢!
ref是当前周期的上一根的值。
-1,是被引用周期上一根根的值。
如果5分钟周期引用60分钟周期的,
5分钟k线时间分别是:13:50, 13:55, 14:00, 14:05, 14:10, 14:15
60分钟k线时间分别是:14:00, 15:00
注:整小时作为分割点。
那么上面对应的结果如下:
当前最新k线14:15分,ref(stkindi(.......),1)的结果是14:10这根k线所对应的60分钟周期上的结果。因为小引大,所以14:10, 14:15都对应同一个60分钟(15:00)的数据。
而stkindi(......,-1),在5分钟周期上,得到的是上根60分钟周期中的值。
14:15分位置,对应的其实是14:00这根60分钟线
M30:ref(STKINDI('','MACD.MACD',0,5,0),1) 与 M30:STKINDI('','MACD.MACD',0,5,-1)
后者的这个这个偏移是针对被引用周期的,也就是说会引用到上一个小时线周期。而前者的这个ref则只是当前周期往前偏移一个位置。就比如5分钟下 你在9:05和9:10 引用到的小时线都是一样。而你在60分钟上这2句代码含义就完全一样了,因为你相当于没有跨周期了。
[此贴子已经被作者于2019/12/9 14:59:58编辑过]