1 votos

Quantlib: Se produce un error al intentar fijar el precio de un Swap

He hecho un bootstrap de mi curva basado en los datos del final del día para 24 Nov, 2017

A continuación, utilizo este dato para fijar el precio de un swap fuera del mercado, como se indica a continuación:

swap = VanillaSwap(VanillaSwap.Payer, 10000.0,
                       fixed_schedule,
                       fixed_coupon/100,
                       Thirty360(),
                       floating_schedule,
                       index,
                       0.0, # <-- libor fixing
                       Actual360())

Mis datos de intercambio son:-

Valuation date: 27th Nov, 2017
Fixed_coupon = 2.2575
Maturity Date = 27th Nov, 2027
float freq = Period(3, Months)
fixed freq = Period(6, Months)

Cuando llamo a la siguiente:-

swap.NPV()

Me sale..: {Error de ejecución} 2º tramo: Falta la fijación del Euribor3M Actual/360 para el 23 de noviembre de 2017

¿Significa esto que tengo que pasar una fijación de libor cuando creo mi objeto VanillaSwap?

0 votos

Me encuentro con el mismo problema que el mencionado anteriormente. Sin embargo, he creado un objeto de fecha programada, basado en la fecha de emisión, para obtener automáticamente la fecha anterior a partir de la fecha de hoy. Para un objeto FloatingRate específico, cuando intento obtener el precio limpio, falla con el mensaje de problema. ¿Hay alguna manera de comprobar la fecha cuando estoy añadiendo la fijación evitarlo o corregir la fecha de fijación?

2voto

Brad Tutterow Puntos 5628

Sí, hay que pasar una fijación del Euribor porque su cupón se fija en el pasado con respecto a la fecha de valoración y por tanto su tipo no se puede prever en la curva de tipos de interés. Sin embargo, no se pasa a través del argumento construtor que has comentado en tu código; ese se utiliza para pasar cualquier diferencial adicional (por ejemplo, si el swap de pata flotante pagara Euribor más 10 pb).

La forma de almacenar una fijación pasada es a través del index instancia. Puede hacerlo como

index.addFixing(Date(23,November,2017), rate);

después de lo cual estará disponible para todos Euribor3M instancias.

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