您好
我想要了解如果符合條件後就回傳之前某一天K棒的日期
目前本來想使用currentdate+迴圈,但是回傳的只有式當天的
而使用barslast加上今天日期可能也會有遇到非交易日時間。
請問有比較有效率的做法嗎?
您好
我想要了解如果符合條件後就回傳之前某一天K棒的日期
目前本來想使用currentdate+迴圈,但是回傳的只有式當天的
而使用barslast加上今天日期可能也會有遇到非交易日時間。
請問有比較有效率的做法嗎?
var: intraBarPersist condition_date(0)
if condition1 then condition_date=currendate;
類似可以用上面試試看,intraBarPersist是一個全局宣告變數,
並不會因為每次跑腳本就重新歸零。
Hello kashiwara0510,
小幫手不太確定您所需要的是甚麼。
如果您是要某個條件上次成立的日期的話,直接使用 date[barlast(條件)] 這樣就可以了,不需要特別作加減。
您可以參考 barlast 的說明,函數回傳的是距離上次條件符合的Bar數,不是日期。
或是使用變數紀錄上次到這次的距離。
而如果您要的是舉例來說,每次條件成立後往前數3天的話,可以這樣作:
condition1 = 您的條件...;
if condiiton1 then value1 = getfield("Date", "D")[3];
value1就會是3天前的日期。
Hello 0xLzyun,
intraBarPersist 並不是全域變數,而是在有設定逐筆洗價的情況下,在同根Bar內運算的結果會保存到下一次運算中。
細節您可以參考說明頁面。
感謝您的熱心回覆。
2 評論