Financial Derivatives Toolbox Portfolio Optimization

Financial Toolbox: розбір демонстраційних прикладів

Специфікація моделі волатильності (VolSpec)

Зважаючи на те, що модель HJM підтримує багатофакторні моделі волатильності (до трьох), а BDT (у тому числі ВК і HW) підтримує лише однофакторну модель, функції hjmvolspec і bdtvolspec вимагають різних вхідних даних і генерують різні вихідні дані. Наприклад, щоб побачити це, можна звернутися до розділу "Створення HJM моделі волатильності". Приклади, пов'язані з використанням моделі BDT, можна вивчити в розділі "Створення моделі BDT волатильності".

Створення моделі HJM волатильності

Функція hjmvolspec генерує структуру VolSpec, яка визначає процес σ(t,T), який використовується для створення дерева форвардних відсоткових ставок. У цьому контекстіTявляє собою початковий час для форвардної процентної ставки, аtє моментом часу спостереження. Процес моделювання волатильності може бути сконструйований з комбінації факторів, що визначаються послідовністю викликів функції, що створює ці фактори. Специфікація кожного фактора в модельному процесі волатильності починається з рядка визначення імені фактора, що передує параметрам специфікації.

Приклад специфікації волатильності з використанням моделі HJM

Розглянемо приклад, який використовує один фактор специфікації – постійний параметр сигму. Визначення постійного фактора специфікації потребує лише одного параметра, саме значення σ. У цьому прикладі значення дорівнює 0.10.

Виконаємо наступну команду MATLAB:

Результат виконання послідовності команди MATLAB наведено нижче:

derivatives

Поле NumFactors структуриVolSpec, звернення до якої здійснюється відповідно до правила VolSpec.NumFactors = 1, показує, що кількість факторів для генерації структури VolSpec дорівнює 1. Поле FactorModels показує, що в моделі використовується постійний фактор волатильності - 'Constant', а поле NumBranches показує кількість вихідних з вершини дерева гілки. Таким чином, кожна вершина дерева в моделі має дві гілки, які вказують відповідно зміну волатильності вгору (up, збільшення) та вниз (down, зменшення).

Тепер розглянемо двофакторний процес волатильності, у якому використовуються фактори пропорційний та експоненційний.

Виконаємо такі команди MATLAB:

Результат виконання послідовності команди MATLAB наведено нижче:

portfolio

Результат виконання послідовності команд MATLAB показує, що специфікації волатильності генеруються за допомогою 2 факторів. У цьому випадку дерево має 3 гілки, для кожної вершини дерева. Кожна гілка має такі можливості для наступних станів кожної вершини: up, unchanged, down відповідно рівні 0.25, 0.25, 0.5.

Створення моделі BDT волатильності

Функція bdtvolspec генерує структуру VolSpec, яка специфікує модельний процес волатильності. Функція вимагає три вхідні аргументи:

  • Дату оцінювання ValuationDate
  • Прибутковість волатильності на кінцеві дати VolDates
  • Прибутковість волатильності за значеннями VolCurve

Обов'язковий четвертий аргумент InterpMethod специфікує метод інтерполяції, який буде використовуватися.

Синтаксис, що використовується для виклику функції bdtvolspec:

  • ValuationDate - це перша дата спостереження в дереві
  • VolDates- Вектор дат, що є прибутковістю волатильності та відповідні дати
  • VolCurve - вектор значень прибутковості волатильності.
  • InterpMethod - метод інтерполяції, що використовується. За замовчуванням використовується лінійний метод – 'linear'.

Приклад специфікації волатильності з використанням моделі BDT

Використовуємо функцію bdtvolspec для створення специфікацій волатильності. Зважаючи на те, що точно не вказано метод інтерполяції, функція використовує за умовчанням лінійний метод інтерполяції - 'linear'.

Після виконання наведених вище команд MATLAB отримаємо наступний результат: