LBO-модель
Построение моделей выкупа с использованием заемных средств (LBO) в Excel — источники и использование, график погашения долга, денежный поток, мультипликатор на выходе, чувствительность IRR/MOIC. Работает в паре с excel-author. Используется для скрининга PE-сделок, оценки спонсорских сценариев или иллюстративного LBO в презентации.
Метаданные навыка
| Источник | Опционально — установка: vibeos 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
Ниже приведено полное определение навыка, которое VibeOS загружает при его активации. Агент видит эти инструкции, когда навык активен.
Окружение
Этот навык предполагает headless 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"), затем запускайте вспомогательный скрипт recalc.py навыка excel-author перед сдачей.
Основные принципы
- Каждое вычисление должно быть формулой 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"(два десятичных знака для точности). - Все числовые ячейки: Выравнивание по правому краю.
Сначала уточните требования
Перед заполнением любых формул:
- Изучите структуру шаблона — Определите все разделы, поймите временную шкалу (какие столбцы соответствуют каким периодам), отметьте существующие формулы.
- Спросите пользователя, если что-то неясно — Если структура шаблона, методы расчета или требования неоднозначны, спросите, прежде чем продолжить.
- Подтвердите ключевые допущения — Любые ключевые входные данные, предпочтения по расчетам или особые требования.
- ТОЛЬКО ПОСЛЕ понимания шаблона приступайте к заполнению формул.
ЭТАП АНАЛИЗА ШАБЛОНА — СДЕЛАЙТЕ ЭТО В ПЕРВУЮ ОЧЕРЕДЬ
Перед заполнением любых формул тщательно изучите шаблон:
-
Сопоставьте структуру — Определите, где находится каждый раздел и как они связаны друг с другом. Отметьте, какие разделы передают данные в другие.
-
Поймите временную шкалу — Какие столбцы представляют какие периоды? Есть ли столбец «Закрытие» или «Проформа»? Где начинается прогнозный период?
-
Определите ячейки ввода и формулы — Шаблоны часто используют цветовую кодировку, границы или затенение, чтобы указать, какие ячейки требуют ввода, а какие — формул. Соблюдайте эти соглашения.
-
Внимательно прочитайте существующие метки — Метки строк точно говорят, какое вычисление ожидается. Не предполагайте — прочитайте, что требует шаблон.
-
Проверьте наличие существующих формул — Некоторые шаблоны могут быть частично заполнены. Не перезаписывайте работающие формулы, если это специально не запрошено.
-
Отметьте специфические соглашения шаблона — Соглашения о знаках, структуры промежуточных итогов, организация разделов, наличие отдельных вкладок для разных компонентов и т.д.
ЗАПОЛНЕНИЕ ФОРМУЛ — ОБЩИЙ ПОДХОД
Для каждой ячейки, требующей формулы, следуйте этой иерархии:
Шаг 1: Проверьте шаблон
- Есть ли в ячейке уже формула? Если да, проверьте ее правильность и переходите дальше.
- Есть ли комментарий или примечание, указывающее ожидаемое вычисление?
- Очевидно ли вычисление из метки строки/столбца?
- Показывают ли соседние ячейки шаблон, которому вы должны следовать?
Шаг 2: Проверьте инструкции пользователя
- Указал ли пользователь конкретный метод расчета?
- Есть ли сформулированные допущения, влияющие на эту формулу?
- Есть ли какие-либо особые требования?
Шаг 3: Примените стандартную практику
- Если ни шаблон, ни пользователь не указали иное, используйте стандартные соглашения моделирования LBO.
- Документируйте любые сделанные вами допущения.
- Если вы действительно не уверены, спросите пользователя.
ОБЩИЕ ПРОБЛЕМНЫЕ ОБЛАСТИ
Следующие шаблоны расчетов часто вызывают проблемы в LBO-моделях. Уделите им особое внимание, когда столкнетесь с ними:
Балансировка разделов
- Когда два раздела должны быть равны (например, Источники = Использование), один элемент обычно является «заглушкой» (балансирующей величиной).
- Определите, какой элемент является заглушкой, и рассчитайте его как разницу.
Налоговые расчеты
- Налоговые формулы должны ссылаться только на соответствующую строку дохода и ставку налога.
- НЕ должны ссылаться на несвязанные разделы (например, графики погашения долга).
- Учитывайте, создают ли убытки налоговые щиты или просто игнорируются.
Проценты и циклические ссылки
- Расчеты процентов могут создавать циклические ссылки, если они ссылаются на остатки, на которые влияют денежные потоки.
- Используйте Начальный остаток (не средний или конечный), чтобы разорвать циклические ссылки.
- Шаблон: Проценты → Денежный поток → Погашение → Конечный остаток (если проценты используют конечный остаток, это зацикливается).
Погашение долга / Денежный поток (Cash Sweep)
- Когда существует несколько траншей долга, обычно существует приоритетный порядок.
- Денежный поток должен соблюдать приоритетный водопад.
- Остатки не могут быть отрицательными — используйте функции 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 может не работать с 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) |
| Сверки не сходятся | Начало ≠ конец предыдущего периода | Проверьте связи между периодами |
| Несогласованные соглашения о знаках | Сложения становятся вычитаниями или наоборот | Последовательно следуйте соглашению шаблона |
РАБОТА С ПОЛЬЗОВАТЕЛЕМ — КОНТРОЛЬНЫЕ ТОЧКИ ПО РАЗДЕЛАМ
- Если структура шаблона неясна, спросите, прежде чем продолжить.
- Если требования пользователя противоречат шаблону, подтвердите его предпочтение.
- После завершения каждого основного раздела ОСТАНОВИТЕСЬ и проверьте с пользователем, прежде чем продолжить:
- После Источников и Использования → покажите сбалансированную таблицу, подтвердите правильность заглушки, получите одобрение перед построением операционной модели.
- После Операционной модели / Прогнозов → покажите прогнозируемый P&L, подтвердите, что темпы роста и маржа выглядят правильно, получите одобрение перед графиком долга.
- После Графика долга → покажите начальные/конечные остатки и проценты, подтвердите логику водопада, получите одобрение перед доходностью.
- После Доходности (IRR/MOIC) → покажите ряд денежных потоков и результаты, подтвердите знаки и диапазоны, получите одобрение перед таблицами чувствительности.
- После Таблиц чувствительности → покажите, что каждая ячейка варьируется, подтвердите, что базовый сценарий попадает туда, куда ожидалось.
- Если во время проверки обнаружены ошибки, исправьте их, прежде чем переходить к следующему разделу.
- Показывайте свою работу — объясняйте ключевые формулы или допущения, когда это полезно.
- Никогда не представляйте завершенную модель без проверки на каждом разделе — быстрее поймать неверную ссылку на ячейку в источнике, чем проследить ее обратно от сломанного IRR.
Этот навык создает LBO-модели инвестиционно-банковского качества, заполняя шаблоны правильными формулами, надлежащим форматированием и проверенными расчетами. Навык адаптируется к любой структуре шаблона, обеспечивая при этом финансовую точность и профессиональные стандарты представления.
Источники данных — сначала MCP, затем веб-резерв
Во многих разделах ниже говорится «используйте S&P Kensho MCP / Daloopa MCP / FactSet MCP». Это коммерческие MCP финансовых данных из оригинального контекста плагина Cowork. В VibeOS:
- Если у вас настроен какой-либо структурированный MCP финансовых данных (VibeOS поддерживает MCP — см. навык
native-mcp), отдавайте ему предпочтение для сопоставимых компаний на текущий момент, прецедентных сделок и отчетности. - В противном случае используйте резервные варианты:
web_search/web_extractдля SEC EDGAR (https://www.sec.gov/cgi-bin/browse-edgar) для отчетности США.- Страницы IR компаний для пресс-релизов, презентаций по доходам.
browser_navigateдля интерактивных порталов данных.- Данные, предоставленные пользователем (явно спрашивайте, когда в контексте их нет).
- Никогда не выдумывайте. Если мультипликатор, прецедент или номер отчета не могут быть получены, пометьте ячейку как
[UNSOURCED]и сообщите об этом пользователю.
Атрибуция
Этот навык адаптирован из набора плагинов Anthropic's Claude for Financial Services (Apache-2.0). Пути Office-JS / Cowork live-Excel удалены; эта версия ориентирована на headless openpyxl через соглашения навыка excel-author. Оригинал: https://github.com/anthropics/financial-services