能否把分阶段的涨幅排序,
1、晚上21点开盘后,根据昨日收盘价计算涨幅
2、早上9:00开盘后,根据昨晚11:00左右收盘时间的收盘价计算的涨幅
3、下午13:30开盘后,根据上午11:30的收盘价计算的涨幅
写出一个指标,显示所有商品主力合约上述涨幅,排序。
难点是第二个,各个品种收盘时间不一致。
谢谢
补充 2、早上9:00开盘后,根据昨晚11:00左右收盘时间的收盘价计算的涨幅
无夜盘的,按昨日收盘价计算涨幅
不好处理,这种思路还受节假日的影响。
普通情况下,可以这样处理。
晚上收盘价:VALUEWHEN(time=CLOSETIME(1),close);
if time>OPENTIME(2)then aa:=(close-晚上收盘价)/晚上收盘价;
a:aa;
判断不了节假日问题,这个时候取的“晚上收盘价”其实是上个交易日中的晚上收盘价的值。还有你说这个需求中,时间没到时,因为是序列变量处理取得的结果是昨天的值。
下面就是处理方式。已经完全给你了。其它时段照抄就行了。
晚上收盘价:VALUEWHEN(time=CLOSETIME(1),close);
if time>OPENTIME(2) then aa:=(close-晚上收盘价)/晚上收盘价;