我寫了底下這段程式碼想觀察 Average() 的輸出
Var: avgClose(Average(Close, 2));
print(File("C:\SysJust\XQ2005\LOG\print_log\"), avgClose);
結果我執行選股回測後,得到的台泥(1101) log 是
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
45.050000
裡面總共有 12 筆資料
我的選股回測時間是設定 2020/7/30 ~ 2020/7/31,回測的詳細參數在附圖裡
只有兩天的回測時間,為什麼會跑出 12 筆資料呢?
台泥 2020/7/30 的收盤價是 45.35,2020/7/31 收盤價是 45
(45.35 + 45)/2 = 45.175,45.175 也跟 45.05 不一樣
請問 Average() 為什麼產生這樣的輸出結果?
我原本以為會得到底下的輸出結果:
45.2
45.175
因為 7/29, 7/30, 7/31 台泥的收盤價分別是 45.05, 45.35, 45
45.2 等於 45.05 跟 45.35 的平均: 45.2 = (45.05 + 45.35) / 2
45.175 等於 45.35 跟 45 的平均: 45.175 = (45.35 + 45) / 2
1 評論