Прогноз денежного потока строится одним из трёх способов, и выбирать между ними надо не по красоте, а по горизонту, на котором нужны цифры. Модель 1 складывает уже возникшие обязательства по датам и честно работает две-три недели. Модель 2 добавляет к ней поправку на то, как каждый конкретный клиент платит на самом деле, и вытягивает горизонт до шести недель. Модель 3 строит статистику по сезонности и воронке продаж и даёт квартал, но требует 24–36 месяцев истории и постоянного ведения.
Общее правило одно: прогноз, у которого не названа погрешность, — не прогноз. Цифра «на конец месяца у нас будет 3 200 000 ₽» без указания допуска ничем не отличается от предчувствия. Она становится инструментом только в форме «3 200 000 ₽ плюс-минус 14 %, то есть от 2 752 000 ₽ до 3 648 000 ₽», потому что решения принимаются по нижней границе, а не по середине.
Ниже — три модели с тем, что каждая требует и что отдаёт, таблица погрешности по горизонтам, способ измерять качество прогноза, разбор того, что делает его бесполезным, сценарный подход и расчёт стоимости точности в рублях. Модельная компания — та же, на которой построен платёжный календарь: оптовик с выручкой 216 000 000 ₽ в год, то есть 18 000 000 ₽ в месяц, полная стоимость часа финансиста 1 392 ₽.
Три модели и что каждая требует
Модели не конкурируют — они наслаиваются. Вторая невозможна без первой, третья без второй. Поэтому вопрос звучит не «какую выбрать», а «до какого слоя доходить», и ответ на него зависит от того, на каком горизонте компания принимает решения о деньгах.
| Параметр | Модель 1: календарь обязательств | Модель 2: плюс поведение плательщика | Модель 3: статистическая |
|---|---|---|---|
| Что нужно на входе | Договоры, счета, налоговый и зарплатный календарь | Плюс история оплат каждого клиента за 12 месяцев | Плюс 24–36 месяцев истории и оцифрованная воронка продаж |
| Рабочий горизонт | 2–3 недели | 6 недель | 3 месяца |
| Кто ведёт | Финансист, 8 часов в месяц | Финансист, те же 8 часов | Финансист плюс аналитик, ещё 6 часов сверху |
| Цена | Входит в контур календаря, 470 000 ₽ | Надстройка 220 000 ₽ | Надстройка 450 000 ₽ |
| Когда оправдана | Всем, у кого от 100 платежей в месяц | От 60 регулярных плательщиков с историей | От 300 000 000 ₽ выручки или сезонности с амплитудой выше 40 % |
Три вертикальные колонки, растущие ступенями слева направо, с подписями «Модель 1: календарь обязательств», «Модель 2: плюс поведение плательщика», «Модель 3: статистическая». В каждой колонке четыре строки: горизонт («2–3 недели», «6 недель», «3 месяца»), погрешность на дальнем горизонте («22 %», «14 %», «12 %»), цена («470 000 ₽ контур», «+220 000 ₽», «+450 000 ₽»), ведение («8 ч/мес», «8 ч/мес», «плюс 6 ч/мес»). Колонки нарисованы вложенными друг в друга, как слои, а не рядом. Чертёжный стиль, подписи по-русски.
Модель 1: календарь обязательств
Самая простая и самая недооценённая. Берутся все известные будущие оттоки — счета к оплате, график по договорам, налоги, зарплата — и все ожидаемые притоки по датам из договоров, после чего складываются по дням. Никакой математики: суммирование и календарь. Именно так работает платёжный календарь, и в 80 % компаний до 300 человек этого достаточно.
Недооценённой её делает то, что она не выглядит моделью. В ней нет коэффициентов, обучения и красивых кривых — есть список обязательств и календарь. Именно поэтому её часто пропускают, начиная сразу с прогнозной аналитики, и получают ровно тот результат, который бывает всегда: модель третьего уровня, построенная на неполном реестре обязательств, ошибается сильнее простого суммирования. Порядок обратный: сначала полнота данных, потом сложность метода.
Модель рассыпается ровно там, где заканчиваются документы. На третьей неделе часть счетов от поставщиков ещё не выставлена, а поступления по договорам начинают расходиться с реальностью: контрагенты платят не в срок, а когда у них сформируется реестр. Погрешность растёт скачком — с 11 % на третьей неделе до 22 % на четвёртой–шестой, и дальше становится бессмысленной. Это не недостаток модели, а её граница: она честно показывает то, что уже оформлено, и не притворяется, что знает остальное.
Модель 2: поправка на платёжное поведение клиента
Вторая модель добавляет к календарю одну вещь: дату из договора заменяет дата из истории. Если клиент за последний год двенадцать раз оплатил счета в среднем на двенадцатый день после срока, то и следующий счёт с высокой вероятностью придёт на двенадцатый день. Никакого машинного обучения здесь не требуется — достаточно медианы и разброса по каждому плательщику.
| Клиент | Отсрочка по договору | Фактический средний срок | Поправка | Разброс | Применять поправку |
|---|---|---|---|---|---|
| А | 30 дней | 42 дня | +12 дней | 3 дня | Да, поправка надёжна |
| Б | 14 дней | 15 дней | +1 день | 2 дня | Да, но эффекта почти нет |
| В | 30 дней | 51 день | +21 день | 14 дней | Нет: непредсказуем, брать нижнюю границу |
| Г | 21 день | 19 дней | −2 дня | 4 дня | Да, платит раньше срока стабильно |
| Д | 30 дней | нет истории | — | — | Нет: срок по договору плюс медиана по сегменту |
Правило допуска простое и его стоит зафиксировать в регламенте: индивидуальная поправка применяется, если у клиента не меньше восьми оплат за 12 месяцев и стандартное отклонение срока не выше 5 дней. Всем остальным ставится срок по договору плюс медианная поправка по их сегменту. Клиент В из таблицы — характерный случай: средняя поправка у него +21 день, но разброс в 14 дней означает, что он с равной вероятностью заплатит и на 37-й, и на 65-й день. Ставить ему в прогноз 51-й день — значит внести в модель ложную уверенность там, где её нет; такой клиент планируется по нижней границе.
Побочный эффект второй модели важнее самой модели: она даёт готовую сегментацию для контроля дебиторки. Клиенты с устойчивой поправкой в 10–15 дней — это не проблема сбора, а параметр планирования, их не надо дожимать напоминаниями. Проблема сбора — это клиенты с большим разбросом, и именно на них имеет смысл направлять лестницу касаний.
Двухосевой график: ось X — горизонт с делениями «неделя 1», «неделя 2», «неделя 3», «недели 4–6», «месяц 2», «месяц 3»; ось Y — MAPE в процентах, 0–25. Три линии. Модель 1: 4, 6, 11, 22, дальше обрыв с подписью «не работает». Модель 2: 3, 4, 7, 14, 24, обрыв. Модель 3: 3, 4, 7, 12, 17, 21. Зона первых двух недель заштрихована с подписью «здесь модели неразличимы». Оси и подписи по-русски, чертёжный стиль.
Модель 3: сезонность и воронка продаж
Третья модель отвечает на другой вопрос. Первые две прогнозируют деньги по уже заключённым сделкам; третья добавляет деньги по сделкам, которых ещё нет. Собирается она из двух источников: сезонного профиля по истории 24–36 месяцев и конверсии воронки продаж в оплату по стадиям.
У модельной компании сезонный профиль выраженный: пик приходится на март-апрель и сентябрь-октябрь, провал — на январь и май, амплитуда между лучшим и худшим месяцем около 55 % от среднего. Воронка добавляет к этому вероятности: сделка на стадии «счёт выставлен» превращается в деньги в 86 % случаев, «согласование условий» — в 41 %, «переговоры» — в 17 %. Прогноз поступлений третьего месяца получается взвешенной суммой: сумма сделок каждой стадии умножается на её конверсию и раскладывается по датам с учётом среднего срока прохождения стадии.
Две оговорки, без которых модель обманывает. Первая: конверсии считаются по фактическим данным своей компании, а не берутся из отраслевых обзоров, и пересчитываются не реже раза в квартал. Вторая: 24 месяца истории — это минимум для сезонности, а не комфортный объём; при двух годах любой аномальный месяц заметно искажает профиль, поэтому первый год работы модели её показания стоит принимать со скидкой. Данные для неё обычно приходится собирать из нескольких систем — как это устроено, мы разбирали в материале про качество данных для аналитики.
Как измерять качество прогноза
Считается так: по каждому периоду берётся модуль разницы между фактом и планом, делится на факт, полученные проценты усредняются. Ключевое слово — модуль: без него положительные и отрицательные отклонения гасят друг друга, и прогноз выглядит точнее, чем есть. Для денежного потока MAPE считается по неделям, а не по месяцу, и отдельно по притоку и оттоку.
Вот почему это важно. Ниже — неудачный месяц модельной компании, в котором итог тем не менее сошёлся с планом до рубля. Формально прогноз идеален. Фактически на второй неделе остаток уходил в минус, и деньги пришлось занимать.
| Неделя | План чистого потока | Факт | Отклонение | Отклонение к факту |
|---|---|---|---|---|
| 1-я | +1 200 000 ₽ | +984 000 ₽ | −216 000 ₽ | 22 % |
| 2-я | −800 000 ₽ | −968 000 ₽ | −168 000 ₽ | 17,4 % |
| 3-я | +600 000 ₽ | +654 000 ₽ | +54 000 ₽ | 8,3 % |
| 4-я | +3 400 000 ₽ | +3 730 000 ₽ | +330 000 ₽ | 8,8 % |
| Итого за месяц | +4 400 000 ₽ | +4 400 000 ₽ | 0 ₽ | MAPE по неделям 14,1 % |
Отчёт «месяц сошёлся» здесь не просто бесполезен — он вреден, потому что закрывает разговор о том, что прогноз ошибся на 22 % и 17,4 % в двух неделях подряд и в одну и ту же сторону — при обычных для этой модели 3–4 % на этом горизонте. Месяц был плохой, и проверка по итогу этого не показала бы вовсе. Практический регламент: каждую неделю в фиксированный день факт сопоставляется с прогнозом, который был сделан две недели назад, отклонения выше 10 % разбираются поимённо, и раз в квартал по накопленным разборам уточняются поправки. Без этого цикла модель не улучшается, а деградирует: поведение клиентов меняется, а коэффициенты остаются прошлогодними.
Две вещи, и обе не про математику. Первая — неполные данные о будущих поступлениях: если часть отгрузок оформляется задним числом, а часть счетов выставляется вручную из почты менеджера, прогноз строится на выборке, а не на потоке, и никакая модель этого не исправит. Вторая — отсутствие дисциплины в реестре договоров: договоры без внесённых сроков оплаты, приложения с изменёнными условиями, которые никто не завёл в систему, устные договорённости об отсрочке. В обоих случаях сначала наводится порядок в источнике, и только потом обсуждается модель — иначе покупается дорогой генератор правдоподобных чисел.
Столбчатая диаграмма отклонений от нуля: ось X — четыре недели, ось Y — рубли от −400 000 до +400 000. Столбцы: −216 000, −168 000, +54 000, +330 000, подписанные процентами 22 %, 17,4 %, 8,3 %, 8,8 %. Под осью X горизонтальная линия итога с подписью «сумма отклонений 0 ₽, MAPE по неделям 14,1 %». Вторая неделя выделена штриховкой и вынесенной подписью «здесь остаток ушёл в минус». Оси и подписи по-русски, чертёжный стиль.
Сценарии: три версии и три решения
Прогноз в одной цифре провоцирует ложную уверенность, поэтому его строят в трёх версиях. Смысл сценариев не в том, чтобы угадать, какой сбудется, а в том, чтобы к каждому заранее привязать решение — тогда в момент, когда становится понятно, куда идёт месяц, действовать можно сразу.
- 1Пессимистичный: поступления −20 %, два крупнейших клиента платят на 20 дней позже
По нему планируются расходы. Если пессимистичный сценарий разрыв не показывает — можно ничего не делать. Если показывает — заранее согласовывается транш кредитной линии и готовится список отложимых платежей на нужную сумму. Стоимость подготовки нулевая, стоимость её отсутствия мы считали в материале про календарь: разрыв, увиденный за два дня, обходится в пять раз дороже.
- 2Базовый: поправки на платёжное поведение, конверсия воронки по факту прошлых 12 месяцев
По нему устанавливаются лимиты: сколько компания может потратить на закупку, какую сумму держать на счетах, какие платежи проводить без эскалации. Базовый сценарий — рабочая версия, и именно по нему считается MAPE, потому что сравнивать факт с пессимистичным вариантом бессмысленно.
- 3Оптимистичный: сезонный пик по верхней границе истории, конверсия выше средней на треть
Нужен для одного вопроса: что мы не успеем сделать, если продажи пойдут лучше плана. Хватит ли товара, склада, людей, оборотных средств на закупку. На оптимистичном сценарии не планируют расходы — это единственное жёсткое правило работы с ним, и нарушается оно чаще всех остальных.
Сценарии живут только при регламенте, и он занимает меньше времени, чем кажется. В модельной компании это восемь часов финансиста в месяц: полтора часа в неделю на обновление прогноза и сверку факта с тем, что предсказывалось две недели назад, плюс два часа в конце месяца на разбор отклонений и пересчёт поправок по клиентам, у которых поведение изменилось. Пересмотр конверсий воронки и сезонного профиля — это уже работа третьей модели, и она входит в те шесть часов в месяц, которые модель требует сверху. Если на ведение прогноза не выделено времени в чьём-то календаре, через два месяца он превращается в файл, который открывают перед советом директоров и закрывают после.
Простое правило, которое снимает большую часть споров о крупных тратах. Новое оборудование, аренда второго склада, наём отдела — всё это обсуждается на пессимистичной версии прогноза, а не на базовой. Если решение проходит по пессимистичному сценарию, его можно принимать сразу. Если проходит только по базовому — оно откладывается до момента, когда сценарий подтвердится фактом двух-трёх недель.
Сколько стоит точность
Точность прогноза конвертируется в деньги через неснижаемый остаток на счетах. Логика прямая: если прогноз на горизонте месяца может ошибиться на 22 %, компания вынуждена держать на счетах подушку размером примерно в 22 % месячного притока — иначе ошибка превратится в разрыв. Уменьшая погрешность, вы уменьшаете подушку и высвобождаете оборотные средства.
Это и есть главный вывод статьи, и он неудобен для тех, кто продаёт прогнозные модели. Третья модель не окупается точностью. Она окупается решениями, которые без неё принимаются вслепую: сезонной закупкой, сделанной на месяц раньше индексации, отказом от найма перед провальным кварталом, договорённостью с банком до того, как деньги понадобились. Одно такое решение перекрывает её цену целиком.
Три убывающих столбца, ось Y — рубли 0–4 000 000. Столбцы подписаны «Модель 1 — 3 960 000 ₽ (22 %)», «Модель 2 — 2 520 000 ₽ (14 %)», «Модель 3 — 2 160 000 ₽ (12 %)». Между первым и вторым столбцом фигурная скобка с подписью «−1 440 000 ₽, цена перехода 220 000 ₽, возврат 7,4 месяца». Между вторым и третьим — скобка с подписью «−360 000 ₽, цена перехода 450 000 ₽, на подушке не окупается». Чертёжный стиль, подписи по-русски.
Когда прогноз строить не надо
Есть четыре ситуации, в которых деньги на модель лучше не тратить, и все они проверяются за один вечер.
- Календаря ещё нет. Прогноз поверх неполного реестра обязательств даёт красивые цифры и неверные решения. Порядок работ всегда один: сначала платёжный календарь с горизонтом шесть недель, минимум квартал его ведения, и только потом надстройка.
- Плательщиков меньше двадцати. Поправка на платёжное поведение статистически не строится: у половины клиентов не наберётся восьми оплат за год. Такую компанию точнее прогнозирует финансист по памяти, чем любая модель, и это нормально.
- Остаток на счетах устойчиво выше месячного оттока. Прогноз нужен, чтобы не попасть в разрыв; если запаса хватает на 30–45 дней, ошибка в 22 % не превращается в проблему, и высвобождать нечего — подушка и так избыточна по другой причине.
- Данные о поступлениях собираются вручную. Если счета выставляются из почты менеджеров, а часть отгрузок оформляется задним числом, модель будет обучаться на искажённой истории. Сначала единый поток документов, потом прогноз.
И последнее — про горизонт, за которым прогноз денежного потока перестаёт быть прогнозом. На год вперёд его строить можно, но это уже бюджет: набор решений о том, сколько компания намерена потратить и заработать, а не оценка того, что произойдёт. Путать их опасно в обе стороны — бюджет, названный прогнозом, снимает ответственность за его исполнение, а прогноз, названный бюджетом, превращает погрешность модели в невыполненный план.
Прогноз без указанной погрешности — это не цифра, а интонация.
