想写个策略,如果是节假日前的一天,做特殊处理。如果是节假日后的第一天也做特殊处理。
但不知道怎么判断下一日期是节假日。如果光是周末,通过weekday的周一周五判断就可以了。
但发现如果涉及节假日的情况,可能本周的收盘日期是周四,下次开盘日期有可能是周一或周二就不确定了。
请问如何通过程序判断,当前交易日是节假日前的最后一天,和当前交易日是节假日后的第一天?
这个没办法判断的。理论上除非能嵌入一个日历程序进来才行。但是这个你只能通过更高级的c++,python拓展去处理了。先用的功能和代码函数都无法做到的。
那如果光回测用呢?
比如如果发现这两个日期中间间隔超过1天,就取上个日期的收盘价和取当前日期的收盘价,这个能实现么?
那就直接用日期减
DATEDIFF(ref(date,1) ,date)
不过要在日线上做。你可以跨周期调用这个判断结果。
减的结果大于1 说明不是连续交易日了。有节假日在其中了。
[此贴子已经被作者于2021/2/20 10:49:44编辑过]
LEN:DATEDIFF(ref(date,1) ,date),NODRAW;//DATEDIFF函数获取2日期间隔天数
p1:VALUEWHEN(LEN>=1,ref(c,1));//取上个交易日收盘价
p2:VALUEWHEN(LEN>=1,c);//取当前交易日收盘价
取值就用VALUEWHEN