title: “Lbo Model” sidebar_label: “Lbo Model” description: “Build leveraged buyout models in Excel — sources & uses, debt schedule, cash sweep, exit multiple, IRR/MOIC sensitivity”
{/* 本页面由 website/scripts/generate-skill-docs.py 根据技能文件 SKILL.md 自动生成。请直接编辑源文件 SKILL.md,而非此页面。 */}
LBO模型构建
在Excel中构建杠杆收购模型——包括资金来源与用途、债务偿还计划、现金流汇总、退出倍数以及IRR/MOIC敏感性分析。该技能可与excel-author技能搭配使用,适用于私募股权项目筛选、投资方案例估值,或演示用融资方案设计。
技能元数据
| 来源 | 可选——通过 hermes skills install official/finance/lbo-model 安装 |
| 路径 | optional-skills/finance/lbo-model |
| 版本 | 1.0.0 |
| 开发者 | Anthropic(由Nous Research优化) |
| 许可协议 | Apache-2.0 |
| 支持平台 | linux、macos、windows |
| 标签 | finance、valuation、lbo、private-equity、excel、openpyxl、modeling |
| 相关技能 | excel-author、pptx-author、dcf-model、3-statement-model |
参考:完整SKILL.md内容
环境要求
该技能依赖无界面版openpyxl——即需在磁盘上生成.xlsx文件。请遵循excel-author技能中的单元格着色、公式设置、命名范围及敏感性分析表的规范。在交付结果前需重新计算:python /path/to/excel-author/scripts/recalc.py ./out/model.xlsx。
模板要求
该技能使用模板来构建LBO模型。务必首先检查是否有附带的模板文件。
在开始构建任何LBO模型之前:
- 如果已附带模板文件:请严格遵循该模板的结构——直接复制模板并填入用户提供的数据。
- 如果没有附带模板:请询问用户:“您是否有特定的LBO模板希望我使用?如果没有,我可以使用标准模板,其中包含资金来源与用途、运营模式、债务偿还计划以及收益分析等内容。”
- 如果使用标准模板:请以
examples/LBO_Model.xlsx为起点,并根据用户的假设填入相应数据。
重要提示:一旦有类似LBO_Model.xlsx的文件被附带,您必须将其作为模板使用——严禁从头开始构建。即便模板显得较为复杂或功能超出当前需求,也请先复制模板再根据用户要求进行调整。只要提供了模板,就绝不能决定“从头开始构建”。
关键操作指南——请首先阅读
该技能使用Python和openpyxl编写。需先编写公式字符串(如ws["D20"] = "=B5*B6"),然后在交付结果前运行excel-author技能中的recalc.py辅助工具进行重新计算。
核心原则
- 所有计算都必须以Excel公式形式呈现——严禁在Python中计算数值后再将结果硬编码到单元格中。使用openpyxl时,应写入
cell.value = "=B5*B6"(公式字符串),而非cell.value = 1250(计算结果)。模型必须具备动态性,当输入数据发生变化时能自动更新。 - 遵循模板结构——需按照
examples/LBO_Model.xlsx或用户提供的模板组织结构进行操作,不得自行设计布局。 - 使用正确的单元格引用——所有公式都应引用对应的单元格,切勿直接输入本应来自其他单元格的数值。
- 保持符号规则一致性——需遵循模板所采用的符号规则(有些模板用负数表示支出,有些则用正数)。整个模型中必须保持一致。
- 分阶段逐步完成,并在每一步与用户确认——先完整完成一个部分,向用户展示已生成的内容,运行该部分的验证检查并得到确认后,才能进入下一阶段。切勿一次性构建完整模型后再呈现——后续部分依赖于前期内容,如果在收益分析完成后才发现资金来源与用途存在错误,将不得不重新调整所有内容。
公式颜色规范
- 蓝色(0000FF):硬编码输入值——即直接输入的、不引用其他单元格的数值。
- 黑色(000000):包含计算公式的单元格——任何使用运算符或函数的公式,如
=B4*B5、=SUM()、=-MAX(0,B4)。 - 紫色(800080):引用同一工作表内单元格的链接——无需计算的直接引用,如
=B9、=B45。 - 绿色(008000):引用不同工作表内单元格的链接——跨工作表引用,如
=Assumptions!B5、='Operating Model'!C10。
填充颜色方案——专业蓝灰色调(除非用户或模板另有指定,默认使用此方案)
- 尽量保持简洁——仅使用蓝色和灰色作为单元格填充色。严禁使用绿色、黄色、红色或其他复杂配色。专业的LBO模型应注重简约风格。
- 默认填充色方案:
- 章节标题(资金来源与用途、运营模式等):深蓝色
#1F4E79,搭配白色粗体文字。 - 列标题(第1年、第2年等):浅蓝色
#D9E1F2,搭配黑色粗体文字。 - 输入单元格:浅灰色
#F2F2F2(或纯白色)——蓝色字体用于标识,填充色仅为辅助。 - 公式/计算结果单元格:纯白色,无填充。
- 关键输出结果(IRR、MOIC、退出时股权价值):中蓝色
#BDD7EE,搭配黑色粗体文字。
- 章节标题(资金来源与用途、运营模式等):深蓝色
- 这就是全部的配色方案:3种蓝色 + 1种灰色 + 白色。如果模板使用了自定义颜色,则请遵循模板规定。
- 注意:上述蓝色/黑色/紫色/绿色字体颜色用于区分输入值、公式及链接内容,它们与此处所述的填充色方案是相互独立的——二者需协同使用。
数字格式标准
- 货币格式:根据模板不同,可为`$
python /path/to/excel-author/scripts/recalc.py model.xlsx
必须以零错误的状态返回成功结果。
各板块平衡性检查
- 所有需要保持平衡的板块(如收入与支出、资产与负债)都必须完全相等
- 用作平衡项的插值数值计算正确
- 不同板块之间应相互对应的金额需保持一致
收入/运营预测
- 收入或营收额能根据驱动因素或增长率正确计算得出
- 所有成本与费用项目均得到恰当核算
- 小计与总计的数值加总正确
- 利润率及各项比率处于合理范围
- 对应假设条件的链接准确无误
资产负债表(如适用)
- 资产 = 负债 + 所有者权益(必须保持平衡)
- 所有项目均与相应的明细表或滚动更新表相关联
- 期初余额等于上一期间的期末余额
- 已包含校验行,且其显示数值为零
现金流表(如适用)
- 以正确的收入数值作为起始点
- 非现金项目被恰当地计入或扣除
- 流动资本的变化符号正确
- 期末现金余额 = 期初现金余额 + 净现金流额
- 各报表中的现金余额保持一致
支持性明细表
- 滚动更新后的明细表保持平衡(期初余额 + 变动额 = 期末余额)
- 各明细表与主报表之间的链接正确
- 计算所得的数值使用了恰当的驱动因素
- 所有时期的数据计算均保持一致
债务/融资明细表(如适用)
- 期初余额可追溯至相关数据来源或上一期间
- 利息是依据适当的余额(通常为期初余额)计算的
- 偿债金额会考虑现金可用性及偿还优先级
- 期末余额不得为负数
- 各项目的总计数值加总正确
收益/回报分析
- 退出价值/终值计算准确
- 已包含所有相关的调整项
- 现金流符号正确(投资活动为负,所得资金为正)
- IRR/MOIC公式所引用的数据范围完整
- 分析结果与给定场景相符合
敏感性分析表(如适用)
- 表格的行列尺寸为奇数(如5×5或7×7),从而存在真正的中心单元格
- 行与列的数值以基准情况为中心对称分布(即
[base-2Δ, base-Δ, base, base+Δ, base+2Δ]) - 中心单元格的输出值等于模型实际的IRR/MOIC数值,以此确认表格的连接逻辑正确
- 中心单元格会被高亮显示——填充色为浅蓝色
#BDD7EE,字体加粗 - 行与列的标题均包含相应的输入数值
- 每个数据单元格中都包含公式(而非硬编码数值)
- 每个数据单元格显示的数值各不相同
- 数值变化方向符合预期(退出倍数越高,IRR通常也越高,以此类推)
格式规范
- 硬编码的输入数值显示为蓝色(0000FF)
- 计算得出的公式数值显示为黑色(000000)
- 同表页内的链接显示为紫色(800080)
- 不同表页之间的链接显示为绿色(008000)
- 所有数字均右对齐
- 全文应用了恰当的数字格式
- 无单元格显示错误值(如#REF!、#DIV/0!、#VALUE!、#NAME?等)
逻辑合理性检查
- 数值的数量级处于合理范围
- 发展趋势符合预期(如增长、下降或稳定)
- 不存在明显错误的数值(本应为正数却出现负值,百分比超出合理范围等)
- 关键输出数值符合该类型分析应有的合理区间
需要避免的常见错误
| 错误类型 | 具体问题表现 | 解决方法 |
|---|---|---|
| 硬编码计算结果 | 当输入参数发生变化时,模型无法自动更新 | 始终使用引用源单元格的公式 |
| 复制后单元格引用出错 | 公式指向了错误的单元格 | 仔细核对所有链接,使用恰当的绝对引用格式 |
| 循环引用错误 | 模型无法完成计算 | 对于涉及利息的计算,使用期初余额来打破循环 |
| 各板块之间不平衡 | 应该相等的总计数值不一致 | 确保有一个项目作为平衡项(通过差值计算得出) |
| 出现本不应出现的负余额 | 支付或使用的金额超过了可用资金 | 适当使用MAX(0, …)或MIN函数进行限制 |
| IRR/回报计算错误 | 符号错误或数据范围不完整 | 检查现金流符号,并确保公式涵盖了所有相关时期 |
| 敏感性分析表显示相同数值 | 公式未能随输入参数变化 | 检查单元格引用方式——需使用混合引用格式(如$ |