Почему даты нельзя просто взять из календаря?
Контракт может сказать: обменять валюты через два рабочих дня.
Но он должен также определить, какие дни считаются рабочими и что делать, если расчётная дата попала на праздник.
Поэтому дата сделки — результат правил, а не только значение формата YYYY-MM-DD.
Contract Terms + Calendars + Date Convention → Contractual Date
Что такое Business Day?
Business Day — день, в который разрешено выполнить определённое договорное действие.
Таким действием может быть расчёт ставки, отправка платежа или валютный расчёт.
Один календарный день может быть рабочим для одной валюты и нерабочим для другой.
Важна не только страна, но и указанный в контракте Business Center или платёжная инфраструктура.
Как получается Near Value Date?
Сначала система определяет Trade Date и применимый Spot Lag. Затем она считает только дни, допустимые по календарям сделки.
На схеме показан условный FX Swap с лагом T+2. Понедельник не засчитывается, потому что один из двух валютных календарей закрыт.
Что такое Joint Calendar?
Для поставочного FX обычно важна возможность рассчитаться обеими валютами.
Joint Calendar отвечает на вопрос: открыты ли в этот день все необходимые валютные центры и системы?
Это не обязательно пересечение двух государственных календарей.
Правило может ссылаться на конкретные Business Centers, валютные расчётные системы или дополнительные центры из подтверждения сделки.
Календарь является частью контрактной логики. Нельзя молча заменить его «календарём страны по коду валюты».
Что делает Business Day Convention?
Сначала правила дают неадаптированную дату. Если она не является Business Day, Business Day Convention определяет направление переноса.
Following переносит дату на следующий Business Day. Preceding — на предыдущий.
Modified Following сначала идёт вперёд. Если перенос уводит дату в следующий календарный месяц, система выбирает предыдущий Business Day.
Как Tenor превращается в Far Value Date?
Tenor задаёт срок экономически. Календарь и конвенция определяют допустимую дату исполнения этого срока.
Tenor 1M означает один календарный месяц по правилам продукта, а не 30 дней. Поэтому 1M и 30D могут привести к разным датам.
Система сначала получает Near Date, затем применяет Tenor и Roll Rule.
Так появляется Unadjusted Far Date, которую ещё нужно проверить по календарям и перенести согласно конвенции.
Если базовая дата находится в конце месяца, может применяться End-of-Month Rule.
Например, для 31 января срок 1M должен корректно определить допустимую дату февраля.
Для коротких FX-сделок встречаются специальные tenors: ON — Overnight, TN — Tomorrow/Next, SN — Spot/Next. У них различаются Near Date, Far Date и точка отсчёта.
Broken Date означает нестандартную явно согласованную дату.
Она не выводится только из стандартного Tenor, но всё равно проверяется по договорным календарным правилам.
Как таймзона и Cut-off определяют Business Date?
Календарь отвечает, рабочий ли это день.
Time Zone и Cut-off определяют, наступил ли этот день и к какому операционному дню относится событие.
Один момент может быть вечером в New York, ночью в London и уже следующим календарным днём в Tokyo.
Поэтому UTC-дата события не обязана совпадать с Business Date сделки.
Business Date нельзя определять как date(timestamp UTC).
Сначала Instant переводится в Local Date Time нужной зоны, затем применяется локальный Cut-off конкретного процесса.
Например, сделка после торгового Cut-off может относиться к следующему Business Date, хотя её Event Time остаётся прежним.
Платёжный Cut-off, торговый Cut-off и граница риск-отчётности могут различаться.
Правило должно явно указывать процесс, временную зону и результат после наступления Cut-off.
Нужно хранить идентификатор зоны, например Europe/London, а не только UTC+1.
Offset меняется из-за переходов на летнее время и изменений правил часового пояса.
Чем отличаются Event Time, Processing Time и Business Date?
Event Time показывает, когда событие произошло. Processing Time — когда система получила или обработала сообщение.
Business Date показывает, к какому операционному дню относится событие.
Платёж мог исполниться в 23:58, а сообщение поступить в Risk Control System в 00:03.
Если использовать Processing Time вместо Event Time, риск исчезнет в неправильный момент.
Как календарь влияет на риск?
Если дата сдвинулась, сдвигается момент денежного потока.
Treasury должна обеспечить валюту в другой день, а Risk Control System — использовать новую дату в расчёте.
Liquidity Gapпопадает в другую временную корзину.Future Exposureмоделируется на изменившемся горизонте.- Дисконтирование использует другое время до Cash Flow.
Settlement Riskначинается вокруг фактической Value Date.- Cut-off и локальное время меняют длительность Settlement Window.
- EOD-снимок может отнести событие к другому Business Date.
Limit Usageможет измениться из-за переноса обязательства.
Ошибка на один день — не косметическая. Она может дать неверный платёж, неверную ликвидность и неверный риск одновременно.
Что должна хранить система?
Для воспроизводимости недостаточно сохранить итоговую дату.
Нужны исходная дата, Tenor, Roll Rule, календари, Business Centers, конвенция, версия календарных данных и результат.
Для события нужны Event Time, Processing Time и вычисленный Business Date.
Для локального правила — Zone ID, Cut-off и версия timezone data, использованная при расчёте.
Праздники иногда объявляются или меняются после заключения сделки.
Поэтому система должна различать календарь, известный на дату расчёта, и актуальный календарь исполнения.
Внеплановый выходной требует управляемого пересчёта. Нельзя незаметно изменить дату во всех сделках без версии, причины и Audit Trail.
Кто отвечает и как он думает?
Middle Office проверяет calendars, Business Centers и conventions в Trade Record.
Его вопрос: можно ли воспроизвести договорную дату из условий сделки?
Back Office и Operations следят за платёжными календарями, Zone ID, cut-offs и фактической возможностью расчёта.
Их вопрос: можно ли исполнить обязательство в рассчитанный день и время?
Treasury смотрит на дату как на будущий приток или отток валюты. Сдвиг даже на один день меняет Liquidity Forecast.
Риск-офицер контролирует, что Exposure, PFE, Liquidity Gap и Settlement Risk используют те же даты, Business Date и Event Time, что Trade Record и платёжный процесс.