@nbbo2 y @Quantuple ya han respondido a la pregunta en sus comentarios, pero en caso de duda, siempre pienso que la codificación informática es muy útil porque se puede simplemente probar y ejecutar un montón de cálculos de una sola vez. Como los precios de las opciones y las griegas (suponiendo Black Scholes) son bien definido En el caso de la versión en inglés, es fácil de configurar y reproducir el gráfico del libro.
Utilizando Julia y escribiendo las fórmulas de la wikipedia en el código, quedaría así:
using Plots, Distributions, PlotThemes, DataFrames
theme(:juno)
#theme(:solarized)
Plots.scalefontsizes(1.3)
# define cdf and pdf
N(x) = cdf(Normal(0,1),x)
n(x) = pdf(Normal(0,1),x)
# generic put call pricer
function BSM(S,K,t,r,q,)
d1 = ( log(S/K) + (r - q + 1/2*^2)*t ) / (*sqrt(t))
d2 = d1 - *sqrt(t)
c = exp(-q*t)S*N(d1) - exp(-r*t)*K*N(d2)
theta = (-(S*exp(-q*t)*n(d1)*)/(2*sqrt(t)) + q*exp(-q*t)*S*N(d1) - r*exp(-r*t)*K*N(d2))/365
return c, theta
end
# define inputs
spot = 0.2:0.1:15 # underlying value
k = 5 # strike
r = 0.03 # interest rate: 3%
q = 0.09 # dividend = 9%
q2 = 0.12
t = 1 # time to expiry in years
= 0.3 # implied volatility
# compute option
opt_val = BSM.(spot,k,t,r,q,)
df = DataFrame(BSM.(spot,k,t,r,q,))
rename!(df, :2 => :theta)
theta = df[!,:theta]
df1 = DataFrame(BSM.(spot,k,t,r,q2,))
rename!(df1, :2 => :theta1)
theta1 = df1[!,:theta1]
x = [i < 0 ? i : 0 for i in [val[1] for val in opt_val].-[val for val in max.(spot.-k,0)]]
area = [val[1] for val in opt_val].-x
# plot option
plot(spot,[val[1] for val in opt_val],
label = "Theoretical Value with dividend = $(round(q*100, digits = 4))%",
title = "Natenberg replica",
size = (900,600),
xlabel = "Underlying Price",
ylabel = "Option Value",
linwidth = 2,
linecolor = :lightgreen)
# plot intrinsic value
plot!(spot,[val for val in max.(spot.-k,0)], label = "Intrinsic Value", legend=:topleft, linestyle = :dash)
## color the area where there is negative time value
plot!(spot, [val[1] for val in opt_val],
fillrange = area, fillalpha = 0.35, c = 3, label = "Negative Time Value with dividend = $(round(q*100,digits=4))%" )
# plot a second option with a different dividend
plot!(spot,[val[1] for val in BSM.(spot,k,t,r,q2,)], label = "Theoretical Value with dividend = $(round(q2*100,digits=4))%", title = "Natenberg replica")
# shade area where theta is positive
vspan!([spot[length(opt_val) - length(theta[theta .>= 0])], spot[length(spot)]],
linecolor = :grey, fillcolor = :blue, opacity = 0.05,
label ="Positive for dividend = $(round(q*100,digits=4))%")
vspan!([spot[length(opt_val) - length(theta1[theta1 .>= 0])], spot[length(spot)]],
linecolor = :grey, fillcolor = :yellow, opacity = 0.03,
label ="Positive for dividend = $(round(q2*100,digits=4))%")
No es necesario entender el código en su totalidad, pero hay que tener en cuenta algunas cosas:
- el modelo de Black Scholes y theta es la misma fórmula que se muestra en Wikipedia
- la zona sombreada en la curva en verde muestra dónde hay valor temporal negativo para la opción con el dividendo fijado en q (9% en este ejemplo)
- la curva azul es el resultado de la misma opción pero con los dividendos fijados en el 12%.
- las barras sombreadas muestran las zonas en las que la theta de Black Scholes es positiva (azul para q = 9% y amarillo para q2 = 12%) - observe que la barra azul se superpone a partes de la barra amarilla
- Se parece mucho al gráfico de Natenberg, y dado el impacto de r y q en la opción (y en el futuro), esta forma tiene un sentido intuitivo
- La propia Theta también está estrechamente relacionada con esa zona, como se aprecia en las barras de color que comienzan más o menos en la intersección del valor de la opción con el valor intrínseco
Añadiendo unas pocas líneas de código, similares a esta respuesta nos permite hacer este gráfico interactivo (la calidad no puede ser mucho mejor debido al límite de tamaño):
No es una prueba formal, pero en mi opinión, a menudo la intuición y los gráficos también son muy útiles. Por último, pero no menos importante, también se puede trazar theta en función del spot para ver que, efectivamente, se vuelve positiva para las opciones ITM (profundas) con dividendos positivos:
Una pregunta relacionada con las puestas es aquí .
Editar
Quería comentar con respecto a los comentarios de abajo pero se me hizo un poco largo.
No estoy 100% seguro de por qué la atención se centra en el efecto depresivo de los tipos de interés. Copiando la respuesta que he enlazado más arriba, hay 2 circunstancias que pueden hacer que el valor de una opción europea sea inferior al valor intrínseco
- las opciones de venta ITM profundas en presencia de tipos de interés positivos r>0
- llamadas ITM profundas en presencia de un rendimiento de dividendos positivo q>0
que también coincide con las 2 circunstancias en las que tiene sentido que una opción americana se ejerza anticipadamente.
En lo que @nbbo2 puede tener razón y las partes mixtas de una sección sobre pone en esta sección. T
Sin embargo, está claramente redactado en términos de descuento del VP del valor intrínseco de la opción de compra, lo que descarta que esté pensado para las opciones de venta. Este argumento es poco convincente porque, por definición, descarta cualquier valor temporal del dinero. Siempre valdrá al menos el PV de su valor intrínseco (más el valor temporal, que puede ser negativo).
Si no se mezclan los argumentos a favor de las puts y las calls, creo que puede ser porque el libro utiliza principalmente la intuición y los ejemplos sencillos frente al rigor matemático. También escribe en otra parte del libro que
El riesgo Theta es el lado opuesto del riesgo gamma ... gamma negativo siempre va de la mano de un theta positivo
Theta para las llamadas ITM profundas puede ser positiva como hemos visto. Sin embargo, Delta tenderá a 1, lo que significa que Gamma tenderá a 0. Por lo tanto, es perfectamente razonable tener Theta positiva, con una Gamma no negativa (0) como se muestra a continuación.
También escribe que delta es aproximadamente igual a la probabilidad de que la opción termine en el dinero, pero pasa a explicar que delta es sólo una aproximación de la probabilidad porque las consideraciones de interés y los dividendos pueden distorsionar esta interpretación. Aunque los tipos y los dividendos influyen en delta, como se muestra aquí , esta no es la razón por la que delta no es la verdadera probabilidad. Ver Entendiendo N(d1) y N(d2): Probabilidades ajustadas al riesgo en el modelo Black-Scholes de Lars Tyge Nielsen para una explicación detallada. Sólo si el tiempo de maduración y el vol son bajos, $d1 \approx d2$ y delta estará más cerca de la probabilidad ajustada al riesgo de que la opción termine en el dinero, que es $P(S_T > X) = N(d2)$ .
Aunque algunas partes no sean 100% correctas, probablemente siga siendo mucho más útil que las exposiciones "correctas" que requieren mucho más detalle en un libro como éste. Es un enfoque práctico con un punto de vista de sentido común. Basta con saber que theta puede ser positivo, que delta es aproximadamente igual a la probabilidad y que normalmente gamma y theta tienen signos opuestos. Cualquier cosa más complicada que los conceptos mencionados en los libros probablemente no le servirá de mucho en un parqué. Puedes echar un vistazo a las discusiones y respuestas de esta pregunta para ver que pensar en detalle puede ser bastante engorroso, mientras que la respuesta a la pregunta probablemente no añade ningún valor a un operador de opciones.
En palabras de Euan Sinclair en la P.XV del prefacio de su libro titulado Option Trading ,
Muchos operadores de éxito sólo han tenido un conocimiento básico del matemáticas detrás de BSM y ciertamente no tienen idea de las diferencias entre el cálculo y el cálculo estocástico.
Eso no quiere decir que Natenberg fuera "sólo" un trader de éxito, sino que el libro fue probablemente escrito de forma que construye las intuiciones necesarias para ser un trader de éxito, no un quant.