Метод Монте-Карло – перебор случайных сценариев вместо сложной формулы. 10’000 симуляций дают прогноз денежного потока компании на 12 месяцев вперёд, а точность ответа зависит от входных данных. Основатель «Школы траблшутеров» Олег Брагинский и ученик Владислав Иванов изучают подход, названный в честь столицы казино, и проходят все три шага на примере.

В середине прошлого века польский математик Станислав Улам заболел и прервал работу над Манхэттенским проектом. Пасьянс скрасил вынужденный отдых и подкинул вопрос о вероятности выигрыша. Формула не давалась, поэтому Улам оценил шансы иначе – поделил число удачных партий на сыгранные.
Позже Улам поделился идеей с Джоном фон Нейманом и Николасом Метрополисом. Участники ядерной программы доработали модель, а с появлением первых компьютеров написали код для расчётов. В 1949 году Улам и Метрополис опубликовали работу «Метод Монте-Карло».
Основная идея метода – заменить сложные вычисления и многоступенчатые алгоритмы простыми статистическими экспериментами. Монте-Карло перебирает решения и исходы, меняя значения переменных. Чем больше итераций, тем выше точность.
Достоинство метода – универсальность: прогноз и оценка вероятностей даются одинаково легко. Монте-Карло применяют как физики, инженеры и астрономы, так и аналитики, экономисты и социологи. Подход несложно реализовать в среде программирования или MS Excel – ответ находится даже при неопределённости и разбросе данных.
Главный недостаток – объём вычислений: крупные массивы разнородных данных заметно замедляют работу. Интерпретация результатов требует статистической подготовки. Метод чувствителен ко входной информации – мусор на входе даёт мусор на выходе.
Первый шаг – постановка задачи: определить способ расчёта, подобрать формулы, собрать данные прошлых периодов. Истории может не быть: тогда годятся оценки экспертов, показатели конкурентов и открытые сведения органов статистики.
Второй шаг – программная модель. Загружаем исторические данные, при необходимости дополняем числами, сгенерированными в нужном диапазоне. Остаётся задать количество симуляций: начинать стоит с 1’000 повторений – с таким объёмом современный компьютер справляется легко.
Третий шаг – анализ результатов: без базовой статистики не обойтись. В ход идут среднее и средневзвешенное значения, медиана, стандартное отклонение, процентили, кривая нормального распределения и корреляция между потоками.
Рассмотрим на примере. Таблица хранит данные о денежном потоке (cash flow, CF) компании за 36 месяцев: месяц, операционный CF, инвестиционный CF, финансовый CF, итоговый CF и остаток на конец периода. Дисконтированием и инфляцией модель не усложнена.

Язык программирования Python разбирает таблицу методом Монте-Карло. Задача – составить прогноз денежного потока компании на 12 месяцев вперёд, опираясь на трёхлетнюю историю наблюдений.

Программа рассчитала для каждого типа денежного потока среднее, стандартное отклонение, минимум, максимум и процентили. 25-й процентиль операционного cash flow равен 270 тыс. руб.: 9 месяцев из 36 закрылись суммой не выше. 75-й процентиль – 565 тыс. руб., ниже планки 27 месяцев.

Расчёт корреляции связал потоки попарно. Рост операционного CF тянет вверх инвестиционный и вниз – финансовый. Финансовый и инвестиционный расходятся между собой: чем выше один, тем ниже другой.
10’000 симуляций дают таблицу денежного остатка на конец каждого месяца:

Денежный остаток продолжит расти, если компания сохранит темпы прошлых периодов. Для первого месяца прогноза разброс укладывается в 13’022–13’479 тыс. руб., дальше коридор строится так же.
Действующему бизнесу расчёт показывает рост компании и вероятность кассовых разрывов, подсказывает моменты для инвестиций и выплаты дивидендов, предупреждает о нехватке денег и потребности в заёмных средствах.
Монте-Карло считает не только деньги: оценивает длительность проекта, бюджет и скорость работ, взвешивает риски и потери, прогнозирует спрос на продукты и услуги, отбирает рекламные каналы.
Точные науки берут метод шире: проектируют системы и оценивают надёжность, моделируют атомы, ионы и прочие частицы, рисуют состояния физической среды, предсказывают положение небесных тел и распространение вирусов, изучают поведение жидкостей и газов.