1 votos

Entender la curva de descuento en quantlib

Quiero crear un mango TermStructureHandle en python usando quantlib. Utilizo la función DiscountCurve e introduzca la lista de fechas y factores de descuento como se indica a continuación:

dates = [ql.Date(9,4,2018), ql.Date(9,4,2019), ql.Date(9,4,2020)] 
discfactors = [1, 0.9, 0.8] 
dayCount = ql.ActualActual() 
disc_curve = ql.DiscountCurve(dates, discfactors, dayCount) 
term_structure = ql.YieldTermStructureHandle(disc_curve) 

El factor de descuento derivado de esta estructura de plazos para dos años debería ser 0,8, pero en realidad obtengo

print(abs(discfactors[2]-term_strcuture.discount(2)))
0.00018797232855949364

¿Cuál es la razón de esto? Cuando inserto listas más largas de fechas y sus correspondientes factores de descuento, la diferencia sigue aumentando.

0voto

nullDev Puntos 1778

Obsérvese que el FCD entre ql.Fecha(9,4,2018) y ql.Fecha(9,4,2020) es no 2 en el marco de Act/Act, es de 2,0019987.

Así que podría utilizar

  term_strcuture.discount(2.0019987)

o establecer su DayCountConvention a 30/360, bajo el cual el DCF es de hecho 2.

0 votos

O utilice term_structure.discount(ql.Date(9,4,2020)) . Sin embargo, no sugiero utilizar Act/Act o 30/360 como contadores de días para la curva, ya que pueden dar resultados sorprendentes para algunas fechas. Son mejores los simples como Act/360 o Act/365.

0 votos

@LuigiBallabio Tienes toda la razón, Act/360 o Act/365 son mucho más "seguros" (por ejemplo, para los días cercanos a los fines de mes). Pero hay que tener en cuenta que en la realidad se está sujeto a las convenciones del mercado, lo que significa que no siempre se puede optar por la opción "segura".

0 votos

Es cierto. Tenga en cuenta, sin embargo, que si se utilizan las interfaces que toman fechas (como la anterior) el recuento de días que se pasa a la curva sólo se utilizará internamente. Se pueden recuperar los tipos de la curva de acuerdo con cualquier otro recuento de días. Estoy de acuerdo, a veces no es posible tener en cuenta todas las convenciones del mercado de esta manera, pero las veces que sucede son menos de lo que parece a primera vista.

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