找出市場上每股現金最多的公司

By | 2017-06-22

選股的時候,有的時候會想找出某個條件排名前N名的公司,但如果系統不支援這個條件的排名時該怎麼辦? 例如我想找每股流動資產跟股價最接近的公司前20名,要怎麼做呢? 今天就是來跟大家分享這種自訂排行榜的寫法。

首先,得先把想要合排行的數值的演算規則寫成函數

2017062101

這裡用中文的函數名稱,目的是讓user可以很快的找到這個函數。

接下來就是撰寫這個函數的腳本

value1=GetField("現金及約當現金","Q");//百萬
value2=GetField("短期投資","Q");
value3=GetField("短期借款","Q");
value4=GetField("總市值","D");
value5=(value1+value2+value3)/(value4*100);
if value4<>0 then 
value6=value5/value4;
ret=value6;

這個函數腳本跟英文腳本的差別就在於用ret來代替英文的函數名稱作為賦值的敘述。

從上述的腳本中,可以理解,我想找的是現金與短期投資合計後減去短期借款後,跟總市值的比值,這個數字如果大於一,代表光公司馬上處理後的現金就高過公司目前的市值,通常這種公司就算是超跌了。

寫完函數後,接下來就是把這個函數拿來當作排行榜的條件,設定的流程如下

2017062102

2017062103

這樣就可以完成自訂的排行條件了。

這個功能是XQ6.2版之後才支援,透過這個方法,就可以自己來設計要排行的數字的演算方法了。