Ценообразование опционов и базовый актив
Опционы — это, по сути, ставки на будущее изменение цены базового актива.
Например, опцион пут становится прибыльным, когда спотовая (рыночная) цена опускается ниже цены исполнения опциона. Держатель опциона может исполнить его, чтобы продать базовый актив по цене исполнения \(X\) и выкупить его обратно по спотовой цене \(S < X\), получив прибыль \(X - S\).
В этом упражнении вы оцените и визуализируете европейский опцион пут на акции IBM, снова применив формулу ценообразования Блэка–Шоулза, при изменении спотовой цены \(S\).
Цена исполнения X = 140, время до погашения T составляет 1/2 года, безрисковая процентная ставка равна 2%.
Аннуализированная волатильность IBM доступна в переменной sigma, а ось графика option_axis — для добавления вашего графика.
Исходный код функции black_scholes() можно найти здесь.
Это упражнение является частью курса
Количественное управление рисками на Python
Инструкции к упражнению
- Задайте
IBM_spotкак первые 100 наблюдений из временного ряда спотовых ценIBM. - Вычислите массив NumPy
option_values, перебирая элементыIBM_spotс помощью перечисления и применяя формулу ценообразованияblack_scholes(). - Постройте график
option_values, чтобы увидеть зависимость между изменениями спотовой цены (синим цветом) и изменениями стоимости опциона (красным цветом).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Select the first 100 observations of IBM data
IBM_spot = IBM[:____]
# Initialize the European put option values array
option_values = np.zeros(IBM_spot.size)
# Iterate through IBM's spot price and compute the option values
for i,S in enumerate(____.values):
option_values[i] = black_scholes(S = ____, X = 140, T = 0.5, r = 0.02,
sigma = ____, option_type = "put")
# Display the option values array
option_axis.plot(____, color = "red", label = "Put Option")
option_axis.legend(loc = "upper left")
plt.show()