Метод Монте-Карло в анализе рисков

Метод Монте-Карло — это способ оценить риск, многократно пересчитывая модель со случайными значениями неточных исходных данных. Вместо одного прогноза получается распределение результата: с какой вероятностью проект уложится в бюджет, какой резерв нужен с уверенностью 80 %, что сильнее всего влияет на итог. Это основной метод количественного анализа рисков в финансах, проектах и промышленности.

Любой план — бюджет, график строительства, финансовая модель — построен на оценках. Цены, объемы, сроки поставки, производительность известны лишь приблизительно. Обычный расчет берет по одному значению каждого показателя и дает один результат, ничего не говоря о его надежности. Метод Монте-Карло отвечает на вопрос, который на самом деле задает руководство: насколько вероятно, что мы уложимся?

Как работает метод

ЦенаОбъемЗатратыМодельформулы Excel,план проекта× 10 000Распределение результатаP50, P80, вероятность убытка1. Неопределенность2. Пересчеты3. Вероятности
Схема метода: распределения исходных данных, тысячи пересчетов модели, распределение результата.
  1. Модель. Берется обычная модель: формулы в Excel, календарный план проекта, модель денежных потоков. Ее логика не меняется.
  2. Неопределенность. Каждое неточное исходное значение заменяется распределением вероятностей: например, «стоимость оборудования от 380 до 470 млн руб., скорее всего 400». Отдельно описываются рисковые события: «с вероятностью 30 % поставка задержится на 15–45 дней».
  3. Итерации. Компьютер тысячи раз выбирает случайное значение каждой величины из ее распределения и пересчитывает модель. Каждый пересчет — один правдоподобный сценарий будущего.
  4. Результат. Тысячи значений результата складываются в распределение. По нему видно среднее, диапазон, P50, P80 и P90, вероятность превысить бюджет или получить убыток, а также факторы, сильнее всего влияющие на итог.

Пошаговый пример с формулами — в статье «Метод Монте-Карло в Excel».

Что метод показывает, а обычный расчет — нет

Самый наглядный пример — параллельные работы. Пусть каждая из трех работ по оценке занимает 10 дней (минимум 8, максимум 15), а следующий этап может начаться, только когда закончены все три. План говорит: 10 дней. Симуляция говорит другое.

0 %20 %40 %60 %80 %100 %Одна работаТри параллельные работыПлан 10 дней8101214Срок завершения, дней
Вероятность закончить к сроку: серая кривая — одна работа, оранжевая — три параллельные работы, которые нужно завершить все.
  • Одна работа укладывается в 10 дней с вероятностью 39 %: диапазон несимметричен, задержаться легче, чем ускориться.
  • Три параллельные работы завершаются к 10-му дню только в 6 % случаев. Чтобы этап закончился вовремя, нужно, чтобы не опоздала ни одна.
  • Среднее время этапа — 11,6 дня, а с уверенностью 80 % можно обещать 12,5 дня.

Это не особый случай, а обычная картина: в любом календарном плане есть точки слияния путей, поэтому реальные сроки почти всегда хуже плановых. Детерминированный расчет этого не видит в принципе, а метод Монте-Карло показывает сразу.

Где применяется

ЗадачаЧто дает метод Монте-КарлоПодробнее
Сроки и бюджет проектаВероятность уложиться в дату и смету, P80 срока, критические работы и рискиАнализ рисков проекта
Резерв на непредвиденные расходыОбоснованный размер резерва вместо «плюс 10 %»Резерв на риски
Инвестиционные решенияРаспределение NPV и IRR, вероятность убытка, сравнение вариантовNPV методом Монте-Карло
Денежный поток компанииCash Flow at Risk, потребность в ликвидностиCFaR
Запасы полезных ископаемыхОценки P90, P50, P10Оценка запасов
Совокупный риск компанииСумма всех рисков реестра в деньгах, сравнение с риск-аппетитомРиск-аппетит

В российских стандартах метод описан в ГОСТ Р 58771-2019 «Технологии оценки риска» (раздел Б.5.10 «Моделирование методом Монте-Карло»).

Сколько итераций нужно

Результат симуляции — сам по себе оценка: при другом наборе случайных чисел цифры будут немного другими. Случайная ошибка уменьшается пропорционально корню из числа итераций. В примере с тремя работами разброс оценки P80 между прогонами составлял около 0,19 дня при 100 итерациях, 0,07 дня при 1000 и 0,02 дня при 10 000.

12,012,212,412,612,813,0Прогон 1Прогон 2Прогон 310301003001 0003 00010 00030 000Число итераций (логарифмическая шкала)
Оценка P80 в трех независимых прогонах. После нескольких тысяч итераций кривые практически совпадают.

Практическое правило: для средних значений и P10–P90 достаточно нескольких тысяч итераций, для P99 и дальше — десятков и сотен тысяч. Важнее другое: никакое число итераций не исправит неверные исходные распределения.

Частые ошибки

  • Слишком узкие диапазоны. Эксперты систематически недооценивают неопределенность. Помогает порядок вопросов (сначала крайние значения, потом наиболее вероятное) и калибровка — см. экспертная оценка рисков.
  • Забытые зависимости. Если цены на материалы растут вместе, а модель считает их независимыми, диапазон результата получится заниженным. Подробно — в статье о корреляции рисков.
  • Треугольное распределение по умолчанию. Оно переоценивает вероятность крайних значений; для экспертных оценок обычно лучше PERT-распределение.
  • Двойной учет. Один и тот же риск попадает и в диапазон стоимости работы, и в отдельное рисковое событие.
  • Непонятный результат. Руководству нужен ответ на вопрос («резерв 111 млн руб. дает 80 % уверенности»), а не гистограмма со статистикой.

Чем считать

Небольшую модель можно просчитать формулами Excel или на Python (сравнение — в статье «Монте-Карло в Python или в Excel»). Для рабочих задач удобнее специализированные программы. Мы разрабатываем три:

  • МоделРиск — надстройка Excel для любых моделей в электронных таблицах: финансы, сметы, производство, страхование.
  • Тамара — анализ рисков сроков и стоимости проектов, импорт планов из Primavera P6 и MS Project.
  • Пеликан — система управления рисками, где риски всей компании оцениваются в деньгах и складываются в совокупный риск.

Обзор других программ — в статье «Программы для анализа рисков методом Монте-Карло».

Частые вопросы

Чем метод Монте-Карло отличается от сценарного анализа?

Сценарный анализ рассматривает несколько заранее выбранных вариантов (пессимистичный, базовый, оптимистичный) и не говорит, насколько вероятен каждый. Метод Монте-Карло перебирает тысячи сочетаний исходных данных с учетом их вероятностей и показывает вероятность любого результата.

Сколько итераций нужно?

Точность растет пропорционально корню из числа итераций: чтобы вдвое уменьшить случайную ошибку, нужно в четыре раза больше итераций. Для средних значений и P10–P90 обычно хватает 1000–10 000 итераций, для крайних процентилей нужно больше.

Нужны ли исторические данные для метода Монте-Карло?

Нет. Распределения можно задавать экспертными оценками (минимум, наиболее вероятное, максимум). Если данные есть, распределение лучше подобрать по ним. Чаще всего в одной модели сочетаются оба источника.

Почему метод называется «Монте-Карло»?

Метод разработали в 1940-х годах в Лос-Аламосе Станислав Улам и Джон фон Нейман. Название, по воспоминаниям участников, предложил их коллега Николас Метрополис — в честь казино Монте-Карло: метод, как рулетка, основан на случайности.

30дней

МоделРиск

МоделРиск — надстройка Excel для анализа рисков методом Монте-Карло. Пробная версия на 30 дней без ограничений.

Скачать МоделРиск бесплатно →

Тимур Купеев

Директор ООО «Стратегия Риска»

Руководит разработкой и внедрением МоделРиск, Тамары и Пеликана и проектами по количественному анализу рисков в промышленных, энергетических и финансовых компаниях.