主力買賣超張數運算

  •   103 
  • 最後發表   Star Lin  2022 二月 08
Star Lin 發文於   2022/02/02

Input: period1(10, "期間(天)");
Input: period2(5, "期間(天)");

Value1 = summation(GetField("主力買賣超張數"), period1);     //最近10天主力買賣超張數總合
Value2 = average(Value1, period1);                         //將最近10天主力買賣超張數總合取平均
Value3 = Value2 + (GetField("主力買賣超張數"), period1);     //最近10天交易日, 每一天主力買賣超張數 + 最近10天主力買賣超張數總合平均  
Value4 = average(Value3, period2);                         //將Value3取五天平均

if Value3 > Value4 then ret=1;

您好:

我有寫一個小程式, 編譯結果發現第六行有問題, 可以幫忙看看, 要如何修改比較好?

XQ小幫手 發文於   2022/02/08

Hello Star Lin,

 

小幫手認為您的average應用和後面的註解有些誤差。

value2 = value1 / period1;

這樣取得的是近10天主力買賣超張數總合平均

value2 = average(Value1, period1); 

取得的是 最近10天 10天主力買賣超張數總合 的平均

 

至於value3的錯誤主要是出在 (GetField("主力買賣超張數"), period1) 這邊。

如果您要的是 近10天的主力買賣超 + 近10天主力買賣超張數總合平均 ,然後再加總的話,其實就等於 最近10天主力買賣超張數總合平均 的 2 倍。

舉例來說近10天的主力買賣超是:

1,2,3,4,5,6,7,8,9,10

那麼加總就會是 55, 平均是 5.5。

1+5.5+2+5.5+...+10+5.5 就會等於 55 * 2 = 110。

 

如果您要的是 近10天的主力買賣超 + 該日的近10天主力買賣超張數總合平均 的話,可以這樣寫:

value3 = summation(GetField("主力買賣超張數") + value2, period1);

 

發表回覆
Close