Сумма становится осмысленной только при известных границах. Для риск-агрегата нужно определить, какие позиции включены, что измеряет каждая величина, в какой валюте и на какую дату она рассчитана. Положительные и отрицательные величины нельзя автоматически взаимозачесть только потому, что совпало имя контрагента или валюта.
Неттинг требует проверенной границы#
До агрегации согласуйте как минимум:
- метрику, валюту, знак, дату оценки и временной горизонт;
- юридическое лицо контрагента и область выбора операций;
- договорный netting set и применимые виды сделок;
- правила обеспечения, конвертации и оценки;
- полномочия, договорную документацию и дату, на которую подтверждена применимость.
Сначала показывайте валовые положительные и отрицательные компоненты. Итоговый net amount допустим только для явно заданного набора с проверенным основанием взаимозачёта и одинаковыми измерениями. Маркер или идентификатор основания в отчёте помогает трассировке, но сам по себе не доказывает юридическую исполнимость соглашения. Если граница не подтверждена, сохраняйте gross-суммы и приостанавливайте вывод о net exposure.
Данные должны быть полными и свежими#
Для каждой рыночной точки сохраняйте источник, фактор, единицу, дату и время наблюдения, цену или ставку, направление котировки и версию загрузки. Перед расчётом проверьте:
- Наличие всех требуемых факторов и наблюдений на общей временной шкале.
- Отсутствие дубликатов и соответствие единиц, валютной пары и направления котировки.
- Возраст наблюдения относительно даты оценки; старое значение нельзя молча считать текущим.
- Скачки относительно предыдущей точки по заранее заданным порогам, а также нулевые знаменатели и экстремумы.
- Ошибки загрузки, предупреждения, преобразования формата и отклонения по источнику.
- Сверку входных записей до и после фильтров, замен и преобразований.
Экстремальная цена не обязательно ошибочна, а гладкий ряд не доказывает полноту. Правило проверки должно создавать диагностическое событие, после которого владелец данных подтверждает источник или фиксирует обоснованное исключение. Для статистической модели отдельно измеряйте число недостающих точек и влияние замен на выборку.
Проверяйте сам расчёт независимо#
Минимальный набор проверок риск-модели:
- независимый вручную рассчитанный эталон на малом наборе;
- граничные случаи: ноль, отрицательная чувствительность, предел шока, отсутствие фактора, несовпадение валюты и единицы;
- метаморфные свойства: перестановка входных записей не меняет результат, разбиение и последующее объединение совместимой группы сохраняет сумму;
- отрицательные или mutation-проверки: намеренно убрать фактор, инвертировать знак, снять ограничение или сделать повторную запись; тесты должны обнаружить ошибку;
- повторный прогон с теми же входами и версией кода воспроизводит результат.
Не сравнивайте два результата, пока не сверили состав позиций, дату и версию рыночных данных, параметры модели, единицы, правила округления, валюту отчёта и границу агрегирования. Сумма портфеля может совпасть при разнонаправленных ошибках отдельных позиций, поэтому сверяйте разложение, а не только итог.
Контекст SAP и пределы доказательств#
В документации SAP для расчёта CVA/DVA описаны методы ожидаемой экспозиции и применение групп неттинга при отдельных методах расчёта. Эти системные правила не заменяют юридическую оценку netting agreement.
Страница Displaying Market Data описывает просмотр последней загруженной рыночной информации вместе со статистикой ошибок. Исторический datafeed запрашивает значения у провайдера; функция доступна, только если провайдер отдаёт исторические данные. При импорте могут выполняться проверки отклонения курса и соотношения с данными провайдера; несоответствие соотношения может блокировать импорт.
Документация datafeed описывает подачу текущих и исторических значений через разные интерфейсы, ежедневный пакетный запуск или непрерывную подачу, а также выбор между буфером и постоянной записью в таблицы market data. Сам список ошибок и проверок не подтверждает, что нужные правила активны в конкретной системе.
Четыре процитированные страницы SAP Help прочитаны и сохранены во внутренних снимках; точные выпуски в их текстах не отображаются. В проекте нет SAP-данных, соглашений о неттинге, провайдеров или результатов загрузки. Приведённые фрагменты документации не доказывают юридическую исполнимость, полноту реального ряда или включение проверок в системе.
В этом репозитории lab/risk_scenarios.py содержит синтетические проверки границ совместимости, явного основания netting set, пропусков, дубликатов, устаревших и экстремальных наблюдений. Golden-сценарии независимы от модели и содержат заданные ожидаемые значения. Эти проверки демонстрируют метод валидации, но не подтверждают SAP-расчёт, юридическую исполнимость неттинга или качество реальных рыночных рядов.
Статья частично покрывает RISK-12, RISK-13 и RISK-14. См. также контроль экспозиции контрагента и лимитов, вероятностные модели и метрики и свидетельства SAP и сравнение при переходе версий, а также общий подход к воспроизводимым проверкам без SAP runtime.