現金流量表超簡單策略開發

  • Post author:
  • Reading time:4 mins read

2021年報開獎完了,該來審視持股的成績單。相較於損益表,現金流量表受到的關注比較少,但台股很多地雷股從現金流量表可以發現營運出問題的徵兆。比如最近跳票不斷,出現嚴重週轉不靈的2841台開,長期營運現金流為負數,可見本業無轉取現金的能力,且近期投資現金流為正數,財務危機嚴重到要變賣祖產來還債。

截圖 2022 04 12 下午12.41.13
圖片來源:財報狗https://statementdog.com/analysis/2841
2841 2022 04 12 12 42 43
2841台開一路崩盤

現金流量表快速上手

現金流量表是指一固定期間內,企業現金的實際變動情形。其中又區分為營業、投資及籌資活動現金流三大部分,可以幫助投資人了解企業使用現金的狀況,進一步能夠判斷是否有足夠現金支應開銷。

  • 營業現金流:意義是「公司透過本業營運實際流入的現金」。若為正值,則顯示公司營運有持續流入現金,營業現金流若為負值則顯示公司營運的現金是持續流出的狀態,要非常小心盈餘品質的風險。
  • 投資現金流:若為正數,代表變賣資產較多。若為負數,代表對外投資較多,常見於企業用於擴大資本支出,若將來擴大營運帶來的投資現金流能大於營業現金流,是比較好的循環,若是小於的情況,則可能擴展失敗,潛在入不敷出的風險。
  • 籌資現金流:若為正數,代表向外部借款較多,常見為向銀行借款、向股東增資、發行可轉債。若為負數,則還款或發放股利較多。

回測

介紹現金流量表質化分析的文章很多,但究竟現金流兩表的項目與股價表現有無相關?

我們以這三大項現金流是否為正數,進行條件排列組合,共8種(例如:”+-+”代表營運現金流>0、投資現金流<0、籌資現金流>0),每月回測換股 (每月都可能有企業發財報),哪一種組合是最佳、最差?

newplot
現金流量因子組合回測報酬率曲線
newplot 1
現金流量因子組合回測總報酬
newplot 2
現金流量因子組合回測年化報酬

表現最好的組合是營運現金流、投資現金流為正數、融資現金流為負數的組合,年化約12%報酬率。這組合顯示公司的營運獲利能帶回實質現金,企業不需要額外投入資本支出,不需要向外部融資,就能隨本業擴展持續賺回現金,是比較正向且安全的循環。

最差的組合是營業現金流、投資現金流為負數、融資現金流為正數的組合,公司的營運無法帶來現金,可能為虧損或收帳週轉能力出問題,本業不行的同時,仍持續向外投資,繼續燒錢,且資金來自於外部借款,財務負擔相對較大。這類企業一旦奮力一搏仍然救不起本業,很可能陷入財務上的危機。

其他回測結果

策略範例

colab程式範例檔

使用Finlab api就可以很簡單的撰寫出現金流量的策略,還可以加上哪一些因子讓策略更強大呢?留給各位去探索~

from finlab import data
from finlab.backtest import sim

營業現金流 = data.get('financial_statement:營業活動之淨現金流入_流出')
投資現金流 = data.get('financial_statement:投資活動之淨現金流入_流出')
融資現金流 = data.get('financial_statement:籌資活動之淨現金流入_流出')
position = (營業現金流 > 0) & (投資現金流 > 0) & (融資現金流 < 0)

參考資源

Ben

Python 軟體工程師與量化策略研究員。 鑽研資料工程、網頁後端、資料視覺化、量化交易策略開發。 投資主力在台股市場,量化策略為主、質化分析為輔,追求人機攜做最佳化。逐步將觸角延伸到總經、美股、加密貨幣,朝更全方位的交易人邁進。