一、現金流折現模型的組成部分
下面看一下現金流折現模型的組成部分:
我們可以看到,財務模型還是要按照輸入、計算和輸出結果分成三個部分的(體現在Excel裡是不同的工作表)。由於財務模型的主要目的是得到財務相關指標(也就是計算的結果),因此我們先看輸出結果部分,通常,輸出結果是需要根據業主管理層或銀行或其他方的要求進行設計的,主要的模塊其實不外乎關注的財務指標模塊(比如收益率指標、償債能力指標、其他指標等),如果是企業估值模型,則會有企業價值或股權價值的模塊。另外財務模型需求方可能需要就項目進行一些模擬運算,也就是敏感性分析及情景分析模塊。
這些輸出結果其實是基於財務報表得到的,所以不論是企業估值現金流折現模型,還是項目測算現金流折現模型,財務模型的計算頁基本是圍繞得到項目的財務報表及現金流而展開的。財務報表即反映企業或項目的經營成果、資產狀況及現金流量,這三個部分的組成模塊基本圍繞著財務報表裡面的相關科目展開。如,經營成果包括經營收入、經營成本、EBITDA、財務費用、折舊攤銷、相關稅費、淨利潤、分紅等模塊。資產狀況部分包括淨經營資產、非流動資產、負債計算、淨資產計算,即,資本金、未分配利潤等的計算。
而現金流量部分包括經營現金流量、投資現金流量和融資現金流量等,具體包括淨經營資產投入、經營現金收入支出、支付的稅金、購置長期資產、償還本金利息、現金分紅等模塊。而通過現金流情況可以拉出企業或項目的現金流瀑布,得到項目自由現金流量及股權自由現金流量,這兩組現金流量不論對企業估值現金流折現模型,還是對項目測算現金流折現模型,都是至關重要的,對於企業估值現金流折現模型,可以通過這兩組現金流外加加權平均資本成本或股權資本成本,得到企業價值或股權價值,而對於項目測算現金流折現模型,可以得到項目收益率或股權收益率。
輸入數據部分主要是為了支撐計算部分相關計算的輸入參數。這些輸入參數通常也會圍繞財務報表而展開。包括時間相關假設(如估值時點、何時開始建設、何時開始運營等等)、常規參數假設(如一些單位的換算等)、建設投資額、經營收入相關參數(如產品出售數量、產品單價等)、經營成本假設(如項目人員成本、能源電力成本、維修費等)、折舊攤銷會計處理相關的假設、經營營運資產相關假設(如應收、應付帳款的帳期等)、項目資金來源級融資方式的假設(如項目資本金投入、項目銀行貸款期限、利率、還款方式等)以及稅務處理假設(如增值稅稅率、可抵扣的比例、房產稅、土地使用稅、所得稅稅率等)
通常,輸入、計算和輸出結果的各個計算模塊都是相互關聯的,比如,輸入的建設投資以及折舊攤銷會計處理數據會在計算部分用於算折舊攤銷,同時將作為購置長期資產的現金流。而經營收入和經營成本的輸入數據直接影響經營成果,也會影響經營現金流量。而經營營運資產的管理假設會用來計算淨經營資產,影響淨經營資產的投入金額。項目資金來源、融資方式的假設參數會用來計算項目的財務費用、負債、資本金金額,同時也會用於計算每年償還的本金、支付的財務費用等。稅務處理假設也會反映在財務模型稅費相關的計算裡。
二、現金流折現模型的最佳實踐
下面只是籠統地介紹一下現金流折現模型的最佳實踐。一個好用的財務模型通常具備以下特徵:整齊劃一、巧用複製和移植以及簡易&靈活。
我們以本課程將贈送的風電場財務模型為例,來看一下這些特徵的體現。
首先,整齊劃一,可以解釋為,每行的計算公式都和計算模塊裡第一列的公式保持一致。
(轉換至店鋪裡上傳的風電場模型計算頁)
大家看一下風電場模型計算頁,L至AG列的公式是不是和K列保持一致?
這樣做可以方便後面的模型使用者,如果想要檢查或者理解模型的計算邏輯,只要查看每行第一列的公式即可。同理,要想改變模型的計算,也只需改變第一列的公式,然後後續的公式只要通過第一列的公式複製粘貼即可。這樣既方便了模型使用,也避免了不必要的錯誤。另外,模型整體保持著一致的結構,也就是說,模型的表頭保持一致,格式和運算模塊的格式等保持一致。
(轉換至風電場模型計算頁和財務報表頁和輸出頁)
大家看一下這個風電場模型,表頭都是統一的一個時間線,然後所有的計算都是從K列開始,整行數據的和都是由第I列計算,每個運算模塊的格式都是B列有一個加粗的標題,然後跟著一個粗的橫線開始,然後以粗橫線結束。
這樣做不只是增強模型的可讀性,也會避免出現一些錯誤。同時便於檢查。比如,所有工作標的計算都是從第K列開始,由於一般情況下,同一年的財務指標都會引用同一年的數據進行計算,也就是說,第K列的指標一般只會引用其他行或其他工作表第K列的數據開展計算得到,如果我們發現有一行的第K列引用了其他的列,那麼最好檢查一下是不是引用錯了列。
巧用複製和移植,可以理解為,在搭建模型的過程中,要採用儘可能多的一致的結構,儘可能多地通過複製粘貼已有結構修改生成財務模型的新的部分。這個在風電場模型中倒沒有相應的例子。我們可以想像一下,如果是對一個洗衣房連鎖公司進行估值,假如公司旗下有幾個洗衣房,那麼我們可以搭建好一個洗衣房的計算模塊,然後將此模塊複製粘貼,做盡少的改動以滿足其它洗衣房的計算要求。這樣既可以節省工作量,又便於管理維護(我們可以想像,當需要改變一處計算時,我們便可以同樣在其他洗衣房計算模塊的相同位置做同樣的改變)
簡易是指模型的計算公式要儘可能地簡單易懂,儘可能地縮短公式的長度。另外,儘可能使模型的結構一目了然。靈活是指模型可以適用不同的情況,比如模型在計算建設期還本付息時,可以通過在一個單元格裡選擇還本付息方式(是等額本金還是等額本息),相應的還本付息金額就會隨著這個單元格的還本付息方式的變化而自動轉變。但是,這種靈活通常是要通過Excel的條件選擇函數來實現的,這樣,相應的計算公式會變得稍微複雜。簡易和靈活往往是矛盾的,有時候為了滿足模型的靈活性,不得不犧牲模型的簡易性。因此,我們在搭建模型的過程中,不得不在簡單和靈活二者之間做權衡。
本門課的課程在網易雲課堂-投行財務模型基礎