Расчет волатильности акций в excel
Волатильность в Excel
Я получил вопрос от читателя, который спросил: «Можно ли рассчитать волатильность в Excel?» Ответ: Да, можно. Однако, есть несколько вещей, о которых вы должны знать. Не особо углубляясь в детали, скажу лишь, что есть много способов рассчитать волатильность. Два из наиболее распространенных способа касаются подразумеваемой и исторической (или статистической) волатильности. Историческая довольно-таки проста для расчета в Excel, и я покажу вам, как это делается в этом посте. Расчет подразумеваемой на порядок сложнее, и хотя вы можете посчитать её в Excel, но эту тему оставим на следующий раз, потому как она касается опционов, а это не простая тема.
Сегодня же давайте просто посмотрим, как рассчитать простую историческую волатильность в Excel.
1. Соберите свои исходные данные в виде цены закрытия для каждого периода времени. Хотелось бы взять данные с сайта Московской биржи, но им похоже жалко, поэтому данная информация доступна только платным подписчикам. Что ж, на других рынках немного иначе, поэтому там получить данные проще. Возьмём к примеру информацию по Лукойлу с сайта Yahoo Finance за январь: https://finance.yahoo.com/quote/LKOD.IL/history?period1=1514754000&period2=1518469200&interval=1d&filter=history&frequency=1d (справа ссылка Download Data, ниже синей кнопки Apply). Открыв скачанный файл, мы увидем примерно следующее:
Данные в столбцах open, high, low, adj close, volume нам не нужны. Можете или скрыть столбцы или удалить их вовсе. Т.е. нас интересуют только колонки Date и Close. Немного навёл красоты:
2. Данные собраны, теперь можно посчитать изменчивость каждого дня, т.е. насколько изменилась цена сегодня по отношению ко вчерашней. Делается это просто: данные дня делим на данные предыдущего, вычитаем единицу и преобразовываем формат ячейки в процентный. Аналогичную процедуру проделываем для всех строк. Т.е. вначале вот так:
А затем это проделываем для каждой строки и получается вот так:
И преобразуем в процентный вид:
3. Теперь нам нужно посчитать стандартное отклонение. Если коротко, то это то, насколько что-то отклоняется от нормы. Ну примерно, если говорить простыми словами. Т.е. насколько сегодняшняя цена отличается от цен за какой-то период. Чтобы это посчитать, нужно воспользоваться соответсвующей формулой в Excel, называющейся STDEV или СТАНДОТКЛОН.В.
Как мы видим, здесь расчёт выбран за 10 дней, но это сделано только для иллюстрации. Вы можете выбрать любой период.
4. В заключении, нам нужно сделать одно — узнать, какова же историческая волатильность, а она — это по сути ежегодное стандартное отклонение. Для этого, мы возьмём волатильность за неделю, т.е. 5 дней, когда открыты рынки. Затем, умножим на корень из 52. Почему 52? Потому что в году 52 торговые недели. Таким образом получается:
Финансы в Excel+VBA. Калькулятор опционов по модели Блэка-Шоулза
Основы опционов
Для начала кратко о сути и ценообразовании опционов. Опцион имеет четыре основных параметра:
1. Базовый актив
2. Тип опциона (Колл или Пут)
3. Цена страйка (цена исполнения опциона)
4. Дата экспирации (истечения) опциона
Для покупателя опциона он представляет собой право купить (опцион Колл) или продать (опцион Пут) базовый актив по цене страйка в день экспирации. Для продавца опциона он представляет собой обязанность продать (опцион Колл) или купить (опцион Пут) базовый актив по цене страйка в день экспирации. Фактически опцион представляет собой страховку от изменения цены базового актива (БА) от момента сделки до даты экспирации — в роли страховщика выступает продавец (в случае неблагоприятного изменения цены БА он выплачивает страховку покупателю опциона), а страхователем является покупатель опциона (он платит за страховку продавцу).
При этом зависимость цены опциона по каждой из этих трёх составляющих нелинейная. Ставшая общепринятой формула оценки опционов с учётом этих основных факторов была выведена Фишером Блэком и Майроном Шоулзом в 1973 году.
Формула Блэка-Шоулза имеет следующий вид (подробно можно посмотреть в Википедии):
Цена (европейского) опциона call:
Цена (европейского) опциона put:
Обозначения:
C(S,t) — текущая стоимость опциона call в момент t до истечения срока опциона (до экспирации);
S — текущая цена базового актива;
N(x) — вероятность того, что отклонение будет меньше в условиях стандартного нормального распределения (таким образом, и ограничивают область значений для функции стандартного нормального распределения);
K — цена исполнения опциона;
r — безрисковая процентная ставка;
T — t — время до истечения срока опциона;
— волатильность доходности (квадратный корень из дисперсии) базового актива.
Греки опционов
Для оценки чувствительности цены опциона к цене БА, волатильности, и времени до экспирации, применяют коэффициенты, называемые Греками (коэффициенты в основном обозначаются греческими буквами, за исключением «веги»).
Греки в модели Блэка-Шоулза вычисляются следующим образом:
1. Дельта () — скорость изменения цены опциона от изменения цены БА. Для опциона Колл дельта равна , для опциона Пут . Дельта показывает текущий наклон кривой стоимости опциона в зависимости от цены БА.
2. Гамма ( ) — скорость изменения цены опциона от изменения Дельты (или ускорение от изменения цены БА). Гамма равна .
3. Вега ( ) — описывает зависимость цены опциона от изменения волатильности БА: . Вега отражает число пунктов изменения стоимости опциона на каждый процентный пункт (1%) изменения волатильности.
4. Тета ( ) — описывает снижение цены опциона в зависимости от времени до экспирации. Для Колла — , для Пута — .
Вышеприведенные формулы верны для общего случая, в том числе для случая опционов на акции. Для расчёта опционов на фьючерсные контракты безрисковая ставка r не применяется. Т.к. на Московской бирже торгуются опционы на фьючерсы, далее в расчётах процентную ставку не учитываем.
Реализация модели в MS Excel
Итак, реализация модели Блэка-Шоулза в Excel+VBA.
Для удобства создадим функцию для каждой переменной из модели БШ. В каждой функции будут входные переменные:
S — цена БА
X — цена страйка
d — число дней до экспирации
y — число дней в году
v — волатильность
OptionType — тип опциона «Call» или «Put» (только для расчета цены и дельты)
Запись обычной функции в VBA выглядит следующим образом:
Function НазваниеФункции(входные переменные через запятую)
… вычисления…
НазваниеФункции =… вычисления…
End Function
T = d / y
d_1 = (Log(S / X) + (0.5 * (v ^ 2)) * T) / (v * (T ^ 0.5))
End Function
Function d_2(S, X, d, y, v)
T = d / y
d_2 = d_1(S, X, d, y, v) — v * (T ^ 0.5)
End Function
Function Nd_1(S, X, d, y, v)
Nd_1 = Application.NormSDist(d_1(S, X, d, y, v))
End Function
Function Nd_2(S, X, d, y, v)
Nd_2 = Application.NormSDist(d_2(S, X, d, y, v))
End Function
Function N_d_1(S, X, d, y, v)
N_d_1 = Application.NormSDist(-d_1(S, X, d, y, v))
End Function
Function N_d_2(S, X, d, y, v)
N_d_2 = Application.NormSDist(-d_2(S, X, d, y, v))
End Function
Function N1d_1(S, X, d, y, v)
T = d / y
N1d_1 = 1 / (2 * Application.Pi()) ^ 0.5 * (Exp(-0.5 * d_1(S, X, d, y, v) ^ 2))
End Function
Function OptionPrice(OptionType, S, X, d, y, v)
If OptionType = «Call» Then
OptionPrice = S * Nd_1(S, X, d, y, v) — X * Nd_2(S, X, d, y, v)
ElseIf OptionType = «Put» Then
OptionPrice = X * N_d_2(S, X, d, y, v) — S * N_d_1(S, X, d, y, v)
End If
End Function
Function Delta(OptionType, S, X, d, y, v)
If OptionType = «Call» Then
Delta = Application.NormSDist(d_1(S, X, d, y, v))
ElseIf OptionType = «Put» Then
Delta = Application.NormSDist(d_1(S, X, d, y, v)) — 1
End If
End Function
Function Gamma(S, X, d, y, v)
T = d / y
Gamma = N1d_1(S, X, d, y, v) / (S * (v * (T ^ 0.5)))
End Function
Function Vega(S, X, d, y, v)
T = d / y
Vega = (S * (T ^ 0.5) * N1d_1(S, X, d, y, v)) / 100
End Function
Готовый Excel-файл можно скачать по ссылке.
Теперь в екселевской ячейке можем вызывать любую прописанную нами функцию, например введя в ячейке =OptionPrice(«Put»;76870;90000;13;365;0.47) мы получим теоретическую цену опциона Пут при цене базового актива 76870, страйке 90000, предполагаемой волатильности 45% и за 13 дней до экспирации.
Некоторые моменты, которые хотелось бы отметить
Стоимость опциона в Excel
В начале 70-х годов прошлого века экономисты Фишер Блэк, Майрон Шоулз и Роберт Мертон вывели формулу ценообразования опционов Блэка–Шоулза, которая позволяет получить оценку европейских колл- и пут-опционов. За свою работу Шоулз и Мертон были удостоены Нобелевской премии по экономике в 1997 г. (Блэк умер до 1997 г., а Нобелевская премия не присуждается посмертно.) Их научный труд произвел революцию в области корпоративных финансов. В данной заметке приведены основные положения этой важной научной работы, а также показано, как рассчитать стоимость опциона с помощью Excel.[1]
Рис. 1. Стоимость колл-опциона
Скачать заметку в формате Word или pdf, примеры в формате Excel
Основные сведения об опционах
Колл-опцион дает владельцу опциона право купить акцию (или иной актив, например, валюту) по цене исполнения. Пут-опцион дает владельцу опциона право продать акцию по цене исполнения.
Американский опцион может быть исполнен не позднее даты, известной как дата исполнения (часто называемой датой истечения срока действия опциона). Европейский опцион может быть исполнен только в последний день срока его действия.
Давайте рассмотрим итоги сделки по приобретению шестимесячного европейского колл-опциона на акции IBM с ценой исполнения 110 долларов. Пусть P — это курс акции IBM через шесть месяцев. Выигрыш от колл-опциона на эти акции составит 0 долларов, если P 110. Если значение P больше 110 долларов, владелец может исполнить опцион, купив акцию за 110 долларов и немедленно продав ее на спотовом рынке за P долларов, и тем самым получить прибыль (P – 110) долларов. На рис. 1 представлен выигрыш по этому колл-опциону. Выигрыш можно записать как формулу в Excel =МАКС(0;Р-110). Если Р ≤ 110, говорят опцион не в деньгах.
Ситуация с пут-опциона противоположна (рис. 2). Выигрыш по пут-опциону составит 0 долларов, если P > 110, и (110 – Р) долларов, если P Анализ «что-если»), показанном на рис. 8, определите волатильность (значение в ячейке B10), при которой цена опциона (формула в С13) достигает значения 1,85 долларов.
Как показано на рис. 7, этот опцион подразумевает годовую волатильность для Cisco в размере 34%.
Рис. 8. Настройки в диалоговом окне Подбор параметра
На сайте http://www.ivolatility.com/ и http://www.ivolatility.ru/ предоставляются оценки волатильности любой акции, как исторические, так и подразумеваемые.
Реальные опционы
Ценообразование опционов может повлиять на повышение эффективности долгосрочных инвестиций компании или на процесс принятия финансовых решений. Использование ценообразования опционов для оценки фактических инвестиционных проектов называется реальными опционами. Идею реальных опционов приписывают Джуди Левен, в прошлом финансовому директору компании Merck. По существу, реальные опционы позволяют назначить явную цену для управленческой гибкости, которую часто упускают из вида при традиционном составлении плана долгосрочных инвестиций. Рассмотрим два примера.
Пусть вы являетесь владельцем нефтяной скважины. Сегодня наиболее правдоподобное предположение о стоимости нефти в скважине — 50 млн. долларов. Через 5 лет (оставаясь владельцем скважины) вам предстоит принять решение о разработке нефтяной скважины, которая обойдется вам в 70 млн. долларов. Бизнесмен с сомнительной репутацией готов купить скважину сегодня за 10 млн. долларов. Следует ли продать скважину?
Безусловно, цена нефти через 5 лет может вырасти. Даже если предположить, что цена нефти будет расти на 5% в год, через 5 лет нефть будет стоить 63,81 млн долларов. Традиционный план долгосрочного инвестирования предполагает, что нефть обесценится, поскольку стоимость ее разработки превышает стоимость нефти в скважине. Но не торопитесь — через 5 лет цена нефти в скважине будет другой, т.к. многие вещи (такие как мировая цена на нефть) могут измениться. Существует вероятность, что через 5 лет нефть будет стоить не меньше 70 млн. долларов. Если через 5 лет нефть будет стоить 80 млн. долларов, разработка скважины через пять лет принесет 10 млн долларов.
По сути, вы владеете пятилетним европейским колл-опционом на эту скважину, т.к. выигрыш от скважины через 5 лет такой же, как выигрыш по европейскому колл-опциону с курсом акции 50 млн. долларов, ценой исполнения 70 млн. долларов и сроком опциона 5 лет. Можно предположить, что годовая волатильность подобна волатильности акции типичной нефтяной компании (например, 30%). Если использовать безрисковую ставку 4,879%, можно определить, что цена такого колл- опциона составляет 11,47 млн. долларов (рис. 9). Из этого следует, что вы не должны продавать скважину за 10 млн. долларов.
Рис. 9. Реальный опцион на нефтяную скважину
Конечно, фактическая волатильность для этой нефтяной скважины неизвестна. По этой причине с помощью таблицы данных с одним входом определим, как цена опциона зависит от оценки волатильности (см. рис. 9). Как видно из таблицы, пока волатильность скважины составляет, по меньшей мере, 27%, опцион на нефтяную скважину стоит более 10 млн. долларов.
В качестве второго примера рассмотрим биотехнологическую компанию по производству лекарств, разрабатывающую лекарственный препарат для фармацевтической фирмы. В биотехнологической компании в настоящее время предполагают, что цена разрабатываемого препарата составляет 50 млн. долларов. Безусловно, цена лекарственного препарата со временем может понизиться. Для защиты от резкого падения цены биотехнологической компании требуется, чтобы препарат через 5 лет имел гарантированную цену 50 млн. долларов. Если страховая компания собирается подписать такое обязательство, какая справедливая цена должна быть назначена?
По существу, биотехнологическая компания запрашивает платеж в 1 млн. долларов для каждого миллиона долларов, на который цена препарата упадет ниже уровня 50 млн. долларов, через 5 лет. Это эквивалентно пятилетнему пут-опциону на цену лекарственного препарата. Предположим, что ставка по казначейскому векселю составляет 5% и годовая волатильность для акций сопоставимых компаний равна 40% (рис. 10), тогда цена этого опциона — 10,51 млн. долларов. Такой тип опциона часто называют опционом на отказ от проекта, но он эквивалентен пут-опциону. (На рис. 10 таблица данных показывает, как цена опциона отказа от проекта зависит от предполагаемой волатильности, составляющей 30–45% от цены лекарственного препарата.)
Рис. 10. Вычисление стоимости пут-опциона отказа от проекта
Волатильность. Расчет волатильности
Волатильность является важнейшим параметром в рынке, т.к. именно она дает подсказку о том какое по величине движение способен сделать актив за определенный заранее промежуток времени. Портфельные менеджеры используют данные волатильности для расчета рисков, а в интрадей трейдинге через нее рассчитывается и потенциал (расстояние до профита). Определение волатильности.
В этой статье я буду вести речь о волатильности применимо к внутридневной торговле, но принципы расчета будут схожи и для торговли внутри недели/месяца/квартала.
Волатильность — величина относительная. Мы говорим «волатильность выросла/упала по отношению к волатильности за предыдущий период (или средней волатильности за несколько периодов)».
Историческая ( historical ) волатильность
Из названия должно быть понятно, что для расчета будут использоваться исторические данные. А рассчитывать мы будем дневное стандартное отклонение (именно дневное нужно будет для интрадей торговли). Для этого понадобятся некоторые знания Excel. Необходимо будет выкачать данные цен закрытия торгового инструмента за последний месяц-два (если рассчитываете месячную волу, нужны будут данные за последний год), я для примера возьму валютную пару EUR/USD (так же можно взять акцию либо фьючерс, значения не имеет), данные по валюте можно качать от сюда (RU). или от сюда (EN) (источников достаточно много в сети), так же можно выкачать данные из МТ4 путем нажатия клавиши F2.
Данные в полученном файлике нужно группировать по столбцам, надеюсь с этим проблем не будет)) Не забудьте поменять точку на запятую в столбике «Close». После чего нужно высчитать собственно само стандартное отклонение.
Получаем дневную историческую волатильность в пунктах. Чтобы получить недельную/месячную/годовую нужно получившееся значение (в нашем случае 0,0108) умножить на корень из 5/21/252 соответственно. Для расчета годовой волатильности лучше выкачать данные не за один месяц, как это показано выше, а за целый год.
Подразумеваемая ( implied ) волатильность
Подразумеваемая волатильность отражает ожидания трейдеров касаемо исторической волатильноси в будущем. Понять ожидают ли трейдеры повышения волатильности актива или же ее понижения помогает активность опционов на этот актив. Благодаря формуле Блека-Шоулза (иногда можно встретить ее в немного измененном виде) появилась возможность рассчитать подразумеваемую волатильность через стоимость опционов.
Для того чтобы понимать как эта формула работает лучше конечно будет самостоятельно вбить ее в Excel, MathCad или другой математический софт (если нужен будет готовый файлик для Excel, пишите в скайп). Сейчас я пояснять этого не буду. Во всех терминалах для опционной торговли и во многих профессиональных терминалах подразумеваемая волатильность рассчитывается автоматически. Для примера я возьму показания implied volatility из терминала Thinkorswim (статья о терминале ТОС) из опционов на фьючерсы на Евро (волатильность валюты и фьючерсов на нее одинакова)
Для интрадей трейдинга нужны будут ближайшие по дате экспирации опционы. Замечу, что в данном случае терминал показывает значение годовой волатильности в процентах, нам же нужно получить дневную волу в перерасчете на пункты. Для этого мы делим значение годовой подразумеваемой волатильности (в данном случае 11,25%) на корень из 252 (если нужна квартальная/месячная/недельная вола, нужно делить на корень из 4/12/52 соответственно), получаем 0,7087% или 0,0071 пункт. Мы получили ожидаемую волатильность на каждый из следующих 4х дней. Следует помнить, что подразумеваемая (так же как и историческая) волатильность величина непостоянная и может существенно увеличиться за считанные минуты (падает вола много медленнее нежели растет).
Если вы наблюдаете в текущий день низкую историческую волу и одновременно увеличение подразумеваемой (случается не часто), то потенциал хода актива в этот день (иногда в следующий) будет больше нежели в обычные дни. В эти дни можно получать просто колоссальное соотношение риск/прибыль.
Важно. На момент входа в позицию историческая волатильность должна быть низкой и вырасти в процессе удержания этой позиции (не наоборот!). Только в таких случаях на дистанции возможно постоянно получать достойное соотношение риск/прибыль, и не думаю, что нужно пояснять важность этого соотношения для депозита трейдера. Именно по этому существует необходимость в навыках расчета волатильности…
Формула волатильности
Формула волатильности (Содержание)
Что такое формула волатильности?
Степень волатильности
Высокая волатильность ценной бумаги будет означать, что при незначительном изменении факторов, влияющих на цену акций, цена ценной бумаги может резко измениться в любом направлении в течение короткого периода времени.
Более низкая волатильность означает, что ценность ценной бумаги не реагирует резко и имеет тенденцию быть более устойчивой.
Расчет волатильности ценной бумаги
Формула для годовой волатильности приведена ниже,
Annualized Volatility = Standard Deviation * √252
Например: если ежедневное стандартное отклонение эталонного показателя S & P 500 в августе 2015 года составляет 1, 73%, его годовая волатильность будет:
Таким образом, годовая волатильность индекса S & P 500 в 2015 году составляет 27, 4% на основе дневной волатильности или дневных колебаний цен в августе 2015 года.
Как рассчитать стандартное отклонение
Пример формулы волатильности (с шаблоном Excel)
Давайте рассмотрим пример, чтобы лучше понять расчет волатильности.
Пример формулы волатильности
Рассмотрим расчет годовой волатильности данной акции, в этом случае ITC.
Ниже приведены данные ITC за период с января 2018 года по декабрь 2018 года. Рассчитайте дневную доходность, волатильность и годовую волатильность ITC.
Решение:
Мы рассчитываем дневную доходность (это столбец D здесь), используя цену закрытия, как указано в столбце C.
Таким образом, результат будет таким, как указано ниже.
Аналогичным образом рассчитайте ежедневную прибыль для всех оставшихся ячеек.
Дневная волатильность может быть рассчитана с использованием стандартного отклонения или формулы STDEV () в MS-Excel.
Выход будет таким, как указано ниже.
Годовая волатильность рассчитывается по формуле, приведенной ниже
Годовая волатильность = стандартное отклонение * √252
Вывод Годовой Волатильности будет таким, как показано ниже.
Актуальность и использование волатильности
Традиционно, это предположение или общее явление, что структуры риска, которые используют стандартное отклонение в качестве ключевого метода, предполагают, что доходность соответствует нормальному распределению в форме колокола. Это дает нам фиксированную структуру риска и доходности, и если доходности на кривой не показывают симметричное поведение, инвесторы склонны к панике.
Понимание волатильности и знание ее применений могут действовать как обоюдоострый меч. Когда акции с высокой волатильностью могут привести к огромным убыткам, иногда, когда вы попадаете в правильные рыночные сроки, вы можете даже получить большую прибыль. Это, несомненно, снижает ожидаемый долгосрочный доход, но, безусловно, дает вам равные шансы получить несколько больших выгод.
Калькулятор формулы волатильности
Вы можете использовать следующий калькулятор волатильности
Среднеквадратичное отклонение |
Годовая волатильность |
Годовая волатильность = | Стандартное отклонение х √252 |
знак равно | 0 х √252 = 0 |