現金配息率

  •   627 
  • 最後發表   Stan_TW  2020 八月 25
Stan_TW 發文於   2020/08/24

input:cash(5,"近年現金股息股利平均");
input:ratio(85,"配股配息率%");

value1 = GetField("現金股利","Y");
value2 = GetField("股票股利","Y");
value3 = GetField("每股稅後淨利(元)","Y");
if value1 >0
then value4 = (value1+value2)/value3*100;

if trueall(value4>ratio,cash) then ret=1;
outputfield1(average(value4,5),"近五年平均分配率");

 

程式目標為:

近五年有配現金股利,且 現金+股票股利 分配率有達到盈餘的85%

請問每年的配息率 達到 85%以上 可以用下面這樣寫法?   擔心 trueall 無法抓複雜的公式
if trueall(value4>ratio,cash) then ret=1;

如果其他有錯的地方也麻煩指點,謝謝

 

 

排序方式: 標準 | 最新
XQ小幫手 發文於   2020/08/24

Stan_TW大 您好

小幫手幫您測試了一下,

我覺得您的寫法是符合您想法的

以附圖這檔1229為例

這個是使用print功能抓出的資料

可以看出前面五期的數值都是大於85%了,

您可以在您的腳本加一行

print(date,value1,value2,value3,trueall(value4>ratio,cash));

玩玩看

就能夠檢視算出來的東西是否如您的預期了!

Stan_TW 發文於   2020/08/24

以1229 你的圖為例  2018 2017 都是 False ,所以沒通過才對。可是竟然篩選出來了

另外請教我的年份怎都會重複跳兩次 2020,2020,2019,2019  如附件

附加文件

XQ小幫手 發文於   2020/08/25

Stan_TW大 您好

先解釋下第一個問題

您可以手動計算看看,

2020年 取前5年 2020~2016 數值皆會大於85% 所以會是true

而2018年 的 false  是取2018~2014 裡面有不符合的數值,

true false  是按照您撰寫的trueall(value4>ratio,cash)而判定

而您的cash設定是前五期

----

問題二 

請問您是否有在此策略中重複撰寫print語法

或是有其他策略共用到這個txt檔呢?

正常會發生此狀況會是因為這種因素

感謝

發表回覆
Close