Hi 小幫手,請問:
(1)若要跨頻率取得20週的簡單移動平均線,是否以下二種寫法都可以呢?
value1 = average(closew(0),20) ;
value1 = average(getField("收盤價", "W"),20);
(2)接續上述,如要進一步寫20週MA是上揚的條件,下面程式寫法是對的嗎?
value2 = linearRegslope(value1,20);
condition1 = value2 >0 ;
Hi 小幫手,請問:
(1)若要跨頻率取得20週的簡單移動平均線,是否以下二種寫法都可以呢?
value1 = average(closew(0),20) ;
value1 = average(getField("收盤價", "W"),20);
(2)接續上述,如要進一步寫20週MA是上揚的條件,下面程式寫法是對的嗎?
value2 = linearRegslope(value1,20);
condition1 = value2 >0 ;
Hello 貪貪兒,
您需要使用 value1 = average(getField("收盤價", "W"),20); 才行。
原因是因為 closew(0)[1] 會是取前一根Bar的 closew(0) 的資料。而 GetField("收盤價", "W")[1] 取的是前一周的資料。
LinearRegSlope 沒有跨頻率的函數,所以您的寫法是用近20根Bar的 20週簡單移動平均線的數據 來計算線性迴歸斜率。
如果您需要用到20週的長度的話,那麼就需要針對使用頻率去作調整。
舉例來說如果您的頻率是日的話,那麼20週就大概是 20 * 5 = 100天:
value2 = linearRegslope(value1,100);
1 評論