我想計算今年至今的累計EPS及去年同期的累計EPS...但是差很大...

  •   349 
  • 最後發表   KKing  2024 九月 23
KKing 發文於   2024/09/22

想請教關於EPS去年及今年同期的計算及比較...

這是我的代碼:

var: thisyear(0),lastyear(0),rm(0),loop(0);
rm=month(getFieldDate("EPS","Q"));
if rm=3 then loop=0;
if rm=6 then loop=1;
if rm=9 then loop=2;
if rm=12 then loop=3;

var: i(0),j(0),z(0);
for i = 0 to loop
thisyear += GetField("EPS", "Q")[i];

z = loop+4;
for j = 4 to z
lastyear += GetField("EPS", "Q")[j];


if thisyear>=lastyear then
begin
ret = 1;
print(getFieldDate("EPS","Q"),"財報月:",rm,"本年EPS:",thisyear,"去年EPS:",lastyear);
end;

但是得到的結果卻差很多。

例如1104的結果是

20220301.000000 財報月: 3.000000 本年EPS: 1.060000 去年EPS: 0.350000 
20220601.000000 財報月: 6.000000 本年EPS: 2.630000 去年EPS: 1.160000 
20220901.000000 財報月: 9.000000 本年EPS: 4.830000 去年EPS: 2.270000 
20221201.000000 財報月: 12.000000 本年EPS: 7.960000 去年EPS: 3.930000 
20230301.000000 財報月: 3.000000 本年EPS: 8.380000 去年EPS: 4.990000 
20230601.000000 財報月: 6.000000 本年EPS: 9.420000 去年EPS: 6.560000 
20230901.000000 財報月: 9.000000 本年EPS: 11.880000 去年EPS: 8.760000 
20231201.000000 財報月: 12.000000 本年EPS: 15.020000 去年EPS: 11.890000 
20240301.000000 財報月: 3.000000 本年EPS: 15.390000 去年EPS: 12.310000 
20240601.000000 財報月: 6.000000 本年EPS: 16.320000 去年EPS: 13.350000 

另外後來才發現到選股時的設置是:

 

所以我是在哪一步做錯了呢?

排序方式: 標準 | 最新
虎科大許教授 發文於   2024/09/22

setBarFreq("Q");
var:i(0),thisyear(0),lastyear(0),rm(0);
rm=month(getFieldDate("EPS","Q"));
switch(rm)
    begin
        case 3:
            value1=0;
        case 6:
            value1=1;
        case 9:
            value1=2;
        case 12:
            value1=3;
    end;
thisyear=0;
lastyear=0;
for i=0 to value1
    begin
        thisyear=thisyear+GetField("每股稅後淨利(元)","Q")[i];
        lastyear=lastyear+GetField("每股稅後淨利(元)","Q")[i+4];
    end;
ret=1;
print("財報月:",rm,"本年EPS:",thisyear,"去年EPS:",lastyear);

KKing 發文於   2024/09/22

謝謝教授!
再請教教授,setBarFreq("Q")這個是必要的嗎?我的意思是,即使在日周期中,因為getfield已經指定取得的資料是季周期,不考慮對print的影響的話,是不是可以說指定頻率並不對這裡EPS的計算產生影響?

虎科大許教授 發文於   2024/09/22

以這個例子而言,是可以省略。我一般習慣在選股腳本直接指定頻率,以避免使用錯誤的頻率選股。

KKing 發文於   2024/09/23

謝謝教授!

發表回覆
Close