R:基於每股權益的量化分析 —— PEG估值法

PEG指標概念

PEG指標即市盈率相對盈利增加比率(EPS增加率),是由上市公司的市盈率除以盈利增加速度獲得的數值。該指標既能夠經過市盈率考察公司目前的財務情況,又經過盈利增加速度考察將來一段時期內公司的增加預期,所以是一個比較完美的選股參考指標。git


PEG指標的計算方法

PEG的中文名稱爲市盈率相對盈利增加比率,該指標的計算公式爲:code

PEG=市盈率÷盈利增加比率it


PEG指標的應用

用PEG指標選股的好處就是將市盈率和公司業績成長性對比起來看,其中的關鍵是要對公司的業績做出準確的預期。io

所謂PEG,是用公司的市盈率(PE)除以公司將來3或5年的每股收益複合增加率。好比一隻股票當前的市盈率爲20倍,其將來5年的預期每股收益複合增加率爲20%,那麼這隻股票的PEG就是1。方法

當PEG等於1時,代表市場賦予這隻股票的估值能夠充分反映其將來業績的成長性。數據

當PEG大於1時,則這隻股票的價值就可能被高估,或市場認爲這家公司的業績成長性會高於市場的預期。一般,那些成長型股票的PEG都會高於1,甚至在2以上,投資者願意給予其高估值,代表這家公司將來頗有可能會保持業績的快速增加,這樣的股票就容易有超出想象的市盈率估值。top

當PEG小於1時,要麼是市場低估了這隻股票的價值,要麼是市場認爲其業績成長性可能比預期的要差。一般價值型股票的PEG都會低於1,以反映低業績增加的預期。di

投資者須要注意的是,像其餘財務指標同樣,PEG也不能單獨使用,必需要和其餘指標結合起來,這裏最關鍵的仍是對公司業績的預期。行業


PEG適用條件

PEG側重於公司的成長性,即適用於尋找高增加公司中被低估的股票。應該配合市淨率、公司市值、淨資產收益率等指標使用。把PEG估值法和市淨率結合起來就基本能夠肯定一隻股票是高估仍是低估。一隻股票看起來PEG小於或等於1,但若是市淨率高達10倍以上,仍然極有可能被高估了。若是一隻股票市盈率和市淨率都很低,而且PEG小於1,那麼基本上能夠肯定是低估了。投資者不能僅看公司自身的PEG來確認它是高估仍是低估,若是某公司股票的PEG爲12,而其餘成長性相似的同行業公司股票的PEG都在15以上,則該公司的PEG雖然已經高於1,但價值仍可能被低估。co


PEG計算

> library(openxlsx)

> options(digits=3)     #設置當前環境的小數點位數

> stockEPS<-read.xlsx("C:/Users/steph/Desktop/stock/stockEPS.xlsx",colNames=T)    #導入股票前三季度的每股權益數據

> Q3EPS<-as.numeric(stockEPS$Q3EPS)

> Q2EPS<-as.numeric(stockEPS$Q2EPS)

> Q1EPS<-as.numeric(stockEPS$Q1EPS)

> EPS<-data.frame(code=stockEPS$code,Q3EPS,Q2EPS,Q1EPS)

> stockInfo<-read.xlsx("C:/Users/steph/Desktop/stock/stockInfo.xlsx",colNames=T)    #導入股票代碼、名稱、現價信息

> price<-as.numeric(stockInfo$price)

> Info<-data.frame(code=stockInfo$code,name=stockInfo$name,price)

> stockdata<-merge(Info,EPS,by.Info=code,by.EPS=code)    #合併數據框

> newdata<-subset(stockdata,price>0&stockdata$Q3EPS>0&stockdata$Q1EPS>0)    #篩選現價和每股權益大於0的記錄

> PE<-newdata$price/(newdata$Q3EPS/3*4)    #將每股權益年化和計算股票的市盈率

> seasonrate<-(newdata$Q3EPS/newdata$Q1EPS)^(1/2)-1    #計算季度的EPS增加率

> EPSrate<-(1+seasonrate)^4-1    #季度的EPS增加率進行年化計算

> PEG<-PE/EPSrate    #計算PEG

> res<-ifelse( PEG>0& PEG<1,T,F)

> mydata<-data.frame(code=newdata$code,name=newdata$name,PE,EPSrate,PEG,res)

> finaldata<-subset(mydata,res==T)    #篩選符合條件的股票

> length(finaldata[,1])    #計算符合條件股票的個數

(End)

相關文章
相關標籤/搜索