Re: Missing USDLibor6M Actual/360 fixing

Posted by MonkeyMan-3 on
URL: http://quantlib.414.s1.nabble.com/Missing-USDLibor6M-Actual-360-fixing-tp7050p7059.html

Okay, one more follow up about this. What about instances like the following.
Base currency is USD.

Eval Date: May 2, 2005 (Good day in US, holiday in UK)
Settle Date: May 4, 2005 (Good day in US & UK)

Since it is a holiday in the UK, I need to use libor fixings for the previous
good day, which is April 29. Luckily I have this data. Now I get this error:

1st iteration: failed at 1st instrument, maturity May 11th, 2005, reference date
May 4th, 2005: Missing no-fix1W Actual/360 fixing for April 29th, 2005

I don't really understand why my DepositRateHelper didn't use the correct date
in the first place since I passed in the joined calendar. So, I've tried to
correct this by adding fixings for the 29th using the addFixing method in
IborIndex. I figured I'd need to add a fixing for each of 1w, 2w,...,1y libor
rates. Still getting errors about the 1w rate, though.

...
Date fixingDate(29, April, 2005);
JointCalendar usdgbpCalendar = JointCalendar(UnitedStates(), UnitedKingdom());
...
Rate d1wQuote=0.0306625;
...
boost::shared_ptr<RateHelper> d1w(new DepositRateHelper(
            Handle<Quote>(d1wRate),
            1*Weeks, fixingDays,
            usdgbpCalendar, Following,
            true, depositDayCounter));
...
boost::shared_ptr<YieldTermStructure> depoFutSwapTermStructure(
             new PiecewiseYieldCurve<Discount,LogCubic>(
                                       settlementDate, depoFutSwapInstruments,
                                       termStructureDayCounter,
                                       tolerance,
                                       mlcns));
depoFutSwapTermStructure->enableExtrapolation();
RelinkableHandle<YieldTermStructure> discountingTermStructure;
discountingTermStructure.linkTo(depoFutSwapTermStructure);

boost::shared_ptr<IborIndex> w1(new USDLibor(Period(1,Weeks),
discountingTermStructure));
w1->addFixing(fixingDate,d1wQuote);

I still get the error. I have tried calling w1->update() and
discoutingTermStructure->update() hoping that would trigger a recalc. What am I
doing wrong? Thanks again guys.






------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users