JobPlus知识库 财务 财务咨询 文章
基本原则

今天,介绍一下编写财务模型的基本原则。我自己整理了一遍之后,还是发现表达的不够透彻(我可能有语言表达障碍),只好借用约翰老师的内容了。

我的入门书就是下面的这本Building Financial Models A Guide to Creating And Interpreting Financial Statement (2004),作者是John S. Tjia。

当时网上可以下载PDF免费的英文版,现在应该可以买到最新的中文版(新版的我没看过)。豆瓣对此书有评论,有兴趣的同学可以去看看。需要指出,这本书的内容是基于IFRS(国际财务报告准则),有些贷款或者业务模式是国内没有的。

在这本书中提到了下面几个原则,对我这些年的建模帮助很大。看不懂英文的不用着急,我后面会逐个讲解:

  • KISS—Keep it simple, stupid.
  • Have a clear idea of what the model needs to do.
  • Be clear about what the users want and expect.
  • Maintain a logical arrangement of the parts.
  • Make all calculations in the model visible.
  • Be consistent in everything you do.
  • Use one input for one data point.
  • Think modular.
  • Make full use of Excel’s power.
  • Provide ways to prevent or back out of errors.
  • Save in-progress versions under different names, and save them often.
  • Test, test, and test.


下面的文字是我对这些原则的体会,你也可以自己去下载原文来看。


  • 让模型保持简洁、 “傻瓜”。


我使用“傻瓜”这个词,是跟“傻瓜相机”中的“傻瓜”同义(不知道什么是傻瓜相机的,去问度娘,暴露年龄了),其实就是让模型变得简单易操作,这就要求把模型的结构,公式,格式等尽量做到越简单越好。比如,有的公式在一个单元格里可能会套用7层IF公式,我们可以把它拆分到2-3个单元格来计算,这样方便我们检查公式,也避免出错。再比如格式要简洁,我曾经收到过一个印尼企业发来的财务模型,每一行的颜色都不一样,像下图一样的色彩,而且采用的都是高亮的颜色,打开文件的一瞬间,眼前是五光十色,闪瞎眼睛。

假设你作为一个读者,你希望看到一堆密密麻麻的数堆在花丛中吗?至于结构,要做到一目了然,后面会有单独的一篇来讲解,这里不多说了。


  • 要清楚的知道你自己的模型是用来干什么的

财务模型的目的是有很多种的,有的是为了经营目的来做财务分析的,有的是用来做估值(价值评估)的,有是用于评估工程建设项目的。不同的模型,侧重点就会不一样。做经营分析的,就需要把经营活动中的各个项目都考虑进去,看每项细节对整个经济效益的影响如何。做估值的模型,就需要考虑自由现金流,市盈率等估值所需要的内容,而建设项目的模型,就要考虑资本开支、资金使用时间,以及建设工程的收益情况等因素。


  • 要清楚的知道你的读者需要的是什么。

这个要求,大家应该都很明白。针对不同的读者,我们就需要呈现不同的结论,这也就决定了模型的复杂程度和结构内容。我现在的上司们,只看3个数:内部收益率,净现值和投资回收期,所以我的模型只提供给他这3个数字就可以了。而我以前的外资公司的老板,他看的可不只3个数字,我需要提供给他的有资金来源和使用用途及相应的时间,三张财务报表,利润分配,盈亏平衡,敏感性分析等内容(不要以为企业要求少,活就好干了,有空再吐槽呀)。


  • 模型各部分之间保持一个有条理的安排,符合逻辑

这说白了就是做事有逻辑,要知道第一步先干什么,第二步再弄什么,一步步来。做模型是个直线的思维,没有捷径,不能你先拼出个资产负债表来,再去做成本收入明细表。为了找平资产负债表,去收入成本表里去凑数。我见过一个模型,在资产负债表里面硬生生填进去一个6位数的数字,就为了让资产负债表的左右两边相等,而这种做法对于投资分析的结论来说是致命的。


  • 可以看到模型中的计算

我的经验是不要把计算隐藏起来,能够清楚的得看到每个计算的公式是怎么来的。我自己是没有隐藏表格的习惯,在模型的使用过程中倒是没有遇到过问题。但是,我们做项目时经常会收到被投资人的模型,有的人鉴于保密因素,会把部分内容加密隐藏,这就会阻碍到我们对项目和模型的理解。

PS:这段话的原文我一直没理解透彻,有英文高手的帮忙给解个惑。


  • 模型的各部分的内容、格式等尽量一致

同样的一个内容,它的标题在不同的表格中应该是一样的。比如收入的那一行,在利润表中名称是“主营业务收入”,在收入明细表中又成了“销售收入”,虽然数字是一样的,但是名称不同,这就有可能造成计算错误。又比如,同样是E列,在资产负债表中的E列代表2017年的财务数据,而利润表中的E列却代表了2018年的财务数据,这样的格式也是不方面计算的。


  • 只有一个地方可以输入数据

我的模型里面总是有一个表单叫“Assumption”(假设条件),模型需要的所有原始数字,例如销售单价,销售数量,单位成本等都是在这个表单里手工填写进去,除此以外,整个模型里没有其他的地方可以输入数字。

这样做,方便我们在模型建成之后,在做分析时对模型的参数进行调整。假设现在模型的内部收益率是10%,我想调整到15%,那么就需要改各项参数。如果所有的参数都在同一个页面,调整起来就很容易。

有个咨询公司提供给我们的模型,在假设条件表单里面把投资额分在3年投出,并列出了5%的投资收益。我在调整投资时间的时候,就发现模型的投资回报率竟然不变(想想,为什么不变是错的?)。然后我就从现金流量表开始倒着找,随后发现投资收益的数据竟然是手工输入在利润表中,与前面假设条件表单里面的数据没有任何关联。如果这个模型的作者坚持了这条原则,是完全可以避免这个错误的。

总之,这条的原则就是,所有的输入数据都在一张表单中,修改任何一个参数,后面的计算都会自动更新(这就要求我们在建模的时候坚持第4条原则,思路一定要清晰,有逻辑)。


  • 模块化思维

这其实是把模型分成相对独立的板块,每个板块内又再区分相对独立的区域,一是方便我们对计算行检查,二是由于相对独立,这块出错了,对其他板块的影响不大,三是修改起来也比较容易,需要时只对部分板块进行修改就可以了。


  • 充分利用EXCEL的功能


例如,充分利用EXCEL的公式、使用检查拼写功能、应用公式审核功能等等,让自己减少操作。EXCEL有几个特别好用的工具,例如公式审查、定义、迭代计算、数据表等等。我在后面操作中会一一提到。


  • 采取方法避免出错.

对于新手来说,建模过程中会出现各种各样的错误。一方面是要仔细,不要因为自己的粗心而搞错,另外一方面就是打开EXCEL的错误提示功能,帮我们来检查公式使用中的错误,具体如何操作,我会在后面建模过程中会提到。


  • 在做模型的过程中经常存盘,并且保存到不同的文件名称下。

我后面的文章会单独写一篇关于文件名称,解释为什么要经常存盘,为什么保存的文件名字还不一样。这里就只要记住需要这么做就可以了。(就当是为了引起你们的好奇吧,其实是我懒,不想重复写。)


  • 检查、检查、再检查。

这标题有点像高考前,老师一个劲地嘱咐“仔细,仔细再仔细”。对于建模老手来说,已经形成了习惯,注重细节,检查的次数很少。但是对于新手来说,由于公式的运用不熟悉,加上考虑各表格之间的关系不全面,出错是很频繁的事情。所以需要经常检查一下公式的计算和引用是否正确,必要时手动计算复核。


如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

¥ 打赏支持
106人赞 举报
分享到
用户评价(0)

暂无评价,你也可以发布评价哦:)

扫码APP

扫描使用APP

扫码使用

扫描使用小程序