Processing math: 100%

5 votos

La curva de la construcción de las fechas de la superposición de impacto en el factor de descuento

Estoy construyendo un extremo corto de la curva libor mediante depósito & fra debido a la superposición de fechas me pongo mal los valores de factor de Descuento, aquí están los datos que estoy trabajando con:

  • Mi fecha de hoy es : 23/10/2019
  • Inicio de mi depósito 6m contrato es 25/10/2019 fecha de finalización se 27/04/2020,día de recuento de act/360 con una tasa de 5%
  • Inicio de mi fra 6x12m contrato es 27/04/2020 fecha de finalización se 27/10/2020,día cuente conv es act/360 con una tasa de 5.2%

Por favor alguien puede explicar cómo manejar la superposición entre el depósito y fra? y cómo para obtener el factor de descuento ?

gracias

3voto

Jamahl Peavey Puntos 39

No hay superposición, el primer instrumento está vinculada a la tasa LIBOR partir de 25/10/2019, el segundo está ligado a la Tasa LIBOR a 27/04/2020.

En aras de la claridad, vamos a suponer que el lugar la fecha y la fecha de hoy son los mismos, que sólo hay una curva (Curva LIBOR).

Se utiliza la definición de los precios comenzando en T y terminando en U como F(0,T,U)=1UT(P(0,T)P(0,U)1)

donde P(0,T) es el cero cupón bono que paga una unidad de tiempo T

T0=25/10/2019,T1=27/04/2020 , T2=27/10/2020

Tenemos que 0.05=10.5(1P(0,T1)1), por lo tanto

P(0,T1)=11+0.5×0.05

Como para el FRA : 0.052=10.5(P(0,T1)P(0,T2)1)

Por lo tanto, P(0,T2)=P(0,T1)11+0.5×0.052

2voto

user1914692 Puntos 113

Sus tarifas no se superponen. Usted tiene 6M (185/360) tasa de 5%. Y un tipo de contrato donde el 5.2% de la tarifa comienza en el final de su contrato inicial (4/27/20) por un período de 6M (183/360).

Su primer contrato que va a ganar (1 + .05*(185/360)) = 1.025694. Luego va a ganar (1 + .052*(183/360)) de ese monto, o 1.052807 durante todo el período de 10/25/19 a 10/27/20. El 1 año (10/27/20) factor de descuento por lo tanto, sería el recíproco de esa cantidad: 1/1.052807 = 0.949842. El 6M (4/27/20) factor de descuento sería 0.974949. El 6M Adelante factor de descuento (a partir de 10/27/20 a 4/27/20) sería 0.974247.

El mercado de dinero equivalente factor de descuento sería 0.95050249, según 370 días entre la fecha de negociación y la final de la FRA, el uso de un año de 365 días. He utilizado 370 días a cuenta del hecho de que la tasa Libor se asienta t+2 y usted puede estar tratando de cuenta para los 2 días en los precios.

0voto

Chris Mc Puntos 31

No hay superposición de fechas debido a que la tasa para los 6M depósito es de una inversión a partir 25/10/2019 y terminando 27/04/2020. La tasa para el FRA es una inversión a partir 27/04/2020 y terminando 27/10/2020. Es por eso que usted puede determinar el factor de descuento (o tasa cero) de 25/10/2019 a 27/10/2020, porque el retorno de una inversión para estas fechas tiene que ser la misma que la combinación de los 6M de Depósito y 6x12 FRA.

Aquí hay dos posibles simple de implementación en python que dar el mismo resultado para ayudarle a averiguar dónde podría estar el problema.


Utilizando el lenguaje python:

from datetime import date, timedelta

today = date(2019,10,23)
spot = today + timedelta(days=2)

deposit_maturity = date(2020, 4, 27)
deposit_dcf = (deposit_maturity - spot).days / 360
df1 = 1 / ( 1+ 0.05 * deposit_dcf)

fra_maturity = date(2020, 10, 27)
fra_dcf = (fra_maturity - deposit_maturity).days / 360
df2 = df1 / (1 + 0.052 * fra_dcf)

print(df1, df2)

La salida es: 0.974949221394719 0.9498417381171556


El uso de QuantLib en python:

import QuantLib as ql
today = ql.Date(23,10,2019)
ql.Settings.instance().evaluationDate = today
helpers = []
helpers.append(
    ql.DepositRateHelper(ql.QuoteHandle(ql.SimpleQuote(0.05)),
                              ql.Period(6, ql.Months), 2,
                              ql.TARGET(), ql.Following, False, ql.Actual360())
)
index = ql.Euribor6M()
helpers.append(
    ql.FraRateHelper(ql.QuoteHandle(ql.SimpleQuote(0.052)), 6, index)
)
curve = ql.PiecewiseLogCubicDiscount(2, ql.TARGET(), helpers,
                                            ql.Actual365Fixed())
for dt in curve.dates():
    print(dt, curve.discount(dt))

La salida es:

October 25th, 2019 1.0
April 27th, 2020 0.9749492213947191
October 27th, 2020 0.9498417381171556

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