Hello 殘破的韭菜,
小幫手不知道您是怎麼用 highest 和 lowest 寫出突破N日的,不過N應該就是 highest 和 lowest 用的期數。
您可以用迴圈來跑N這個參數,舉例來說:
var: _n(0);
_n = 0
for value1 = 1 to 30 begin
if 符合判斷條件 then _n = value1; //判斷條件可能是highest(getfield("最高價","D"), value1) ...
end;
需注意裡面必須要用 simplehighest 和 simplelowest 避免運算錯誤,且使用迴圈會相當的消耗效能。
若要排除上下引線的話,您可以用陣列來存每日的實體Bar高低,接著用 HighestArray 和 LowestArray 來取得資訊。
https://xshelp.xq.com.tw/XSHelp/?HelpName=HighestArray&group=PRICERELFUNC
https://xshelp.xq.com.tw/XSHelp/?HelpName=LowestArray&group=PRICERELFUNC
舉例來說:
Array: barH[5](0);
for value1 = 0 to 4 begin
if getfield("Open", "D")[value1] >= getfield("Close", "D")[value1] then barH[value1+1] = getfield("Open", "D")[value1] else barH[value1+1] = getfield("Close", "D")[value1];
end;
value1 = HighestArray(barH,5);
這樣就可以抓出近5期實體Bar的最高點。
1 評論