Эта страница переведена автоматически. Оригинал на английском языке является каноническим. Читать на английском
Перейти к основному содержимому

Оракул волатильности

Hypercall использует поверхность подразумеваемой волатильности для ценообразования опционов, расчёта греков, переоценки позиций по рынку (mark-to-market) и маржинальных проверок. Оракул волатильности преобразует рыночные данные по опционам в значения IV, доступные для запроса по базовому активу, страйку и экспирации.

Цель проста: использовать актуальную рыночную волатильность, когда она доступна, и отказывать в обслуживании (fail closed), а не выдумывать значения, когда необходимых данных нет.

Что делает оракул волатильности

Для каждого поддерживаемого базового актива Hypercall поддерживает поверхность волатильности:

  • Измерение страйков: IV меняется в зависимости от страйка опциона.
  • Измерение экспираций: IV меняется в зависимости от времени до экспирации.
  • Интерполяция: если точной точки по страйку и экспирации нет, Hypercall интерполирует по ближайшим валидным точкам.
  • Проверка свежести данных: для каждого провайдера действуют правила актуальности. Устаревшие данные не считаются актуальными.

IV хранится в виде десятичной дроби. Например, IV 80% представляется как 0.80.

Модель с учётом торговых сессий

Часы торгов некоторых рынков-источников волатильности могут отличаться от часов работы Hypercall. Когда рынок-источник открыт и данные корректны, Hypercall использует текущую поверхность источника.

Модель пересчитывает страйки источника в пространство страйков платформы, используя актуальные спотовые цены:

scale = platform_spot / source_spot
platform_strike = source_option_strike * scale

Оба спотовых значения должны быть положительными и актуальными. Если спот источника или спот платформы отсутствует, обновление актуальной поверхности завершается ошибкой, а не использует кешированный или статический коэффициент.

Закрытые сессии рынков-источников

Когда опционный рынок-источник закрыт или актуальная поверхность устарела, Hypercall не выдаёт старые данные источника за актуальные.

Вместо этого модель может использовать последнюю валидную поверхность источника и преобразовать её в текущее пространство монейности платформы:

base_strike = requested_platform_strike * base_spot / current_platform_spot
base_iv = last_good_source_surface(base_strike, expiry)

Это сохраняет липкую лог-монейность (sticky log-moneyness). Опцион, находящийся на 5% вне денег, сопоставляется с той точкой поверхности источника, которая также была на 5% вне денег на момент фиксации этой поверхности.

Затем модель добавляет риск событий во время закрытой сессии в виде общей дисперсии:

final_iv = sqrt((base_iv^2 * time_to_expiry + event_jump^2) / time_to_expiry)

Это делает краткосрочные опционы более чувствительными к риску гэпа во время закрытой сессии — и это сделано намеренно.

Условия отказа в обслуживании (fail-closed)

Оракул волатильности отказывает в обслуживании для запросов, увеличивающих риск, когда необходимые данные недоступны. Примеры:

  • для базового актива не настроен провайдер волатильности
  • актуальные данные источника устарели, а валидного последнего снимка нет
  • отсутствует или невалиден спот платформы
  • отсутствует или невалиден спот источника при построении актуальной поверхности
  • снимок источника старше настроенного окна закрытой сессии
  • преобразованный страйк или экспирацию невозможно интерполировать
  • неподдерживаемый базовый актив или отсутствующая точка на поверхности источника

Отказ в обслуживании означает, что система отклоняет расчёты, зависящие от недостающей IV, — например, новые ордера, увеличивающие риск и требующие маржи. Лучше отклонить ордер, чем считать маржу или переоценивать позицию по выдуманной волатильности.

Чего ожидать пользователям

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

Когда рынок-источник закрыт, затронутые рынки могут продолжать использовать преобразованную с учётом сессии поверхность, если последний валидный снимок и текущий спот платформы корректны.

Если модель не может проверить корректность входных данных, затронутые ордера могут отклоняться до появления свежих данных или валидной преобразованной поверхности.

См. также