1 votos

Calcular el rendimiento al vencimiento de un bono con cupones cuando el precio es diferente del valor nominal

Dada la fórmula $P = \sum_{t=1}^n \frac{CF_t}{(1+i)^t} $ podemos aplicarlo al caso de un bono con cupones constantes de manera que :

$\displaystyle P =\sum_{t=1}^n \frac{C}{(1+i)^t} + \frac{FV}{(1+i)^n} \implies P = C(\frac{1-(1+i)^{-n}}{i})+\frac{FV}{(1+i)^n}$

con $P$ = precio , $C$ = cupón en el momento $t$ , $FV$ = valor nominal , $i$ = rendimiento al vencimiento

Mi problema: ¿Cómo se calcula? $i$ cuando $P\neq FV$ y $P, C,FV$ ¿se conocen?

Creo que no es posible obtener un resultado exacto, porque no parece posible separar el $i$ del resto . He intentado utilizar fórmulas de Taylor de alguna manera para obtener una aproximación pero no he llegado a nada.

EDITAR :

¿Es el método de bisección la única forma posible de proceder? ¿Es posible la aproximación polinómica?

1voto

Tortar Puntos 127

Siguiendo la sugerencia de Brian Romanchuk del "rápido y sucio método de bisección en los comentarios, escribí este programa de python para estimar el rendimiento al vencimiento :

def find_i(P, C, FV, n, epsilon):

    if P > FV : i_min, i_max = 0 , C / FV 
    elif P < FV : i_min, i_max = C / FV , 10
    else : return C / FV

    while True :

        i_mid = ( i_max + i_min ) / 2 # mid point of the current intervall 
        point = C*(1-(1+i_mid)**(-n))/i_mid + FV/(1+i_mid)**n - P # it should converge to 0

        if abs(point) < epsilon  : return i_mid # if point is close enough to 0 then finish

        if point > 0 : i_min = i_mid # [i_mid,i_max] : new intervall
        elif point < 0 : i_max = i_mid # [i_min,i_mid] : new intervall

P, C, FV, n = 1100, 100, 1000, 10
epsilon = 10**-5
i = find_i(P, C, FV, n, epsilon)

La elección de $i_{min}$ y $i_{max}$ es importante estimar $i$ en casos extremos. Tratar con intereses negativos es más difícil.

Voy a actualizar el método para mejorar el cálculo, por ahora enumero los hechos relevantes utilizados:

1) Cuando $P = FV $ entonces $i = C / FV$

2) $P$ y $i$ están correlacionados negativamente cuando $i>0$

1voto

Bill718 Puntos 90

Puede que exista un método de forma cerrada que sea más eficiente, pero en la práctica, los cálculos del mercado de bonos presentan muchas irregularidades si se comparan con la fórmula de fijación de precios indicada anteriormente.

Como complemento, si tiene acceso a dos funciones, puede utilizar Newton-Raphson.

  1. Una función para calcular el precio a partir del rendimiento.
  2. Una función para calcular la duración modificada a partir del rendimiento. Esto podría hacerse utilizando la función anterior, y aproximando la duración modificada observando el cambio de precio que resulta de un pequeño choque de rendimiento.

La duración modificada (que aquí acortaré a "duración") es la sensibilidad del rendimiento del precio como porcentaje de un cambio de rendimiento (hay que multiplicar por -1). Por ejemplo, si la duración es 2, un aumento del 0,01% en los rendimientos (aproximadamente) da un cambio porcentual del precio del -0,02%.

A continuación, sigue este esquema.

  1. Empiece con la estimación del rendimiento igual al cupón. (Si trabaja a partir de datos de series temporales, podría utilizar el rendimiento anterior como punto de partida).
  2. Calcula el precio. Si está dentro del margen de error objetivo del precio de mercado, deténgase, ya está hecho.
  3. En caso contrario, calcule la duración del bono con el rendimiento estimado y la desviación del precio estimado con respecto al precio de mercado.
  4. La nueva estimación es ahora el antiguo rendimiento más el cambio necesario para que el nuevo precio coincida con el del mercado, basándose en la relación de duración modificada. Por ejemplo, cambio de rendimiento = -1*(error de precio en términos porcentuales)/(duración modificada).
  5. Con la nueva estimación, vuelva al paso 2.

Este procedimiento elimina la necesidad de generar un límite superior e inferior para el rendimiento, y debería converger más rápidamente. Si se trabaja a partir de una serie temporal, el rendimiento anterior tenderá a estar cerca del rendimiento actual, y la estimación del cambio de precio de la duración será una buena aproximación del cambio de precio real, por lo que la convergencia puede tardar sólo unos pocos pasos.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X