Автор: Салимжан Бижанов.
Доброе время суток, уважаемые оценщики истинной стоимости!
Пост Механизатора «Мой подход к оценке опционов» (/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: Салимжан, я понимаю)
просто появился такой вопрос, как управлять позицией при сильных рывках рынка вот и спросил, т.к. самому интересно. буду следить за обновлениями на сайте и новой информацией) пишите, с удовольствием буду читать)
Салимжан Бижанов: спасибо, Ярослав!