兩者取平均的差別

  •   81 
  • 最後發表   股海弟弟long  2021 九月 17
股海弟弟long 發文於   2021/09/15

想請問下列兩種取平均的算法

我知道plot2一定是正確的

但plot1的值卻和plot2不同

不都是取20日的平均嗎?

謝謝~

VALUE1=AVERage(GETField("Close","D"),20);
VALUE2=AVerage(CLOSE,20);
PLOT1(VALue1);
PLOT2(VAlue2);

另外 想請問若想要計算盤中20日均線的切線斜率

這樣寫是正確的嗎?

VALUE1=AVERage(GETField("Close","D"),20);
VALUE2=LInearRegSlope(VALUE1,2);

XQ小幫手 發文於   2021/09/17

Hello 股海弟弟long,

 

VALUE1=Average(GetField("Close","D"),20);

這行計算出來的會是近20根日頻率收盤價的平均。

VALUE2=Average(Close,20);

這計算出來的會是近20根主圖頻率收盤價的平均。

所以若您的圖頻率不是日頻率的話,兩者計算出來就會有差。

小幫手測試過,在圖頻率為日的情況下,兩者會是相同的。

如果您是在日頻率下卻計算出不同的數值的話,需要麻煩您提供 頁面匯出檔勾選(包含)指標腳本 以及 XQ Log 來檢驗。

Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。

您可以直接將檔案上傳,如果檔案過大的話也可以Mail至客服信箱 XQservice@XQ.com.tw且附上 討論文章連結網址(小幫手才能盡早處理)。

 

LinearRegSlope 會針對期數資料計算線性迴歸後回傳斜率。

您的狀況只有填2,也就是兩點,那麼小幫手會建議您直接計算會比較快。

所以在日頻率的狀況下:

value1 = average(close, 20);

value2 = value1 - value1[1];

就可以算出兩點間斜率。

若是不同頻率的話,可以這樣寫:

value1 = average(getfield("Close", "D"), 20) - average(getfield("Close", "D")[1], 20);

發表回覆
Close