請問如何取得某日期的前N個交易日的日期呢?

  •   249 
  • 最後發表   FrankLi  2021 十月 31
FrankLi 發文於   2021/10/17

請問如何取得某日期的 前N個交易日 的日期呢?

例如: 取除息日前3個交易日的日期 (不考慮天災那類例外)

 

試了一下DateAdd,看起來只是簡單日期的加減,

並非是交易日的加減,請問這是否有沒有現成的函式可用呢?

還是只能自己跑迴圈,簡單的過濾掉六日之類的,來算出大概日期?

或是要拿日期跟 Date[N] 比較?

排序方式: 標準 | 最新
GaryChiang 發文於   2021/10/17

試試看!

value1 = getfield("Date","日")

if date=getfield("除權日期") then value2 = value1[N]

 

  • 按讚來自於
  • YYFrankLi0813
Joseph 發文於   2021/10/18

可能還要把 DayOfWeek(Date) = 1,2,3,週一二三,這三天減掉會跨週末的狀況加進去。
https://xshelp.xq.com.tw/XSHelp/?HelpName=DayOfWeek&group=DATEFUNC

  • 按讚來自於
  • YYFrankLi0813
XQ小幫手 發文於   2021/10/21

Hello FrankLi,

 

如果此日期是在過去的日期的話,可以用 GetBarOffset 取得相對位置後 +3 就可以得到該天往前3天的日期。

舉例來說:

date[GetBarOffset(getfield("除權日期")) + 3]

如果此日期是在未來的話,就需要使用 dayofweek 來判斷 dateadd 要加多少天。

 

感謝 GaryChiang 和 Joseph 的熱心回覆。

  • 按讚來自於
  • YYFrankLi0813
FrankLi 發文於   2021/10/31

感謝各位高手熱心回覆, 

三種方法我都來測試看看, 謝謝

發表回覆
Close