Lbo Model
在 Excel 中構建槓桿收購(LBO)模型 — 資金來源與運用、債務償還計劃、現金清掃、退出倍數、IRR/MOIC 敏感性分析。與 excel-author 配合使用。適用於私募股權篩選、發起人案例估值或路演中的 illustrative LBO 示例。
技能元數據
| 來源 | 可選 — 使用 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
以下是 Hermes 在觸發此技能時加載的完整技能定義。這是技能激活時代理所看到的指令。
環境
此技能假設使用 無頭模式 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 種灰色 + 白色。如果模板使用其自有顏色,請遵循模板。
- 注意:上述藍色/黑色/紫色/綠色字體顏色用於區分輸入值、公式和鏈接。它們與此處的填充調色板是分開的 — 兩者協同工作。
數字格式標準
- 貨幣:
$#,##0;($#,##0);"-"或$#,##0.0(取決於模板) - 百分比:
0.0%(一位小數) - 倍數:
0.0"x"(一位小數) - MOIC/詳細比率:
0.00"x"(兩位小數以提高精度) - 所有數值單元格:右對齊
首先明確需求
在填寫任何公式之前:
- 檢查模板結構 - 識別所有章節,理解時間線(哪些列對應哪些期間),注意任何現有公式
- 如有不清楚之處,詢問用戶 - 如果模板結構、計算方法或需求存在歧義,請在繼續之前提問
- 確認關鍵假設 - 任何關鍵輸入、計算偏好或特定要求
- 只有在理解模板後,才 proceed 填寫公式
模板分析階段 - 首先執行此步驟
在填寫任何公式之前,徹底檢查模板:
-
映射結構 - 識別每個部分的位置以及它們之間的相互關係。注意哪些部分為其他部分提供數據。
-
理解時間線 - 哪些列代表哪些期間?是否有“交割”(Closing)或“備考”(Pro Forma)列?預測期從哪裡開始?
-
識別輸入單元格與公式單元格 - 模板通常使用顏色編碼、邊框或陰影來指示哪些單元格需要輸入值,哪些需要公式。請尊重這些約定。
-
仔細閱讀現有標籤 - 行標籤確切地告訴您期望進行的計算。不要假設 - 閱讀模板要求的內容。
-
檢查現有公式 - 某些模板已部分填充。除非特別要求,否則不要覆蓋正在工作的公式。
-
注意模板特定約定 - 符號約定、小計結構、部分的組織方式、是否有針對不同組件的單獨工作表等。
填寫公式 - 通用方法
對於每個需要公式的單元格,請遵循以下層級:
第 1 步:檢查模板
- 該單元格是否已有公式?如果有,驗證其正確性並繼續。
- 是否有註釋或備註指示預期的計算?
- 行/列標籤是否使計算顯而易見?
- 相鄰單元格是否顯示出您應遵循的模式?
第 2 步:檢查用戶的指令
- 用戶是否指定了特定的計算方法?
- 是否有影響此公式的既定假設?
- 是否提到了任何特殊要求?
第 3 步:應用標準實踐
- 如果模板和用戶均未指定,請使用標準的 LBO 建模慣例
- 記錄您做出的任何假設
- 如果確實不確定,請詢問用戶
常見問題領域
以下計算模式在 LBO 模型中經常引起問題。遇到這些情況時請特別注意:
平衡部分
- 當兩個部分必須相等時(例如,資金來源 = 資金運用),通常有一項是“ plug ”(平衡項)
- 識別哪一項是 plug,並將其計算為差額
稅務計算
- 稅務公式應僅引用相關的收入行和稅率
- 不應引用不相關的部分(例如,債務計劃表)
- 考慮虧損是否產生稅盾,或者是否直接被忽略
利息與循環引用
- 如果利息計算引用受現金流影響的餘額,可能會產生循環引用
- 使用期初餘額(而非平均值或期末餘額)來打破循環引用
- 模式:利息 → 現金流 → 償還 → 期末餘額(如果利息使用期末餘額,這將形成循環)
債務償還 / 現金清掃(Cash Sweeps)
- 當存在多個債務層級時,通常有一個優先順序
- 現金清掃應尊重優先 waterfall
- 餘額不能為負數 - 適當使用 MAX 或 MIN 函數
回報率計算(IRR/MOIC)
- 現金流必須具有正確的符號:投資 = 負值,收益 = 正值
- 如果使用 XIRR,需要對應的日期
- 如果使用 IRR,現金流應位於連續的期間
- MOIC = 總收益 / 總投資
敏感性分析表
- 使用奇數維度(5×5 或 7×7)——切勿使用 4×4 或 6×6。奇數維度可確保存在一個真正的中心單元格。
- 中心單元格 = 基準情形。 行和列軸的值應圍繞模型的實際假設對稱構建(例如,如果基準退出倍數 = 10.0x,則軸值為
[8.0x, 9.0x, 10.0x, 11.0x, 12.0x])。中心單元格的 IRR/MOIC 必須等於模型實際輸出的 IRR/MOIC——這是證明表格連接正確的依據。 - 高亮顯示中心單元格——使用中藍色填充(
#BDD7EE)+ 粗體字體,以便在視覺上錨定基準情形。 - Excel 的 DATA TABLE 函數可能無法與 openpyxl 配合使用——因此應編寫引用行/列標題的顯式公式
- 每個單元格應顯示不同的值——如果所有值相同,說明公式未正確變化
- 使用混合引用(例如,行輸入使用
$A5,列輸入使用B$4)
驗證清單 - 完成後運行
運行公式驗證
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/回報率錯誤 | 符號錯誤或範圍不完整 | 檢查現金流符號並確保公式涵蓋所有期間 |
| 敏感性表格顯示相同值 | 公式未隨輸入變化 | 檢查單元格引用 - 需要使用混合引用($A5, B$4) |
| 滾動預測不平 | 期初 ≠ 上期期末 | 驗證期間之間的鏈接 |
| 符號慣例不一致 | 加法變成減法,反之亦然 | 在整個模型中始終遵循模板的慣例 |
與用戶協作 — 分部分檢查點
- 如果模板結構不清楚,在繼續之前先詢問
- 如果用戶的需求與模板衝突,確認他們的偏好
- 在完成每個主要部分後,停止並與用戶驗證後再繼續:
- 完成資金來源與運用 (Sources & Uses) 後 → 展示平衡表,確認軋差項正確,在構建運營模型之前獲得確認
- 完成運營模型/預測後 → 展示預測損益表,確認增長率和利潤率看起來合理,在債務計劃表之前獲得確認
- 完成債務計劃表後 → 展示期初/期末餘額和利息,確認償付順序邏輯,在回報率計算之前獲得確認
- 完成回報率 (IRR/MOIC) 後 → 展示現金流序列和輸出結果,確認符號和範圍,在敏感性表格之前獲得確認
- 完成敏感性表格後 → 展示每個單元格的變化情況,確認基準情形落在預期位置
- 如果在驗證過程中發現錯誤,在進入下一部分之前修復它們
- 展示你的工作過程 - 在有幫助時解釋關鍵公式或假設
- 切勿在未在每個部分進行檢查的情況下提交完成的模型 — 從源頭捕獲錯誤的單元格引用比從錯誤的 IRR 反向追蹤要快得多
此技能通過用正確的公式、適當的格式和經過驗證的計算填充模板,生成投資銀行質量的 LBO 模型。該技能適應任何模板結構,同時確保財務準確性和專業呈現標準。
數據源 — 優先使用 MCP,備選 Web
下文許多地方提到“使用 S&P Kensho MCP / Daloopa MCP / FactSet MCP”。這些是原始 Cowork 插件上下文中的商業金融數據 MCP。在 Hermes 中:
- 如果你配置了任何結構化金融數據 MCP(Hermes 支持 MCP — 參見
native-mcp技能),優先將其用於時點可比公司分析、先例交易和 filings。 - 否則,回退到:
- 針對美國 filings,對 SEC EDGAR (
https://www.sec.gov/cgi-bin/browse-edgar) 使用web_search/web_extract - 公司投資者關係頁面,用於新聞稿和盈利演示文稿
- 使用
browser_navigate訪問交互式數據門戶 - 用戶提供的數據(當上下文中沒有時,明確詢問)
- 針對美國 filings,對 SEC EDGAR (
- 切勿捏造。如果無法獲取倍數、先例或 filing 編號,將該單元格標記為
[UNSOURCED]並向用戶指出。
歸屬
此技能改編自 Anthropic 的 Claude for Financial Services 插件套件 (Apache-2.0)。已移除 Office-JS / Cowork live-Excel 路徑;此版本通過 excel-author 技能的約定針對無頭 openpyxl。原始來源:https://github.com/anthropics/financial-services