lunes, 11 de marzo de 2019

Método binomial de valoración de opciones

Puede descargar el archivo de Excel aproximacionArbolBinomial.xlsm

Las opciones son unos activos derivados que se pueden valorar usando principalmente dos modelos.
Historicamente surgió primero la fórmula de Black-Scholes (1973) y posteriormente se desarrolló el método de árboles binomiales en un artículo de Cox-Ross-Rubinstein de 1979. Conviene explicar primero el método binomial para comprender de forma más sencilla los procesos necesarios para valorar opciones. El modelo de Black-Scholes es un modelo analítico desarrollado en tiempo contínuo. El modelo binomial es el más conocido dentro de los que valoran la prima de una opción utilizando algoritmos de cálculo numérico.

Vamos a valorar opciones CALL europeas por el método de árboles binomiales. Recordemos que una opcione europera es aquella que se ejerce únicamente a fecha de vencimiento, frente a las opciones americanas que son aquellas que se pueden ejercer en cualquier momento hasta la fecha de vencimiento.

La idea consiste en partir de un precio inicial del activo subyacente S y suponer que en el periodo siguiente puede alcanzar dos valores posibles, o bien ha subido un cierto porcentaje o bien ha bajado un cierto porcentaje. Esto supone construir un arbol binomial, ya que se trata de dos ramas posibles, y posteriormente estas ramas a su vez volverán a poder subir o bajar y así sucesivamente. De esta forma podríamos llegar a tener un arbol de n pasos.

Aproximación al valor de una opción (Hoja1)

Antes de lanzarnos a ver el método de valoración por árboles binomiales vamos a plantear la idea que utilizaremos para la valoración de una opción.

Supongamos una opción CALL europea sobre un activo subyacente, por ejemplo una acción, cuyo precio de mercado hoy, precio Spot, es de 100 €, con fecha de vencimiento a un año, y precio de ejercicio (Strike) de 100 €. La rentabilidad libre de riesgo supondremos que es del 12% anual.

Supongamos una serie de precios que puede llegar a tomar el activo subyacente a fecha de vencimiento. En la tabla que tenemos en la hoja de cálculo hemos supuesto precios que van entre 70 € y 130 €, de 10 en 10 euros, en total son siete posibles precios. A cada uno de estos precios hemos asociado unas probabilidades de ocurrencia. Así los precios extremos de 70 € y 130 € son menos probables y les hemos asignado una probabilidad del 2%, y los precios centrales son más probables. Al precio de 90 € y al de 110 € les hemos asignado una probabilidad del 20% a cada uno. El precio central de 100 € es el de mayor probabilidad, 40%. Estas probabilidades de momento nos las estamos inventando, es una supuesto que luego iremos matizando.

En la siguiente columna de la tabla calculamos el payoff de la opción. No estamos considerando el beneficio obtenido por la opción ya que no estamos considerando la prima que se pagó. Simplemente consideramos el payoff que coincide con el valor intrínseco de la opción a fecha de vencimento, ya que a esa fecha ya no existe valor temporal. Para las opciones CALL es el máximo entre cero y la diferencia entre el precio del subyacente y el precio de ejercicio.

Payoff para un CALL: =MAX(0;S-E)
Payoff para un PUT: =MAX(0;E-S)



Para calcular la prima del CALL o valor estiamdo de la opción recurrimos al concepto tradicional que se usa en la valoración de inversiones por árboles de decisión. Lo que haremos es multiplicar el valor esperado de la opción en cada rama (payoff) por la probabilidad de que esa rama suceda. Todos estos productos se suman y ya tendríamos el precio estiamdo de la opción en la fecha t=T y ahora tendremos que descontar esos T periodos a la rentabilidad libre de riesgo para obtener el valor de la opción a valor actual, en t=0.

La prima del CALL se llama C y es el valor actual de la esperanza matemática del valor intrínseco a vencimento que se calcula con la siguiente expresión.

C = [ Sumatorio para todas las ramas ( payoff de esa rama * probabilidad de esa rama ) ] / (1+r)^T

C = [ 0*0,02 + 0*0,08 + 0*0,2 + 0*0,4 + 10*0,2 + 20*0.08 + 30*0,02 ] / (1+0,12) = 3,75

Esto está recogido en la celda D11 de color naranja.

=SUMAPRODUCTO(D15:D21;E15:E21)/(1+$D$8)^$D$9


Esta es una aproximación a la valoración de opciones que no es nada precisa y que simplemente pretende establecer la lógica de valoraicón que utilizan todos los métodos de valoración sean en tiempo discreto como el que veremos de árboles binomiales o sean en tiempo contínuo como el de Black-Scholes.

Los métodos que analizaremos son más complejos pero sus principios básicos son los que hemos visto en este ejemplo, el valor actual del valor esperado o esperanza matemática de los flujos de caja futuros que se obtendrán con la opción. La dificultad de los métodos que estudiaremos radica en los métodos utilizados para estimar los flujos de caja futuros y sus probabilidades.

Hipótesis del modelo binomial


Se asumen las siguientes hipótesis.

  • La eficiencia y profundidad de los mercados
  • La ausencia de costes de transacción
  • Es posible comprar y vender en descubierto sin límite
  • Los activos son perfectamente divisibles
  • El tipo de interés es el mismo para préstamo y endeudamiento
  • Todas las transacciones se pueden realizar de forma simultánea
  • El precio del subyacente evoluciona según un proceso binominal multiplicativo
  • El subyacente no reparte dividendos hasta la fecha de vencimiento

Arbol binomial de un paso (Hoja2)

CALL europea

En el momento presente el precio del subyacente es S y transcurrido un perido puede subir un cierto porcentaje o bajar otro cierto porcentaje. Si sube el nuevo precio del subyacente será Su siendo u un valor mayor que uno, y que se puede identificar como uno más el porcentaje de subida. Si baja el nuevo precio del subyacente será Sd siendo d un valor menor que uno.


Por ejemplo, si el porcentaje de subida es del 25% el valor u será 1,25. Si el porcentaje de bajada es del 20% el valor d será 0,8. Se cumple que d=1/u. Si el precio inicial del activo subyacente es S=100 los precios transcurrido un perido del activo subyacente podrán ser Su=100*1,25=125 € si se sigue la rama alcista, o bien, Sd=100*0,8=80 € si se ha seguido la rama bajista.





De esta forma la subida y la bajada suponen el mismo efecto ya que si primero subimos y luego bajamos se llega al mismo valor que si primero bajamos y luego subimos. Recordemos que los porcentajes son magnitudes que se comportan de forma multiplicativa y no aditiva. Si partimos de 100 € y subimos un 25% tendremos que luego bajar un 20% para llegar a esos mimso 100 €. Y viceversa, si partimos de 100 € y primero bajamos un 20%, luego tendremos que subir un 25% si queremos llegar a esos mismos 100 € iniciales.




Ahora vamos a calcular el payoff del CALL a fecha de vencimiento. Se trata de calcular el valor intrínseco de la opción a fecha de vencimiento que en el caso de una opción CALL viende dado por la expresión siguiente.

=MAX(0;S-E)



Las celda amarillas son las que nos permie calcular el payoff de cada rama. En la rama alcista si el precio de activo subyacente a fecha de vencimiento es S=125 y el precio del ejercicio es E=100, ejerceremos la opción y obtendremos una ganancia (sin contar la prima que se pagó) de 25 €. Por el contrario, si estamos en la rama bajista el precio del activo subyacente ha terminando siendo de S=80 € y al ser inferior al precio de ejercicio E=100 no nos interesa ejercer la opción, y por lo tanto el payoff será cero.

Ahora tenemos que calcular el precio de la opción en el nodo previo, y por lo tanto tiraremos hacia atrás. Para calcular el valor teórico de la prima en t=0 necesitamos conocer las probabilidades de cada una de las ramas. Denominamos como p la porbabilidad de subida y como 1-p la probabilidad de bajada.

La probabilidad p de que acontezca la rama superior, la rama alcista, viene dada por la siguiente expresión.


Esta fórmula se obtiene aplicado la hipótesis de no arbitraje a las ramas del modelo binomial.


En nuestro ejemplo numérico podemos calcular la probabilidad de alza p con los siguientes valores.



p = (1,07-0,8) / (1,25-0,8) = 0,6

1-p = 1-0,6 = 0,4

Por tanto, la probabilidad de subida en la cotizaicón es del 60% y la probabilidad de bajada es del 40%.

Para calcular el precio teórico de la opción o prima estimada por el modelo binominal de un periodo tendremos que calcular el valor actual de la esperanza matemática del payoff de la opción multiplicado por sus respectivas probabilidades.

C = [ Cu*p + Cd*(1-p) ] / (1+r)

C = [ 25*0,6 + 0*0,4 ] / (1+0,07) = 14,02 €


Arbol binomial de dos pasos (Hoja3)

CALL europea

Vamos a ampliar el arbol binomial suponiendo que ahora trás el primer nodo viene un segundo nodo donde también se pueden producir movimentos al alza y a la baja por cada uno de los anteriores. Continuamos suponiendo que el alza supone incrementos del 25%, por lo que u=1,25 y las bajadas suponen reducciones del 20%, por lo que d=0,80.


En el nodo para t=2 tenemos el precio más alto que se consigue multiplicando el precio del activo subyacente S por el factor de incremento u dos veces. Resultando ser S*u*u=Su2.

El precio más bajo resulta ser S*d*d=Sd2, ya que a una bajada se añade otro nueva bajada.

Existe un precio intermedio al que se puede llegar por dos caminos:

  • partimos de S, subimos hasta Su y luego bajamos hasta Sud
  • partimos de S, bajamos hasta Sd y luego subimos hasta Sdu


Puesto que u y d son valores inversos, ya que u=1/d se obtiene que ambos caminos son idénticos ya que el producto ud=1. De esta forma, ambos caminos conducen a que el valor alcanzado es igual a S.

Numéricamente, partimos de 100 y por ambos caminos llegamos a 100, así:

  • Partimos de 100, luego subimos hasta 100*1,25 y luego bajamos hasta 100*1,25*0,80 que es nuevamente igual a 100
  • Partimos de 100, luego bajamos hasta 100*0,80 y luego subimos hasta 100*0,80*1,25 que es nuevamente igual a 100





Ya tenemos construido el arbol de dos periodos conteniendo la evolución del precio del activo subyacente. Ahora vamos a calcual el payoff a fecha de vencimiento, o lo que es lo mismo, el valor intrínseco de la opción a fecha de vencimiento, ya que en se momento el valor temporal de la opción es cero.

Como se trata de una opción CALL el payoff será:

=MAX(0;S-E)


Ahora iremos hacia atrás buscando el precio de cada rama en el nodo t=1.


El valor de 31,5420561 se obtiene descontando un periodo al 7% el valor esperado que es el producto de los flujos de caja previstos multiplicados por su probabilidad.

( 56,25*0,6 + 0*0,4 ) / (1+0,07) = 31,5420561

La otro rama valdrá cero.

( 0*0,6 + 0*0,4 ) / (1+0,07) = 0

El precio estimado de la opción CALL se obtiene retrocediendo otro periodo hacia atrás.


El valor de la opción 17,6871342 se obtiene descontando un periodo al 7% los valores esperados del nodo 1, lo cual supone sumar los productos de los valores calculados por sus probabilidades respectivas.

( 31,5420561*0,6 + 0*0,4 ) / (1+0,07) = 17,6871342

Observe que con los mismos datos que en el caso del método binomial de un periodo, ahora utilizando dos periodos hemos obtenido un valor estimado de la opción CALL bastante mayor.


Arbol binomial de cuatro pasos (Hoja4)

CALL europea

Aumentamos el número de pasos del árbol binomial. En esta ocasión llegaremos a cuatro pasos para poder analizar el cálculo de la prima de la opción CALL europea.



Creamos el árbol binomial con los posibles precios que alcanzará el activo subyacente S en los diferentes nodos.




Calculamos numericamente los precios del activo subyacente.


Calculamos el payoff a fecha de vencimiento. Se trata de calcular el valor intrínseco del último nodo. Puesto que se trata de una opción CALL el payoff se obtiene con la fórmula

=MAX(0;S-E)

Así, por ejemplo, el valor 56,25 se obtiene como

=MAX(0;156,25-100)


Ahora vamos hacia atrás y calculamos los precios de la opción en el nodo t=3. Para ello, calculamos el valor actual, descontando un periodo al 7%, de los valores esperados del nodo t=4.

Así, el valor de las diferentes ramas del nodo t=4 se obtienen con las siguientes expresiones.

[ 144,140625*0,6 + 56,25*0,4 ] / (1+0,07) = 101,8545561

[ 56,25*0,6 + 0*0,4 ] / (1+0,07) = 31,54205607

[ 0*0,6 + 0*0,4 ] / (1+0,07) = 0


Ahora calcularemos los precios de la opción (celdas amarillas) para el nodo t=2.

[ 101,8545561*0,6 + 31,54205607*0,4 ] / (1+0,07) = 68,90612717

[ 31,54205607*0,6 + 0*0,4 ] / (1+0,07) = 17,68713425


Ya estamos en el nodo t=1.

[ 68,90612717*0,6 + 17,68713425*0,4 ] / (1+0,07) = 45,25096262

[ 17,68713425*0,6 +0*0,4 ] / (1+0,07) = 9,918019204


Finalmente llegamos al nodo t=0 que nos permite estimar la prima de la opción.

[ 45,25096262*0,6 + 9,918019204*0,4 ] / (1+0,07) = 29,08204229




Usando la distribución binomial

Existe una forma alternativa que nos permite llegar a los mismos resultados que hemos obtenido con la construcción completa del árbol binomial. Se trata de usar la distribución binomial para obtener las probabilidades. Veamos las fases que conlleva.

Fase 1

Primero calculamos los posibles precios del activo subyacente a fecha de vencimiento. Se trata de calcular los valores que vimos en las celdas azules del árbol binomial en su último nodo. Para lograrlo vamos a nombrar las cinco ramas comenzando en cero y finalizando en cuatro.


Los cálculos realizados son los siguientes.

  • celda N4 =100*1,25^(4-0)*0,8^0 = 244,140625
  • celda N5 =100*1,25^(4-1)*0,8^1 = 156,25
  • celda N6 =100*1,25^(4-2)*0,8^2 = 100
  • celda N7 =100*1,25^(4-3)*0,8^3 = 64
  • celda N8 =100*1,25^(4-4)*0,8^4 = 40,96

Fase 2

Ahora calculamos el payoff del último nodo. Son las celdas amarillas que se encuentran en el árbol binomial del último nodo y se corresponden con el valor intrínseco de la opción a fecha de vencimiento.


Para una opción CALL se calculan como el máximo entre cero y la diferencia entre el precio del activo subyacente en ese momento y el precio de ejercicio.

=MAX(0;S-E)

Fase 3

Ahora vamos a calcular las probabilidades de cada rama usando la distribución binomial que se encuentran programada en Excel con la función siguiente.

=DISTR.BINOM.N(núm_éxito;ensayos;prob_éxito;acumulado)





  • celda P4 =DISTR.BINOM.N(4-0;4;0,6;0) = 0,1296
  • celda P5 =DISTR.BINOM.N(4-1;4;0,6;0) = 0,3456
  • celda P6 =DISTR.BINOM.N(4-2;4;0,6;0) = 0,3456
  • celda P7 =DISTR.BINOM.N(4-3;4;0,6;0) = 0,1536
  • celda P8 =DISTR.BINOM.N(4-4;4;0,6;0) = 0,0256
La celda C18 calcula el precio estimado de la opción utilizando este método de la distribución binomial, para ello lo que hacemos es multiplicar la columna del payoff (columan O) por la probabilidad binomial (columna P), sumar todos y descontarlo a valor actual al 7% durante 4 años.



La fórmula empleada es la siguiente.

  • celda C18 =SUMAPRODUCTO(O4:O8;P4:P8)/(1+C9)^C12 = 29,0820423


Observalos que ambos procedimientos de cálculo conducen a la misma prima estimada.


Comprobación de probabilidades

La columna P contiene las probabilidades obtenidas con la distribución binomial. También podemos llegar a estas probabilidades usando las columnas Q y R. En la columna Q calculamos las combinaciones necerarias de cada rama. En realidad estamos calculando los valores del triángulo de Pascal. En la columna R multiplicamos esos valores combinatorios por las probabilidades p y 1-p elevadas al índice correspondiente.



Finalmente hemos visto cómo hacer un árbol de cuatro nodos. Ahora se trataría de hacer muchos más nodos de forma automatizaca, usando macros, para comprobar que cuando el número de nodos tiende a infinito el modelo de árboles binomiales converge con el modelo de Black-Scholes.

jueves, 3 de enero de 2019

Temas propuestos

Temas propuestos para desarrollar

  • Información privilegiada (Insider Trading)
  • El riesgo financiero, y sus diferentes tipos
  • El riesgo país y sus sistemas de calificación
  • ETF (Exchange-Traded Funds) Wikipedia
  • Warrants
  • Los splits de acciones
  • Ofertas públicas 
    • Oferta Pública de Adquisición (OPA)
    • Oferta Pública de Venta (OPV)
    • Oferta Pública de Exclusión (OPE) 
  • La Titulización de activos
  • Mercado Financiero de Renta Fija
  • CDS (Credit Default Swaps)
  • Subasta de bonos
  • Índices bursátiles
    • El IBEX35
  • La crisis de deuda pública
  • Basilea III y Basilea IV
  • Seguros de vida
  • Planes de pensiones
  • Fondos de Inversión
  • Sistemas de información de mercados financieros
    • Infobolsa
    • Reuters
    • Bloomberg
  • Fintech (Wikipedia)
  • Las criptomonedas
  • La tecnología blockchain
  • VaR (Value at Risk)
  • La amenaza cibernética y la seguridad de los datos en banca
  • Análisis técnico y fundamental
  • La inteligencia artificial en el campo financiero y actuarial
  • El big data en el campo financiero y actuarial
  • Eficiencia del mercado
    • La cartera del mono
  • Sistemas automáticos de trading (Wikipedia)
    • HFT (High Frequency Trading)
    • Trading algorítmico (Wikipedia
  • El mercado primario de acciones
  • Las plataformas oscuras (dark pools)