в Опционы

Оценка стоимости опционов методом Монте-Карло.

Автор: Салимжан Бижанов.

Доброе время суток, уважаемые оценщики истинной стоимости!

Пост Механизатора «Мой подход к оценке опционов» (/post/moy-podhod-k-otsenke-optsionov-626) сподвигнул меня высказать своё скромное мнение на данную тему.

Скорее всего, изложенное мною в данном посте, в академической среде давно уже опубликовано в том или ином виде. Но я к этим выводам пришел сам, поэтому ссылок на научные публикации не даю.

Существует большое количество моделей оценки стоимости опционов, самая известная модель Блэка-Шоулза, за которую авторы получили Нобелевскую премию.

Многие уже писали о недостатках модели Блэка-Шоулза – самая главная проблема – недооценка «толстых» хвостов распределений и всего вытекающего из этого.

Данная модель (или её модификации) встроены в терминалы по торговле опционами (в основном для оценки подразумеваемой волатильности), но мало кто пытается понять логический смысл модели и, тем более, как ученые получили её – потому что для обычного человека без физико-математического образования это довольно сложно.

Давайте абстрагируемся от сложных математических моделей и попробуем просто логически понять/осмыслить, что такое опцион и как мы можем оценить его стоимость?

Опцион – как пишет нам википедия, это — договор, по которому потенциальный покупатель или потенциальный продавец актива (товара, ценной бумаги) получает право, но не обязательство, совершить покупку или продажу данного актива по заранее оговорённой цене в определённый договором момент в будущем (это опцион европейского типа) или на протяжении определённого отрезка времени (американского типа).

Рассматриваем опционы европейского типа, т.к. они в основном и распространены в мире.

Т.е. опцион – это страховка. Для этого, по сути, рынок деривативов и появился – страховать/хеджировать риски. А как определяется стоимость страховки?

Фундаментальный метод оценки стоимости страхования в актуарных расчетах это:

Минимальная стоимость страховки = Вероятность наступления страхового случая * Размер ущерба.

Все остальные методы в актуарных расчетах это усложнение данного фундаментального принципа.

То же самое применимо к оценке стоимости опциона!

Нам теперь остается понять:

* как оценивать Вероятность наступления страхового случая? По отношению к опционам call: как оценивать вероятность того, что к моменту экспирации цена базового актива будет выше страйка опциона?

* как оценивать Размер ущерба для продавца страховки? Т.е., если страховой случай наступит, на сколько в среднем цена базового актива будет выше страйка опциона?

Можно по-разному пытаться оценить вышеописанное, расскажу, как это делал я.

В 2010 г. чисто теоретически заинтересовался опционами. Тогда же написал свой алгоритм оценки стоимости опционов (небольшая программа, которую сейчас достал из архивов), но до торговли опционами так и не дошёл.

Суть в следующем:

1. сначала проводил z-нормирование приращений цены базового актива (из исходного ряда вычитается мат. ожидание и делится на стандартное отклонение). В статистических науках это делается, чтобы получить ряд распределения N(0,1), т.е. нормально распределенный ряд с мат. ожиданием 0 и стандартным отклонением 1. Но я нормировал на локальное среднее и стандартное отклонение, потому что понимал, что, как говорил А.Н.Ширяев, «волатильность сама волатильна».

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

2. далее использовал метод имитационного моделирования Монте-Карло для генерации возможных сценариев.

3. но!, для метода Монте-Карло необходимо оценивать закон распределение ряда. Тут много вариантов:

* брать распределения, которые предлагают ученые. Например, Мандельброт, по-моему, в своей книге предлагал распределение Леви.

* можно интерполировать распределение полиномом n-ой степени.

4. я поступил проще: если базовый актив торгуется довольно долго, т.е. выборка наблюдений очень большая, то можно вообще отказаться от непрерывных законов распределений и смотреть на ряд как на дискретную случайную величину. Это делается, чтобы не проводить никакую аппроксимацию распределений (что приводит к погрешности), а использовать реальные данные.

5. далее проводилась генерация N сценариев методом Монте-Карло, в которых осуществлялось обратное преобразование z-нормированного ряда. Для обратного преобразования необходимо использовать локальную прогнозную волатильность (стандартное отклонение).

6. какая она будет эта будущая волатильность? Никто этого не знает. Тогда в программе я использовал в качестве будущей волатильности – текущую волатильность.

7. в итоге сгенерировав N сценариев (например, 10 000) по ним уже происходила оценка вероятности наступления страхового случая и размер ущерба. А далее оценивалась стоимость страховки, то бишь опциона.

Вот такая схема была тогда написана в программе. Сейчас я её немного изменю, потому что понял, что сейчас меня не так интересует оценка стоимости, сколько заинтересовала тема опционного арбитража, соотношения стоимостей опционов на разных страйках. Интересно исследовать эту тему, есть ли в ней что.

Опять же эту идею почерпнул у Александра, за что ему спасибо!

Благодарю за внимание!

Комментарии:

mehanizator: пожалуйста 🙂 а можно подробнее про “обратное преобразование z-нормированного ряда”?

Салимжан Бижанов: z-нормированный ряд: ((xt/xt-1)-srednee)/sigma.
где srednee и sigma – это локальные значения, то есть за последние n дней. да забыл написать, что главный таймфрейм День.

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

генерируется N сценариев. но чтобы было понятно объясню на 1 сценарии: у нас T дней до экспирации, то есть мы должны сгенерировать T значений z-нормированный ряда, восстановить его в нормальный ряд и затем они все T восстановленные значения перемножаются друг на друга. Так мы получили 1 сценарий, где может быть рынок через T дней, исходя из нашего распределения и прогнозной волатильности.

если непонятно пишу, скажите.

Салимжан Бижанов: srednee – это среднее ряда xt/xt-1 за n последних дней.
то же самое про sigma.

mehanizator: понятно, спасибо.

mehanizator: я сразу собираю T-дневные изменения из истории, не перемножая T однодневных.

Салимжан Бижанов: да я понял это из описания вашего подхода. надо будет попробовать и сравнить как это влияет на результат.

Yaroslav: всем привет,
“сколько заинтересовала тема опционного арбитража, соотношения стоимостей опционов на разных страйках” – это по типу ratio spread ?
но тогда получается что на разных страйках куплено и продано разное количество опционов. но что тогда предлагаете делать с позицией при движении цены, особенно сильном движении, например обвале рынка?, чтобы не фиксировать убыток…

Салимжан Бижанов: Yaroslav, я не сказал, что изучил эту тему, лишь, что она меня заинтересовала. Теперь необходимо изучать, проверять идеи.

Yaroslav: Салимжан, я понимаю)
просто появился такой вопрос, как управлять позицией при сильных рывках рынка вот и спросил, т.к. самому интересно. буду следить за обновлениями на сайте и новой информацией) пишите, с удовольствием буду читать)

Салимжан Бижанов: спасибо, Ярослав!