該圖片之程式碼為
{設定資料計算範圍}
settotalbar(300);
setbackBar(300, "D");
outputfield(1, currentBar, "K棒數");
請問客服
為什麼00981A的currentBar跑出來是43啊?
感覺不太對
我這邊測試的結果是228。
settotalbar(300); setbackBar(300, "D"); if symbol="00981A.TW" then ret=1; outputfield(1, currentBar, "K棒數");

請問許教授
那可能的問題原因是什麼啊?
你試著用我提供的腳本測試看看,若結果還是43根K棒,那可能你的XQ系統有問題。若與我一樣是228,代表問題出在你的選股程式。
小編您好:
對!沒有錯
因為我是想要去計算過去N個月的報酬率
所以有用到close[X]的變數
X=想計算的前期值
那我想請問有沒有其他方法可以解決呢?
若腳本裡面有使用到close[100],則跑的K棒數會變少。你要解決的問題是什麼呢?
{設定資料計算範圍}
settotalbar(300);
setbackBar(300, "D");
var:
_3month_roi(0);
value1 = minlist(currentBar, 60);
_3month_roi = (close - close[value1]) / close[value1] * 100;
if GetFieldDate("除權息日期") <> 0 then ret = 1;
outputfield(1, _3month_roi, "過去三個月報酬率");
程式碼大概是這樣
就是想要去算過去三個月的報酬
Hello ycchang8511,
小編補充,選股中心在執行時預設就會取得取用商品欄位所有的歷史資料。
所以不需要特別設定資料引用筆數 (setbackbar)。
至於單純取前期值來計算的話,也不需要設定資料讀取筆數 (settotalbar)。
關於兩者的細部資訊,可參考 SetTotalBar資料讀取範圍與腳本執行的關係。
9 評論