Precificação de opções Black-Scholes
As opções são o derivativo mais usado no mundo para ajudar a gerenciar o risco do preço dos ativos. Neste exercício, você definirá o preço de uma opção de compra europeia sobre as ações da IBM usando a fórmula de precificação de opções Black-Scholes. Os dados da IBM_returns
foram carregados em seu espaço de trabalho.
Primeiro, você calculará a volatilidade sigma
de IBM_returns
, como o desvio padrão anualizado.
Em seguida, você utilizará a função black_scholes()
, criada para este e os próximos exercícios, para precificar opções para dois níveis diferentes de volatilidade: sigma
e duas vezes sigma
.
O preço de exercício K
, ou seja, o preço pelo qual um investidor tem o direito (mas não a obrigação) de comprar IBM, é 80. A taxa de juros sem risco r
é de 2% e o preço à vista de mercado S
é de 90.
Você pode encontrar o código-fonte da função black_scholes()
aqui.
Este exercício faz parte do curso
Gerenciamento quantitativo de riscos em Python
Instruções de exercício
- Calcule a volatilidade de
IBM_returns
como o desvio padrão anualizadosigma
(você calculou a volatilidade anualizada no Capítulo 1). - Calcule o preço da opção de compra europeia Black-Scholes
value_s
usando a funçãoblack_scholes()
fornecida, quando a volatilidade forsigma
. - Em seguida, encontre o preço da opção Black-Scholes
value_2s
quando a volatilidade for 2 *sigma
. - Exiba
value_s
evalue_2s
para examinar como o preço da opção muda com o aumento da volatilidade.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Compute the volatility as the annualized standard deviation of IBM returns
sigma = np.sqrt(____) * IBM_returns.____
# Compute the Black-Scholes option price for this volatility
value_s = black_scholes(S = 90, X = 80, T = 0.5, r = 0.02,
sigma = ____, option_type = "call")
# Compute the Black-Scholes option price for twice the volatility
value_2s = ____(S = 90, X = 80, T = 0.5, r = 0.02,
sigma = ____, option_type = "call")
# Display and compare both values
print("Option value for sigma: ", ____, "\n",
"Option value for 2 * sigma: ", ____)