Ache o valor de uma opção de compra européia
Ache o valor de uma opção de compra vanilla europeia se o preço do ativo subjacente e o preço de exercício são ambos $100, a taxa livre de risco é 6%, a volatilidade do ativo subjacente é de 20%, e o período de vencimento é de 1 ano, usando o modelo de Black–Scholes.
In[1]:=
![Click for copyable input](assets.pt-br/find-the-value-of-a-european-call-option/In_114.png)
TraditionalForm[BlackScholesModel = {-(r c[t, s]) + r s \!\(
\*SubscriptBox[\(\[PartialD]\), \({s}\)]\(c[t, s]\)\) +
1/2 s^2 \[Sigma]^2 \!\(
\*SubscriptBox[\(\[PartialD]\), \({s, 2}\)]\(c[t, s]\)\) + \!\(
\*SubscriptBox[\(\[PartialD]\), \({t}\)]\(c[t, s]\)\) == 0,
c[T, s] == Max[s - k, 0]}]
Out[1]//TraditionalForm=
![](assets.pt-br/find-the-value-of-a-european-call-option/O_54.png)
Resolva o problema de valor de contorno.
In[2]:=
![Click for copyable input](assets.pt-br/find-the-value-of-a-european-call-option/In_115.png)
(dsol = c[t, s] /.
DSolve[BlackScholesModel, c[t, s], {t, s}][[
1]]) // TraditionalForm
Out[2]//TraditionalForm=
![](assets.pt-br/find-the-value-of-a-european-call-option/O_55.png)
Calcule o valor da opção vanilla européia.
In[3]:=
![Click for copyable input](assets.pt-br/find-the-value-of-a-european-call-option/In_116.png)
dsol /. {t -> 0, s -> 100, k -> 100, \[Sigma] -> 0.2, T -> 1,
r -> 0.06}
Out[3]=
![](assets.pt-br/find-the-value-of-a-european-call-option/O_56.png)
Compare com o valor dado pela função FinancialDerivative.
In[4]:=
![Click for copyable input](assets.pt-br/find-the-value-of-a-european-call-option/In_117.png)
FinancialDerivative[{"European", "Call"}, {"StrikePrice" -> 100.00,
"Expiration" -> 1}, {"InterestRate" -> 0.06, "Volatility" -> 0.2 ,
"CurrentPrice" -> 100}]
Out[4]=
![](assets.pt-br/find-the-value-of-a-european-call-option/O_57.png)