关于 datapack-builder
datapack-builder 是一项将财务材料整理为标准化 Excel 数据包的技能,面向私募股权、投资银行和资产管理团队。它强调来源可追溯、公式驱动计算、数据校验,并按结构化工作簿组织投资审阅内容。
主要功能
- 01提取财务与运营数据
- 02为数据标注来源依据
- 03构建标准八工作表工作簿
- 04使用公式计算汇总数据
- 05核验资产负债表与现金流一致性
适用场景
- 01将 CIM 转为投资审阅工作簿
- 02标准化历史财务报表
- 03根据 SEC 文件准备财务数据包
- 04整理市场与运营指标以供投资审阅
MCP 相关
工作流可将 MCP 服务访问作为一种数据来源。最终交付物是供审阅的 Excel 数据包;输入未说明具体 MCP 服务或工具。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ w95/ awesome-claude-corporate-skills --skill datapack-builder安装后在 Claude Code 中输入/datapack-builder确认已加载。
详细介绍
财务数据包构建器
为私募股权、投资银行和资产管理构建专业、标准化的财务数据包。将来自 CIM、发行备忘录、SEC 文件、网络搜索或 MCP 服务访问的财务数据转换为精美的 Excel 工作簿,随时可供投资委员会审阅。
重要: 在整个工作流中,所有 Excel 文件的创建和操作都请使用 xlsx 技能。
关键成功因素
每个数据包都必须达到这些标准。任何一点不达标都会使交付成果不可用。
1. 数据准确性(对错误零容忍)
- 将每个数字追溯到源文档并注明页码
- 仅使用基于公式的计算(不使用硬编码值)
- 交叉核对小计和总计,确保内部一致性
- 验证资产负债表平衡:资产 = 负债 + 所有者权益
- 确认现金流量与资产负债表变动相吻合
2. 基本规则
规则 1:财务数据(衡量金额)→ 带 $ 的货币格式 触发项:Revenue、Sales、Income、EBITDA、Profit、Loss、Cost、Expense、Cash、Debt、Assets、Liabilities、Equity、Capex 格式:百万用 $#,##0.0,千用 $#,##0 负数:$(123.0) 而非 -$123
规则 2:运营数据(计数事物)→ 数字格式,不带 $ 触发项:Units、Stores、Locations、Employees、Customers、Square Feet、Properties、Headcount 格式:#,##0 并带千位分隔符 负数:(123),与表格其余部分保持一致
规则 3:百分比(比率和比例)→ 百分比格式 触发项:Margin、Growth、Rate、Percentage、Yield、Return、Utilization、Occupancy 格式:一位小数用 0.0% 显示:15.0% 而非 0.15
规则 4:年份 → 文本格式以防止插入逗号 格式:文本或自定义格式以防止出现 2,024 显示:2020、2021、2022、2023A、2024E
规则 5:当上下文混杂时,每个指标使用其各自合适的格式 示例:
Segment Analysis, 2022, 2023, 2024
Retail Revenue, $50.0, $55.0, $60.0
Stores, 100, 110, 120
Revenue per Store, $0.5, $0.5, $0.5
Revenue 和单店指标使用 $,Store count 使用数字格式。
规则 6:所有计算都使用公式 → 绝不要硬编码计算值 所有小计、总计、比率和派生指标都必须基于公式,而非硬编码值。这可确保准确性并支持动态更新。
3. 专业呈现标准
格式标准:
配色方案 - 两层:
第一层:字体颜色(强制,来自 xlsx 技能)
- 蓝色文字(RGB: 0,0,255):所有硬编码输入(历史数据、假设),而非普通文本
- 黑色文字(RGB: 0,0,0):所有公式和计算
- 绿色文字(RGB: 0,128,0):指向其他工作表的链接
第二层:填充颜色(可选,用于增强呈现效果)
- 填充颜色是可选的,仅在用户要求或用于增强呈现效果时才应用
- 如果用户要求颜色或专业格式,请使用此标准方案:
- 章节标题:深蓝色(RGB: 68,114,196)背景配白色文字
- 子标题/列标题:浅蓝色(RGB: 217,225,242)背景配黑色文字
- 输入单元格:浅绿色/米色(RGB: 226,239,218)背景配蓝色文字
- 计算单元格:白色背景配黑色文字
- 如果用户指定了自定义品牌颜色,可覆盖此方案
两层如何协同工作(如果使用填充颜色):
- 输入单元格:蓝色文字 + 浅绿色填充 = “用户输入的数据”
- 公式单元格:黑色文字 + 白色背景 = “计算得出的值”
- 工作表链接:绿色文字 + 白色背景 = “来自另一个标签页的引用”
字体颜色告诉你这是什么。填充颜色告诉你它在哪里(如果使用的话)。
重要: 来自 xlsx 技能的字体颜色是强制的。填充颜色是可选的 - 默认为白色/无填充,除非用户要求增强格式或颜色。
始终应用:
- 标题加粗,左对齐
- 数字右对齐
- 子项缩进 2 个空格
- 小计上方单下划线
- 最终总计下方双下划线
- 在行/列标题处冻结窗格
- 最少边框(仅在结构上需要时使用)
- 一致字体(通常为 Calibri 或 Arial 11pt)
绝不包含:
- 每个单元格都加边框
- 多种字体或字号
- 图表(除非特别要求)
- 过多的格式或装饰
结构一致性
除非明确另有指示,否则使用标准的 8 标签页结构:
- 执行摘要
- 历史财务数据(利润表)
- 资产负债表
- 现金流量表
- 运营指标
- 物业/分部表现(如适用)
- 市场分析
- 投资亮点
标签页 1:执行摘要
目的:为忙碌的高管提供一页纸概览
内容:
- 公司概览(用 2-3 句话说明商业模式)
- 关键投资亮点(3-5 个要点)
- 财务快照表(过去 3 年的收入、EBITDA、增长率 + 预测)
- 交易概览(如适用)
- 突出显示关键指标
格式:简洁、标题加粗、最少装饰、强调关键数字
标签页 2:历史财务数据(利润表)
目的:完整的损益历史
内容:
- 按分部/产品线划分的收入明细
- 销货成本 / 收入成本
- 毛利润和毛利率 %
- 详细运营费用(销售与营销、研发、管理费用)
- EBITDA 和调整后 EBITDA
- 线下项目(折旧与摊销、利息、税费)
- 净利润
格式:
- 年份作为列(文本格式:2020、2021、2022)
- 百万美元或千美元(在顶部清楚注明单位)
- 所有财务数据使用会计格式
- 小计上方单下划线,净利润下方双下划线
- 所有数字右对齐
标签页 3:资产负债表
目的:期末财务状况
内容:
- 流动资产(现金、应收账款、存货、预付费用、其他)
- 长期资产(固定资产、无形资产、商誉、其他)
- 流动负债(应付账款、应计费用、债务的当期部分、其他)
- 长期负债(长期债务、递延税款、其他)
- 股东权益(普通股、留存收益、其他)
格式:
- 验证公式:资产 = 负债 + 权益
- 日期标注一致
- 包含营运资金计算
- 主要小计上方单下划线,最终总计使用双下划线
选项卡 4:现金流量表
目的:现金生成与使用分析
内容:
- 经营活动现金流(优先采用间接法)
- 投资活动现金流(资本支出、收购、资产出售)
- 筹资活动现金流(债务发行/偿还、股权、股利)
- 现金净变动
- 期初和期末现金余额
格式:
- 尽可能链接至利润表和资产负债表
- 展示净利润与经营活动现金流的调节表
- 清楚标注现金用途(流出)与来源(流入)
选项卡 5:运营指标
目的:非财务 KPI 与运营数据
内容(视行业而定):
- 单位销量、客户数量、门店数量
- 生产率指标(人均收入、单店收入、单位收入)
- 产能利用率
- 市场份额
- 客户留存率/流失率
- 行业特定 KPI
关键格式说明: 运营指标上不使用美元符号。这些是数量,不是货币。
格式:
- 明确指定单位(客户、员工、门店、平方英尺等)
- 整数使用逗号分隔:1,250 而非 $1,250
- 比率使用百分比:95.0%
- 数字右对齐
选项卡 6:物业/分部业绩(如适用)
目的:按业务单元、物业或分部进行详细拆分
内容:
- 按分部的收入和盈利能力
- 按地点/产品的关键指标
- 分部特定 KPI
- 比较业绩分析
格式:收入/EBITDA 与财务选项卡保持一致,运营指标采用数字格式
选项卡 7:市场分析
目的:行业背景与竞争定位
内容:
- 市场规模与增长趋势
- 竞争格局概览
- 市场份额分析
- 行业基准与同业比较
- 监管环境(如相关)
格式:叙述性文字与表格混合,市场数据需注明来源
选项卡 8:投资亮点
目的:关键投资论点要点的叙述性总结
内容:
- 竞争优势的详细论述
- 增长机会与战略举措
- 风险因素与缓解策略
- 管理层评估与过往业绩
- 投资论点总结
格式:清晰的标题、项目符号、简洁的段落
分步工作流
阶段 1:文档处理与数据提取
步骤 1.1:分析源数据
- 访问源材料:上传的文档、公开文件的网络搜索或 MCP 服务数据
- 审阅数据结构并识别关键部分
- 定位财务报表(通常为 3-5 年历史数据)
- 识别管理层预测(如包含)
- 记录财年结束日期
- 立即标记任何数据质量问题
步骤 1.2:提取财务报表
- 定位历史利润表数据
- 提取资产负债表快照(年末或季末)
- 查找现金流量表
- 提取管理层预测(如可用)
- 记录所有页码引用以便追溯
步骤 1.3:提取运营指标
- 识别与行业相关的非财务 KPI
- 采集单位经济数据
- 提取客户/地点/产能数据
- 记录增长指标与趋势
步骤 1.4:提取市场与行业数据
- 竞争定位信息
- 市场规模与增长率
- 行业基准数据
- 同业比较信息
步骤 1.5:记录关键背景
- 交易结构与理由
- 管理团队背景
- 源材料中的投资亮点
- 风险因素与考量
- 任何数据缺口或不一致
阶段 2:数据归一化与标准化
步骤 2.1:归一化会计列报
- 确保所有年度的行项目名称一致
- 统一收入确认处理方式
- 识别并记录一次性费用
- 如有需要,创建“调整后 EBITDA”调节表
- 记录任何会计政策变更
步骤 2.2:应用格式检测逻辑 对于每个数据点,根据完整上下文确定格式:
- 读取工作表名称、表格标题、列标题和行标签
- 应用基本规则(见上文)
- 当不确定时,检查原始源文档
- 默认采用更简洁的格式(少即是多)
步骤 2.3:识别归一化调整 需要记录的常见调整:
- 重组费用(如果确实为非经常性,则加回)
- 股权激励薪酬(按行业标准加回)
- 收购相关成本(加回,并注明金额)
- 法律和解或诉讼成本(评估 recurrence risk)
- 资产出售或减值(从经营业绩中排除)
- 关联方调整(按市场费率归一化) 注意:来源引用格式因数据来源而异(文档使用页码,网络来源使用 URL,MCP 数据使用服务引用)
步骤 2.4:创建调整明细表 对于每一项归一化:
- 记录调整了什么以及为什么调整
- 引用来源(文档页码、URL 或数据来源引用)
- 按年度量化美元影响
- 评估 recurrence risk
- 展示从报告数字到调整后数字的计算过程
步骤 2.5:验证数据完整性
- 使用公式确认小计求和正确
- 验证资产负债表平衡
- 检查现金流量与资产负债表变动是否勾稽一致
- 跨工作表交叉核对数字的一致性
- 标记任何差异以供调查
阶段 3:构建 Excel 工作簿
关键:所有 Excel 文件操作均使用 xlsx skill。继续之前,请阅读 xlsx skill 文档。
步骤 3.1:创建标准化工作表结构 创建包含以下工作表的工作簿:
- Executive Summary
- Historical Financials
- Balance Sheet
- Cash Flow
- Operating Metrics
- Property Performance(如适用)
- Market Analysis
- Investment Highlights
步骤 3.2:以适当格式构建每个工作表 系统性地应用格式规则:
- 表头:加粗、左对齐、11pt 字体
- 财务数据:百万单位使用货币格式 $#,##0.0
- 运营数据:数字格式 #,##0(无 $)
- 百分比:0.0% 格式
- 年份:文本格式以防止插入逗号
- 负数:使用带括号的会计格式
- 下划线:小计上方单线,总计下方双线
步骤 3.3:插入用于计算的公式
- 所有小计和总计必须基于公式
- 在适当位置将资产负债表链接到利润表
- 将现金流量表链接到利润表和资产负债表
- 创建跨工作表引用以进行验证
- 避免硬编码任何计算值
<correct_patterns>
行引用跟踪 - 复制此模式
写入数据时存储行号,然后在公式中引用它们:
# ✅ CORRECT - Track row numbers as you write
revenue_row = row
write_data_row(ws, row, "Revenue", revenue_values)
row += 1
ebitda_row = row
write_data_row(ws, row, "EBITDA", ebitda_values)
row += 1
# Use stored row numbers in formulas
margin_row = row
for col in year_columns:
cell = ws.cell(row=margin_row, column=col)
cell.value = f"={get_column_letter(col)}{ebitda_row}/{get_column_letter(col)}{revenue_row}"
对于复杂模型,使用字典:
row_refs = {
'revenue': 5,
'cogs': 6,
'gross_profit': 7,
'ebitda': 12
}
# Later in formulas
margin_formula = f"=B{row_refs['ebitda']}/B{row_refs['revenue']}"
</correct_patterns>
<common_mistakes>
错误:硬编码行偏移
不要使用相对偏移 - 当表格结构变化时它们会失效:
# ❌ WRONG - Fragile offset-based references
formula = f"=B{row-15}/B{row-19}" # What is row-15? What is row-19?
# ❌ WRONG - Magic numbers
formula = f"=B{current_row-10}*C{current_row-20}"
为什么这会失败:
- 添加/删除行时会静默失效
- 无法通过阅读代码来验证正确性
- 在交付的 Excel 文件中造成调试噩梦
</common_mistakes>
步骤 3.4:应用专业呈现
- 在每个数据工作表上冻结首行和首列
- 设置适当的列宽(通常为 12-15 个字符)
- 所有数值数据右对齐
- 所有文本和表头左对齐
- 按会计准则添加单线/双线下划线
- 确保外观整洁、简洁
第 4 阶段:情景构建(如包含预测)
管理层情景: 呈现源材料中提供的公司预测:
- 提取所有管理层假设
- 记录增长率、利润率扩张、资本需求
- 标注关键驱动因素和敏感性
- 标记任何需要审慎看待的“曲棍球棒”式拐点
- 以“管理层情景”呈现并明确标注
基准情景(风险调整后): 基于公司特定风险因素对管理层预测应用保守调整:
- 应用收入增长折减,反映执行风险和历史预测准确性
- 基于行业基准和经营杠杆,适度调整利润率扩张假设
- 如增长依赖资本开支,则增加资本开支假设
- 如营运资本需求被低估,则予以补充
- 如适用,基于整合复杂度推迟协同效应实现
- 记录所有调整及其理由和支持性分析
下行情景(可选,但建议用于 LBO 分析): 基于行业周期性和公司脆弱性的压力测试情景:
- 模拟反映衰退风险或竞争压力的收入下滑
- 假设压力下的利润率压缩(销量去杠杆、定价压力)
- 测试契约合规性和流动性
- 评估下行保护
- 记录正在压力测试的关键风险
情景的文档要求: 创建假设明细表,展示:
- 各情景的关键假设(收入增长、利润率、资本开支 %)
- 每项调整的理由
- 关键变量的敏感性分析
- 历史预测准确性(如可用)
- 与行业基准的比较
第 5 阶段:质量控制和验证
步骤 5.1:数据准确性检查 验证:
- 每个数字都可追溯至来源(抽查样本,引用文档/URL/服务)
- 所有计算均基于公式(无硬编码值)
- 小计和总计在数学上正确
- 年份显示不带逗号(2024 而非 2,024)
- 无公式错误:#REF!、#VALUE!、#DIV/0!、#N/A
步骤 5.2:格式一致性检查 核实:
- 财务数据格式中带 $ 符号
- 运营数据不带 $ 符号
- 百分比显示为 %(15.0% 而非 0.15)
- 财务数据中的负数使用括号
- 表头加粗并左对齐
- 数字右对齐
- 年份为文本格式
步骤 5.3:结构和完整性检查 确认:
- 所有必需标签页均已提供并顺序正确
- 执行摘要简洁(可容纳于一页)
- 所有关键指标均已全面涵盖
- 从摘要到明细的逻辑流畅
- 每个标签页的粒度适当
- 无缺失数据或不完整部分
步骤 5.4:专业呈现检查 审查:
- 边框最少(仅用于结构)
- 缩进一致(子项缩进 2 个空格)
- 恰当的会计下划线(单线和双线)
- 整体外观整洁、专业
- 列宽适当(不过窄或过宽)
步骤 5.5:文档和假设检查 确保:
- 所有正常化调整均已记录并附理由
- 包含来源引用(文档页码、URL 或数据来源引用)
- 假设清晰陈述且合理
- 执行摘要准确且有影响力
- 文件名包含公司名称和日期
第 6 阶段:最终交付
步骤 6.1:创建执行摘要 撰写简洁、有影响力的摘要,包括:
- 公司概览:商业模式、产品/服务、地域(2-3 句话)
- 关键财务指标:收入、EBITDA、增长率(表格格式)
- 投资亮点:3-5 项关键优势或机会
- 值得注意的风险或考量(简要)
- 交易背景(如适用)
步骤 6.2:最终文件准备
- 以正确的命名保存工作簿:CompanyName_DataPack_YYYY-MM-DD.xlsx
正常化模式
EBITDA 的常见调整项
1. 重组费用
- 如果确实是非经常性费用(工厂关闭、一次性遣散费),则加回
- 如果公司每年都进行重组,则不要加回
- 记录其具体性质及非经常性的理由
- 示例:“2023 年重组:$3.0M 工厂关闭,已在源材料中记录,一次性事件”
2. 股权激励费用
- 行业标准:在私募股权分析中加回
- 将其视为非现金经营费用
- 在所有期间保持一致
- 如果异常高或包含一次性授予,则予以注明
3. 收购相关成本
- 加回交易费用、整合成本
- 按类型记录具体金额
- 不要加回持续发生的整合投资
- 为每项调整引用来源
4. 法律和解与诉讼
- 如果确实是孤立事件,则加回
- 评估复发风险(一次性和解 vs. 诉讼模式)
- 记录和解的性质
- 考虑这是否属于正常经营过程
5. 资产出售或减值
- 将资产出售的收益/损失从经营 EBITDA 中排除
- 如果确实是非经常性的,则移除减值费用
- 记录出售/减值的资产是什么以及原因
- 如果资产产生了经营收入,则调整收入
6. 关联方调整
- 将高于市场水平的关联方费用(租金、管理费)正常化
- 调整至市场费率,并提供支持性文档
- 移除通过企业列支的个人费用
- 记录市场费率比较
保守 vs 激进正常化
管理层情形:
- 包含管理层提出的所有调整
- 接受公司对“非经常性”的定义
- 更激进的 EBITDA 调整
- 用于理解管理层的观点
基准情形(推荐用于投资决策):
- 仅限明确非经常性的项目
- 对反复出现的“一次性”费用施加更严格的审查
- 排除推测性调整
- 更保守,可向投资委员会辩护
行业特定适配
科技/SaaS
需要捕获的关键指标:
- ARR(年度经常性收入)和 MRR
- 按队列划分的客户数量
- CAC(客户获取成本)和 LTV(生命周期价值)
- 流失率(总流失率和净流失率)
- 净收入留存率
- 40 法则(增长率 % + EBITDA 利润率 %)
- Magic number(销售效率)
格式说明:ARR 为货币($),客户数量为数字(无 $),比率为 %
制造/工业
需要捕获的关键指标:
- 产能和产能利用率 %
- 按产品线划分的产量
- 库存周转次数
- 按产品线划分的毛利率
- 订单积压
格式说明:单位、产能为数字(无 $),利用率为 %,收入/成本为货币
房地产/酒店
需要捕获的关键指标:
- 物业/房间/平方英尺
- 入住率 %
- ADR(平均每日房价)- 货币格式
- RevPAR(每间可售房收入)- 货币格式
- NOI(净营业收入)- 货币格式
- 资本化率 %
- FF&E 储备金
格式说明:房间/平方英尺为数字,入住率为 %,ADR/RevPAR 为货币
医疗/服务
需要捕获的关键指标:
- 地点/设施
- 服务提供者/员工
- 患者/就诊次数(业务量指标)
- 每次就诊收入 - 货币
- 付款方结构 %
- 同店增长 %
格式说明:地点/就诊次数为数字,每次就诊收入为货币,比率为 %
最终交付检查清单
交付数据包之前,请完成此检查清单:
结构:
- 所有必需的标签页均已提供,且顺序合乎逻辑
- 每个标签页都有清晰的表头和标题
- 执行摘要简洁(能容纳在一页内)
数据准确性:
- 所有数字均可追溯至来源(文档、URL 或数据服务)
- 关键数字的来源引用已记录(页码、URL 等)
- 所有计算均基于公式(无硬编码的计算值)
- 小计和总计已验证
- 资产负债表平衡(资产 = 负债 + 权益)
- 无 #REF!、#VALUE! 或 #DIV/0! 错误
格式 - 年份和数字:
- 年份显示正确:2020、2021、2022(无逗号)
- 财务数据带有 $ 符号:$50.0、$125.5
- 运营指标不带 $ 符号:100 家门店、250 名员工
- 百分比格式正确:15.0%、25.5%
- 负数用括号表示:$(15.0),而非 -$15.0
格式 - 专业标准:
- 表头加粗并左对齐
- 数字右对齐
- 缩进一致(子项缩进 2 个空格)
- 小计上方单下划线
- 最终总计下方双下划线
- 表头冻结窗格
- 全表字体一致
- 边框尽量少(仅用于结构)
- 整体外观整洁、专业
内容完整性:
- 财务报表完整(IS、BS、CF)
- 运营指标已全面采集
- 正常化调整已记录
- 假设已清楚说明
- 执行摘要清晰、简洁且有影响力
- 投资亮点有说服力
- 市场分析提供背景信息
文档:
- 所有正常化调整均已解释
- 每个数据单元格均从来源引用,并附有注释和链接(文档页码、URL 或数据来源引用)
- 假设已连同理由记录在案
- 已注明任何数据局限性
- 文件名遵循约定:CompanyName_DataPack_YYYY-MM-DD.xlsx
最终输出:
- 文件已保存到 outputs,并采用正确的命名约定
- 所有质量控制检查均已通过