Valoracion de Opciones Europeas_ Metodo de Black-Scholes
Valoracion de Opciones Europeas_ Metodo de Black-Scholes
Curso 2022/2023
13 de julio de 2023
Resumen
Abstract
The Black-Scholes model is a mathematical method for evaluating European
financial options. The model is based on several factors that affect option prices,
such as the price of the underlying asset, volatility, the risk-free interest rate and
the time remaining until option expiration.
The Black-Scholes formula uses these factors to calculate the theoretical price of a
European option at any point in time until expiration. The model is considered a
valuable option pricing tool as it has proven to be an accurate and useful approach
in global financial markets.
It is worth to point that the Black-Scholes model is based on a number of
assumptions, including market efficiency and the absence of transaction costs,
which means that its use in the real world may have limitations.
Overall, the Black-Scholes model is a useful tool for investors and financial
professionals who want to evaluate financial opportunities and manage portfolio
risk. However, it is important to understand its assumptions and limitations before
using it in practice.
1
Objetivos del trabajo
En cuanto a los objetivos, este trabajo sobre el método Black-Scholes para la
valoración de opciones europeas tiene varios, entre ellos:
2
Índice
1 Opciones 11
1.1 Definición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Características y notación . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Tipos de opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4 Efectos de las variables en el precio de las opciones . . . . . . . . . . 16
4 Modelo Black-Scholes 29
4.1 El modelo y su desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2 La ecuacion de Black-Scholes . . . . . . . . . . . . . . . . . . . . . . . 31
5 Black-Scholes en la realidad 35
5.1 Características del activo subyacente . . . . . . . . . . . . . . . . . . 35
5.2 Estimación de parametros . . . . . . . . . . . . . . . . . . . . . . . . 36
5.3 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3
ÍNDICE
6 Conclusiones 47
4
Índice de gráficos
1.1 Beneficios de una opción call con c=5 y K=100. Elaboración propia . 13
1.2 Beneficios de una opción put con p=5 y K=100. Elaboración propia . 14
5
Índice de tablas
7
Introducción
9
ÍNDICE DE TABLAS
10
Capítulo 1
Opciones
1.1 Definición
Las opciones son instrumentos financieros usados en diferentes transacciones. Son
contratos que dan al comprador el derecho a comprar un activo dentro de un tiempo
determinado y a un precio fijado, y al vendedor la obligación de vender dicho activo
si el comprador desea ejercer su derecho.
11
CAPÍTULO 1. OPCIONES
• Break even
• Fecha de vencimiento
• Volatilidad
12
CAPÍTULO 1. OPCIONES
Dependiendo del derecho que te otorgan, una opción puede ser call o put.
Con las opciones call, también llamadas opciones de compra, el comprador adquiere
el derecho a comprar un activo subyacente a un precio determinado dentro de un
periodo de tiempo previamente acordado. El comprador puede ejercer su derecho
cuando quiera dentro de ese periodo de tiempo, aunque no está obligado a hacerlo si
no lo desea. El vendedor, que posee el activo, de una opción call asume la obligación
de vender el activo subyacente si la opción se termina ejerciendo.
Benef icio
30
CALL
20
10
K
0
70 c 80 90 100 110 120 130 ST
−5 Breakeven
Figura 1.1: Beneficios de una opción call con c=5 y K=100. Elaboración propia
En el gráfico 1.1 podemos ver la evolución del beneficio de la compra de una opción
call. Como vemos, si el precio de mercado ST es menor a 100€, la opción no se
ejerce y el comprador de la call perdería la prima c = 5€. Cuando el activo en el
mercado está valorado en 105€ el beneficio es nulo, esto es, ST = K + c. A partir de
este momento el beneficio es positivo, y hará que el comprador ejerza su derecho a
compra.
Las opciones put, u opciones de venta, dan al comprador, que es el que posee el
activo, el derecho pero no la obligación de vender un activo subyacente a un precio
determinado dentro de un periodo de tiempo. El vendedor de la opción put asume
la obligación de comprar el activo si se termina ejerciendo la opción.
En este caso, como el comprador de la opción put es el que posee las acciones, a este
le interesa que el precio de la acción del mercado disminuya. Si el precio del activo
en el mercado es mayor a 100 el comprador no va a querer ejercer la opción, por
lo que tendrá una perdida igual a la prima p = 5. Si el precio del activo disminuye
y llega a 95 el beneficio será 0, esto es ST = K − p y si baja de esta cantidad el
comprador tendrá beneficios, por lo que le interesará ejercer la opción.
13
CAPÍTULO 1. OPCIONES
Benef icio
30
PUT
20
10
K
0
70 80 90 100 110 120 p 130 ST
−5 Breakeven
Figura 1.2: Beneficios de una opción put con p=5 y K=100. Elaboración propia
Hay muchos tipos de opciones dependiendo del momento temporal en que se pueden
ejercer, pero las más conocidas son las Europeas, en las que nos centraremos en este
trabajo, y las Americanas.
Las Europeas pueden ejercerse únicamente en la fecha de vencimiento, es decir, en
el momento T . En cambio, las Americanas se pueden ejercer desde la fecha en la
que se formaliza el contrato t = 0, hasta la fecha de vencimiento t = T , en cualquier
momento t.
14
CAPÍTULO 1. OPCIONES
Cuando una opción call está In the money, significa que el precio de la acción es
mayor al precio de ejercicio, así que obtendremos beneficio si la ejercemos, que será
ST − K > 0. Lo contrario sucede para una opción put, estará In the money si el
precio de ejercicio es mayor al precio de la acción, en cuyo caso el beneficio sería
K − ST > 0.
Si la opción call está At the money quiere decir que para ambos tipos de opciones
call y put, el precio de ejercicio es igual al precio de la acción. En este caso, es
indiferente para el comprador ejercer la opción o no.
Por ultimo, las opciones call están Out of the money cuando el precio de ejercicio
es mayor al precio de la acción. Para las opciones put, cuando el precio de ejercicio es
menor al precio de la acción. Si ejercemos la opción cuando esta Out of the money,
tendremos perdidas. En el caso de las opciones call, ST − K < 0; y en el caso de las
opciones put K − ST < 0.
Resumiendo todo esto en una tabla:
Tabla 1.1: Clasificación de las opciones según el nivel de
precio. Fuente: Elaboración propia
Call Put
In the money K < ST K > ST
At the money K = ST K = ST
Out of the money K > ST K < ST
Las opciones pueden definirse también por el tipo de activo subyacente que se
comercia con ellas.
1. Opciones de stock: Estas son las opciones más comunes con las que se
comercia en las Bolsas, el activo subyacente se compone de un paquete de
acciones del mismo tipo. Normalmente, una opción de stock te da el derecho
de comprar o vender 100 acciones.
2. Opciones de divisas: Son un tipo de opciones con las que se pueden
comerciar diferentes divisas, que son monedas extranjeras. Un contrato te
permite comprar o vender 10.000 unidades de la divisa, en las que el activo
subyacente es una divisa extranjera o diferente a la que se comercializa la
opción.
3. Opciones de índices: En este tipo de opciones el activo principal es un índice,
que puede ser diferente dependiendo del interés del comprador y del vendedor.
En estas opciones se suelen comprar o vender 100 veces el índice.
4. Opciones de futuros: Los futuros son otro tipo de contratos, similares a las
opciones pero con la diferencia de la obligación de ejercer el contrato a la fecha
de vencimiento.
15
CAPÍTULO 1. OPCIONES
Por ejemplo, en una opción call Europea si el precio del activo en el mercado sube,
el precio de la opción también. Al contrario, con el precio de ejercicio el precio de la
opción baja.
16
Capítulo 2
150
140
Precio de cierre
130
120
110
17
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
Por lo tanto, si calculamos las rentabilidades de los precios de las acciones de AENA
y creamos un gráfico (gráfico 2.2).
0.050
Rentabilidades simples
0.025
0.000
−0.025
−0.050
abr. 2022 jul. 2022 oct. 2022 ene. 2023
Fecha
En la figura 2.2 las rentabilidades diarias del activo se parecen mucho a un proceso
aleatorio.
La rentabilidad media del activo se puede expresar de la siguiente manera:
M
1 X
R̄ = Ri
M i=1
18
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
30
Frecuencia
20
10
0
−0.03 0.00 0.03 0.06
Rentabilidades simples
0.06
Rentabilidades compuestas
0.03
0.00
−0.03
En la figura 2.4 podemos ver las rentabilidades compuestas en función del tiempo.
Estas rentabilidades también se distribuyen de forma parecida a una distribución
normal, como vemos en la figura 2.5.
Una vez visto el comportamiento de las rentabilidades diarias podemos concluir que,
dado el paso del tiempo entre mediciones de rentabilidades, que a partir de ahora
llamaremos δt, cuanto mayor sea este intervalo, mayor será la variación del activo.
19
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
30
Frecuencia
20
10
0
−0.03 0.00 0.03 0.06
Rentabilidades compuestas
St+1 − St
= µδt −→ St+1 = St (1 + µδt)
St
Por lo tanto, para cada instante del tiempo se tiene1 :
t = 0 S1 = S0 (1 + µδt)
t = 1 S2 = S1 (1 + µδt) = S0 (1 + µδt)2
..
.
t=M SM = S0 (1 + µδt)M ≈ S0 eµT
Esta aproximación es importante por dos motivos:
20
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
T
Para calcular la desviación típica debemos calcular la raíz de una suma de M = δt
términos. Para que esta suma sea finita cuando δt → 0 necesitaremos que cada
término sea del mismo orden que δt. Siendo√esto así, la desviación estándar de
los rendimientos del activo sería del orden δt. Así podemos √ considerar que la
rentabilidad anualizada tiene una desviación estándar igual a σ δt con σ constante.
Finalmente se tiene2 :
St+1 − St √
Rt = = µδt + σϕ δt
St
Este modelo se conoce como paseo aleatorio del precio del activo y sirve para calcular
la variación del precio del activo entre dos instantes de tiempo. Al parámetro µ se
le conoce como deriva del activo y al parámetro σ como volatilidad del activo.
Si la escala temporal es diferente, los efectos de la volatilidad y de la deriva en la
evolución del activo son diferentes: en plazos cortos la volatilidad influye más que la
deriva en el precio del activo, mientras que en plazos largos ocurre al revés.
También es importante tener en cuenta que la volatilidad del activo no es en realidad
constante, sobre todo en el largo plazo donde se ve afectada por cambios en el ciclo
económico, estacionalidad, . . . , aunque en este trabajo no se van a abordar estas
consideraciones.
√
St+1 − St = µSt δt + σϕSt δt
21
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
E(dZ) = 0 E(dZ 2 ) = dt
2.4 Propiedades
Cálculo estocástico
Ya hemos visto que los precios de los activos se componen de una parte determinista
(deriva) y de una parte aleatoria (volatilidad) provocada por el paso del tiempo. El
cálculo estocástico nos permite crear un modelo de estos procesos aleatorios. Pero
antes de empezar con esto debemos definir las propiedades de los modelos financieros.
i
(Sj − Sj−1 )2
X
j=1
Movimiento Browniano
Definimos como S(t) el valor de un activo en un tiempo t. El proceso límite de
este paseo aleatorio a medida que la variación del tiempo tiende a cero se denomina
movimiento browniano, que denotaremos como Z(t).
Un movimiento browniano cumple las siguientes propiedades:
22
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
• Finitud: Cualquier otra escala del tamaño de los incrementos del valor con el
paso de tiempo habría dado lugar a un paseo aleatorio que iría al infinito en
un tiempo finito, o a un límite en el que no habría movimiento en absoluto.
Es importante que el incremento aumente con la raíz cuadrada del paso de
tiempo.
• Continuidad: Las trayectorias son continuas, no hay discontinuidades. El
movimiento browniano es el limite en tiempo continuo de nuestro paseo
aleatorio en tiempo discreto.
• Propiedad de Markov: La distribución condicional de Z(t) dada información
hasta τ < t depende solo de Z(τ ).
• Propiedad de Martingala: Dada la información hasta τ < t la expectativa
condicional de Z(t) es Z(τ ).
• Variación cuadrática: Si dividimos el tiempo 0 a t en una partición con n + 1
puntos de partición con ti = it/n entonces
n
c.s
(Z(tj ) − Z(tj−1 ))2 −→ t
X
j=1
dW = f (t)dZ
23
CAPÍTULO 2. VALORACIÓN DE OPCIONES. PARTE I
dF 1 d2 F 2
F (Z + dZ) ≈ F (Z) + dZ + dZ
dZ 2 dZ 2
y, si consideramos F (Z + dZ) − F (Z) el incremento en F , se tiene que:
dF 1 d2 F 2
dF = dZ + dZ
dZ 2 dZ 2
Por último se puede ver que a partir de la variación cuadrática y mediante la
definición del limite cuadrático medio que:
Z t
(dZ)2 = t
0
24
Capítulo 3
• Una parte determinista, que será la parte que mide la evolución del activo
y tendrá la forma µdt, donde µ es la deriva del activo y dt es una variación
mínima de la variable t, el tiempo.
• La segunda parte mide la aleatoriedad en el cambio del precio, tiene la forma
de σdZ donde σ mide la desviación típica y Z es un proceso Wiener.
Retomando la ecuación 2.1 la evolución del precio del activo, es decir, dS se modela
mediante una ecuación que tiene en cuenta estos dos puntos:
o también:
dSt
= µdt + σdZ
St
25
CAPÍTULO 3. VALORACIÓN DE OPCIONES. PARTE II
f ′ (x) f ′′ (x)
f (x) ≈ (x − x0 ) + (x − x0 )2 ...
1! 2!
Por lo tanto, para f = f (S), una serie de Taylor usando solo dos derivadas, tiene
esta forma:
df 1 d2 f 2
df = dS + dS (3.2)
dS 2 dS 2
Volviendo a la ecuación 3.1 y calculando dS y (dS)2 podemos conseguir la serie de
Taylor para esta ecuación. Por lo tanto:
Ahora usando el valor de las opciones c = c(S, t) en vez de f (S) tenemos que:
!
dc 1 d2 c dc dc
dc(S, t) = µS + σ2S 2 2 + dt + σS dZ (3.6)
dS 2 dS dt dS
Este resultado es una versión del Lema de Itô, donde dt embarca la parte
determinista del valor de la opción, es decir, la que podemos calcular y dZ que
recoge la aleatoriedad.
26
CAPÍTULO 3. VALORACIÓN DE OPCIONES. PARTE II
df (S) 1
=
dS S
2
d f (S) 1
2
=− 2
dS S
Y sustituyendo en la ecuación 3.5 tenemos que:
σ2
df = (µ − )dt + σdZ (3.7)
2
donde por ser dZ un proceso de Wiener que sigue una distribución normal, ln(S)
seguirá distribución logarítmica-normal:
!
σ2
ln(S) → N (µ − )dt, σ 2 dt
2
27
Capítulo 4
Modelo Black-Scholes
El modelo de Black-Scholes (Black & Scholes, 1973), del que ya hemos hablado
antes, es un modelo desarrollado por Fisher Black y Myron Scholes con posteriores
ampliaciones de Robert Merton (Merton, 1973), que usa unas fórmulas que dependen
de diferentes variables para aproximarse tanto como sea posible al precio justo de
las opciones tanto call como put.
En este apartado, hablaremos un poco del desarrollo matemático y de las fórmulas.
29
CAPÍTULO 4. MODELO BLACK-SCHOLES
dS = µSdt + σSdZ
donde el riesgo del activo viene recogido en la componente estocástica dZ.
Nuestro objetivo será eliminar dicha componente estocástica y obtener el precio
determinista de la opción call. Para ello, construimos la siguiente cartera, compuesta
por la compra de una acción (activo subyacente) y la venta de una cantidad ∆
(desconocida) de opciones:
Π = c(S, t) − ∆St
El incremento de esta cartera vendrá dado por la ecuación
dΠ = dc(S, t) − ∆dS
dΠ = Πrdt
Igualando esto con la ecuación 4.3 conseguimos:
!
dc σ 2 S 2 d2 c
rΠdt = + dt
dt 2 dS 2
dc
Como sabemos Π = c − ∆S o también Π = c − dS S y sustituyendo en la ecuación
anterior obtenemos la ecuación de Black-Scholes:
dc σ 2 2 d2 c dc
+ S 2
+ rS − rc = 0 (4.4)
dt 2 dS dS
2
Supuesto necesario para el modelo.(Hull, 2012)
30
CAPÍTULO 4. MODELO BLACK-SCHOLES
Condiciones de contorno
En el punto anterior hemos obtenido la ecuación de Black-Scholes (ecuación 4.4).
dc σ 2 2 d2 c dc
+ S 2
+ rS − rc = 0
dt 2 dS dS
Para poder resolver esta ecuación nos falta considerar definimos las condiciones de
contorno que definen el valor de una opción call europea en función del precio de la
acción en el punto máximo y el mínimo, es decir:
c(S, T ) = max(ST − K, 0)
Esta condición nos dice que en la fecha de vencimiento, en T , el precio de la opción
será el que maximice el beneficio de la compra de la opción.
c(0, t) = 0 ∀t ∈ [0, T ]
Por otro lado, esta condición nos dice que si el precio de la acción en cualquier
momento t es 0, el precio de la opción también será 0.
Con esto, tenemos ecuaciones suficientes para resolver el problema. La forma de
resolver este problema es mediante una serie de cambios de variables que nos
permitirán transformar la ecuación de Black Scholes en la ecuación del calor, con
un doble objetivo. Por un lado, reducir el número de variables de la ecuación y por
otro, obtener una solución directa, ya que la solución de la ecuación del calor es
conocida desde 1768.
Empezaremos definiendo los siguientes cambios de variable siguiendo a (Kwok, 2008;
Wilmott et al., 1996):
S
S = Kex → x = ln( )
K
τ σ2
t=T− → τ = (T − t)
σ 2 /2 2
c
c = Kv(x, τ ) → v(x, τ ) =
K
Ahora, con estos cambios de variable resolvemos el problema y llegamos a:
dv d2 v dv
= 2 + (κ − 1) − κv (4.5)
dτ dx dx
r
Donde κ = σ 2 /2
. Con esto hemos conseguido reducir el número de parámetros a uno.
Ahora escogemos otro cambio de variable, en este caso v(x, τ ) = eαx+βτ u(x, τ ) para
desarrollar la expresión anterior y llegar a la ecuación del calor, que tiene solución
conocida.
31
CAPÍTULO 4. MODELO BLACK-SCHOLES
du d2 u
= 2
dτ dx
Cuya solución es:
∞
1 Z −(x−S)2
u(x, τ ) = √ u(S, 0)e 4τ dt (4.6)
2 πτ
−∞
d1
1 Z −S2
N (d1 ) = √ e 2 dS
2π −∞
√
donde d1 = √x + κ+1
2τ , y
2τ 2
d2
1 Z −S2
N (d2 ) = √ e 2 dS
2π −∞
√
donde d1 = √x + κ−1
2τ
2τ 2
Ahora solo quedaría deshacer todos los cambios de variable para hallar c(S, t) para
opciones call europeas. Haciendo esto conseguimos:
Y para las opciones put seguimos el mismo proceso, pero cambiamos una de las
condiciones de contorno por34 :
p(S, T ) = max(K − ST , 0)
Y con esto conseguimos la ecuación p(S, t) para opciones put europeas5 :
donde en ambos casos d1 y d2 son:
S σ2
ln K
+ (r + 2
)(T )
d1 = √
σ T
3
La paridad put-call establece una relación entre el precio de ambos tipos de opciones. Expresado
matemáticamente: c − p = S − Ke−rT . Esto indica que ambas opciones son complementarias.
4
Sujeto a las condiciones iniciales del modelo.
5
32
CAPÍTULO 4. MODELO BLACK-SCHOLES
S σ2
ln K
+ (r − 2
)(T )
d2 = √
σ T
Ejemplo de aplicación
Para ver cómo funciona la fórmula de Black-Scholes supongamos que tenemos una
opción call europea con las siguientes características:
Si seguimos el mismo proceso para las opciones put usando los mismos parámetros:
Entonces, el precio de las acciones tiene que subir 2.618€ para alcanzar el break even
y que con la compra de la opción call se obtenga beneficio. Para la opción put, el
precio de la acción tiene que bajar 11.143€ para alcanzar ese punto.6
6
Las funciones utilizadas en este apartado se encuentran en el Anexo
33
Capítulo 5
Black-Scholes en la realidad
1
MEFF, es el Mercado de referencia de opciones sobre acciones sobre subyacentes españoles,
tiene una larga tradición de cultura financiera y buenas prácticas, invirtiendo constantemente en
innovación y desarrollo. MEFF es el Mercado Español de productos derivados desde 1989.
35
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
El precio del activo es un dato que viene dado por el mercado y que nosotros hemos
obtenido de la página oficial del MEFF de los precios de los futuros Mini IBEX35.
Los usaremos varias veces durante este capítulo por lo que los cargaremos en R y
los guardaremos en la base de datos.
9500
9000
Precio de cierre
8500
8000
7500
Figura 5.1: Grafico de los precios de cierre de Mini IBEX35. Elaboración propia.
• Fecha de vencimiento
36
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
• Tasa de interés
• Precio strike
• Volatilidad
• Volatilidad histórica
37
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
La volatilidad histórica es un parámetro que se estima con los datos históricos del
precio. Es decir, se calcula la desviación típica de los precios que el activo ha tenido
a lo largo del tiempo.
Para el cálculo de la volatilidad histórica, vamos a usar los datos de la página oficial
del MEFF de los precios de los futuros Mini IBEX 35 que hemos cargado en nuestra
base de datos con anterioridad y a los que hemos llamado miniibex
Con estos datos nuestra intención es calcular la rentabilidad del precio para
posteriormente calcular una estimación de la volatilidad histórica. Para esto
creamos una función en lenguaje de R:
Una vez definida la función, podemos calcular los retornos de nuestro conjunto de
datos y construimos un gráfico (5.2) para visualizarlo.
0.04
0.02
Rentabilidad
0.00
−0.02
Figura 5.2: Grafico de las rentabilidades de los precios de Mini IBEX 35. Elaboración
propia.
Una vez conseguidos las rentabilidades podemos calcular la desviación típica y, por lo
tanto, la volatilidad histórica. Pero primero, si nos fijamos en los datos que tenemos
en retornos, el primer valor es nulo, por lo que no podemos tenerlo en cuenta para
calcular la desviación típica.
Por último, calculamos la volatilidad histórica con la función sd(x). También
multiplicamos esta desviación típica con la raíz de 252, que es la cantidad de días
que está abierto el mercado de opciones cada año, para anualizar la volatilidad. La
volatilidad historica es 16.9352879%.
38
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
• Volatilidad implícita
Nuestro objetivo es conseguir un valor de σ que consiga que esta función sea igual a
0, es decir, f (σ) = 0. Para hacer esto existen diferentes métodos como el método de
Brent o el de Redes Neuronales (Liu et al., 2019), nosotros utilizaremos el método
de Bisección, que es más sencillo.
Este método matemático está basado en el Teorema de los Valores Intermedios
(Casas et al., 2011). Si suponemos que una función f es continua en un intervalo
cerrado [ a, b ] con f (a) y f (b) de distinto signo, es decir, f (a) × f (b) < 0, entonces
existe al menos un valor c dentro del mismo intervalo tal que f (c) = 0.
Visto esto, ahora construiremos un código de R para que calcule en bucle una
volatilidad óptima hasta llegar a una tolerancia tan pequeña como queramos para
las opciones:
donde:
• S: precio de la acción
• K: precio strike
39
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
• r: tasa de interés
• t: tiempo hasta la fecha de vencimiento
• c: valor de mercado de la opción call.
• tol: la tolerancia, es decir el error máximo que estamos dispuestos a permitir
• intmax: las interacciones máximas que hará el bucle hasta encontrar un valor
que sea menor que la tolerancia.
Tanto tol como intmax tienen un valor predefinido en la función: tol = 0.0001 y
intmax = 1000.
Para las opciones put tendríamos que construir otro código que incorpore la función
de Black-Scholes para este tipo de opciones:
Esta función tiene las mismas variables que la anterior, cambiando el valor de la
opción call c por el de una opción put p.
El diagrama 5.3 nos enseña el funcionamiento del código de una forma más simple.
El primer paso de la función es definir las variables, que introducimos nosotros. Por
un lado, se definen las variables de la función de Black-Scholes, que servirán luego
para calcular el precio medio, por otro lado, se definen dos variables: intmax y tol,
que nos indican el número máximo de veces que se repetirá la función y la tolerancia
máxima de fallo que aceptaremos respectivamente. Después de definir las variables,
define los valores iniciales que vamos a trabajar: el valor mínimo de la volatilidad2
a = 0 y el máximo b = 1. Por otro lado también definimos la primera interacción
del bucle i = 1.
2
La volatilidad se calcula como un número entre 0 y 1, no como un porcentaje sobre 100.
40
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
Definir
parametros
intmax, tol
Primera
Valor min Valor max
interaccion S, K, r, t, c/p
a = 0 b = 1
i = 1
Mientras
i ≤ intmax
valor medio
= (a + b)/2
funcion
Black-Scholes
precio
medio =
fBlack−Scholes
No
valor medio −
precio medio ≥ tol
Si No
precio valor
medio = b medio = a
i = i+1
i = intmax
Si
valor medio
41
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
Teniendo estos dos valores los comparamos con la tolerancia: | valor medio −
precio medio | > tol. Esto nos indica si la diferencia entre el valor medio y el
precio medio en valor absoluto es mayor que la tolerancia. Si esto es así, se define b
como el precio medio recién calculado y si no, se define a como el valor medio ahora
calculado. Con este paso lo que hacemos es centrarnos en la mitad del intervalo que
nos interesa según el Teorema de la Bisección.
Hecho esto, sumamos una iteración (i = i + 1) y comprobamos si es la máxima
iteracción. Si aun no hemos llegado al máximo de interacciones (i < intmax)
volvemos atrás para calcular de nuevo el valor medio y el precio medio. Si es el
máximo (i = intmax) terminamos el bucle y la función nos devuelve el valor medio
como volatilidad.
Para ver como funciona, cogemos el ejemplo que hemos estado usando durante todo
el trabajo para las opciones call, donde:
En este ejemplo hemos usado una volatilidad supuesta de σ = 0.2 y hemos calculado
que el valor de la opción call es c = 16.0204€, que en la función quedara definido
como c. Ahora, tomando este ejemplo haremos justo lo contrario: para comprobar
nuestro código, utilizaremos como valor de opción c = 16.0204€ para obtener el
valor de σ cercano al 0.2.
Si introducimos estos datos en la función, nos queda que la volatilidad implicita es
20.0099834%. Y lo mismo para las opciones put con el valor de la opción p = 1.143€,
nos queda que la volatilidad implicita es 20.012272%. Vemos que para la opcion put
es algo mayor.
Como vemos, la volatilidad implícita da como resultado aproximadamente un 20%
en ambos casos, que es lo que hemos usado en nuestro ejemplo principal. Con esto
podemos verificar que las funciones de Black-Scholes nos dan el precio justo de las
opciones.
5.3 Resultados
Tomamos otra vez las tablas del MEFF para usar estas funciones y calcular la
volatilidad y comprobar si es la correcta. Usaremos:
42
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
11
• T = 252
Que son los días hábiles entre el 9 de junio de 2023 y el 26 de junio de 2023 (fecha
de donde hemos sacado los precios de la call en MEFF), divididos por el número de
días al año en el que la Bolsa Española está abierto.
• S0 = 9299.10€
Valor del futuro Mini IBEX el 9 de junio (cuando hemos mirado los precios call).
• K = [ 7700€, 9800€ ]
• r = 0.03234
• c =[ 1619, 1519, 1420, 1320, 1220, 1121, 1021, 922, 823, 727, 628, 531, 434,
344, 254, 175, 104, 55, 23, 10, 4, 1]
S0<-9299.10
df<-NULL
df$K<-seq(7700,9800,by=100) #seq(min, max, incremento)
df$call<-c(1619,1519,1420,1320,1220,1121,1021,
922,823,727,628,531,434,344,254,175,104,55,23,10,4,1)
volat<-0
for(i in 1:22){
volat[i]<-funcionbiseccioncall(S0, df$K[i], 0.03234, 11/252, df$call[i])
}
df$volat<-volat
df<-as.data.frame(df)
43
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
0.4
Volatilidad
0.3
0.2
0.1
8000 8500 9000 9500
Precio de ejercicio
Figura 5.4: Gráfico de las volatilidades para cada precio de ejercicio (strike).
Elaboración propia.
0.4
Volatilidad
0.3
0.2
0.1
0 500 1000 1500
Precio de la opción call
Figura 5.5: Gráfico de las volatilidades para cada precio de las opciones. Elaboración
propia.
La figura 5.5 muestra cómo aumenta el precio de la opción a medida que aumenta
44
CAPÍTULO 5. BLACK-SCHOLES EN LA REALIDAD
la volatilidad. Esta relación entre la volatilidad y los precios de las opciones es más
intuitiva que con los precios de ejercicio. Cuando la volatilidad es alta, indica un
mayor nivel de incertidumbre en el precio del activo subyacente y en sus movimientos.
Por lo tanto, en algún momento durante la vida de la opción, es más probable que el
precio del activo subyacente supere el precio de ejercicio, es decir, S > K, generando
así mayor ganancia. En consecuencia, si el precio del activo es mayor, el precio de
la opción de compra también será mayor.
En resumen, la relación entre la volatilidad y los precios de las opciones de compra
es bastante clara: a medida que aumenta la volatilidad, se espera que los precios de
las opciones de compra aumenten debido a la oportunidad de obtener ganancias.
45
Capítulo 6
Conclusiones
47
CAPÍTULO 6. CONCLUSIONES
48
Anexo A (Códigos)
library(readxl)
aena<-read_excel("aenadatosxlsx.xlsx")
library(ggplot2)
ggplot(aena) + aes( x = FECHA, y = CIERRE)+
geom_line(color="darkblue")+ xlab("Fecha") +
ylab("Precio de cierre")
library(PerformanceAnalytics)
rentabilidadesAENA_simples<-Return.calculate(aena)
aena$rentabilidadessimples<-rentabilidadesAENA_simples$CIERRE
ggplot(aena) + aes( x = FECHA, y = rentabilidadessimples) +
geom_line(color="darkblue") + xlab("Fecha") +
ylab("Rentabilidades simples")
rentabilidadesAENA_simples_SPF<-rentabilidadesAENA_simples[-1, "CIERRE"]
rentabilidadesAENA_simples_SPF<-rentabilidadesAENA_simples[-1, "CIERRE"]
renta_simples<-aena[2:257,]
renta_simples$SPF<-rentabilidadesAENA_simples_SPF
ggplot(renta_simples, aes(x=SPF)) + geom_histogram(
colour = "black",
fill = "white") +
stat_function(fun = dnorm,color="darkred",
args = list(mean = mean(renta_simples$SPF),
sd =sd(renta_simples$SPF))) +
xlab("Rentabilidades simples")+ylab("Frecuencia")
49
ANEXO
rentabilidadesAENA_compuestas<-Return.calculate(aena, method="log")
aena$rentabilidades<-rentabilidadesAENA_compuestas$CIERRE
ggplot(aena) + aes( x = FECHA, y = rentabilidades) +
geom_line(color="darkblue")+ xlab("Fecha") +
ylab("Rentabilidades compuestas")
rentabilidadesAENA_compuestas_SPF<-rentabilidadesAENA_compuestas[-1, "CIERRE"]
rentabilidadesAENA_compuestas_SPF<-rentabilidadesAENA_compuestas[-1, "CIERRE"]
renta_comp<-aena[2:257,]
renta_comp$SPF<-rentabilidadesAENA_compuestas_SPF
ggplot(renta_comp, aes(x=SPF)) + geom_histogram(
colour = "black",
fill = "white") +
stat_function(fun = dnorm,color="darkred",
args = list(mean = mean(renta_comp$SPF),
sd =sd(renta_comp$SPF))) +
xlab("Rentabilidades compuestas")+ylab("Frecuencia")
• Para calcular los valores obtenidos en la sección 4.2, así como el precio de
cualquier opción europea se han creado las siguientes funciones de Black-
Scholes, siguiendo el artículo (Arango et al., 2015), en el programa R para
las funciones call y put que hemos visto hasta ahora, y que usaremos en el
siguiente capítulo.
• K: precio de ejercicio.
50
ANEXO
• r: tasa de interés.
• t: tiempo, en años.
library(readxl)
library(quantmod)
library(dplyr)
library(PerformanceAnalytics)
miniibex<-read_excel("Futuros.xlsx")
rentabilidadFUTUROS<-funcion_rentabilidad("Futuros.xlsx", Ultimo)
rentabilidadFUTUROS$Fecha <-miniibex$Fecha
ggplot(rentabilidadFUTUROS) + aes( x = Fecha, y = division) +
geom_line(color="darkblue") + xlab("Fecha") +
ylab("Rentabilidad") +
stat_smooth(method="lm", se=FALSE, color="darkgreen")
51
Bibliografia
53