Hi Eric, hi all,
What's the smartest way to do the following in QuantLibXL 0.4.0 : - boostrap a term structure... - based on swap instruments... - whose floating legs rely on a shared Euribor object... - whose associated (forecasting) term structure is the term structure I want to bootstrap ? It used to be fairly straightforward in 0.3.12 but it appears to be more complicated in 0.4.0. The only and somewhat circumvented way I was able to do that is : 1. create a dummy term structure (say TS1) ; 2. create my Euribor object based on TS1 ; 3. create swap rate helpers based on my Euribor object ; 4. create a term structure (say TS2) ; 5. call qlSetEuriborTermStructure to link my Euribor object to TS2 ; 6. we're now ready to boostrap TS2 and price some securities. Thanks in advance. Aurelien ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
Hi Aurelien,
On 3/28/07, Aurelien Chanudet <[hidden email]> wrote: > Hi Eric, hi all, > > What's the smartest way to do the following in QuantLibXL 0.4.0 : > - boostrap a term structure... > - based on swap instruments... > - whose floating legs rely on a shared Euribor object... > - whose associated (forecasting) term structure is the term structure > I want to bootstrap ? > > It used to be fairly straightforward in 0.3.12 but it appears to be > more complicated in 0.4.0. The only and somewhat circumvented way I > was able to do that is : > 1. create a dummy term structure (say TS1) ; > 2. create my Euribor object based on TS1 ; > 3. create swap rate helpers based on my Euribor object ; > 4. create a term structure (say TS2) ; > 5. call qlSetEuriborTermStructure to link my Euribor object to TS2 ; > 6. we're now ready to boostrap TS2 and price some securities. That's basically it. Existing QuantLibXL books work as follows: 1. create a dummy term structure (say TS1) ; 2. create my Euribor object based on TS1 ; 3. create swap rate helpers based on my Euribor object ; 4. create a term structure (say TS2) ; 5. call qlExtrapolatorEnableExtrapolation() on TS2 6. bootstrap TS2 based on the rate helpers 7. call qlSetEuriborTermStructure to relink all enumerated Euribor objects to TS2 ; 8. we're now ready to price some securities. For an example please see Workbooks\OriginalExamples\MarketData.xls Regards, Eric ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
On Mar 28, 2007, at 9:36 PM, eric ehlers wrote: > That's basically it. Existing QuantLibXL books work as follows: > > 1. create a dummy term structure (say TS1) ; > 2. create my Euribor object based on TS1 ; > 3. create swap rate helpers based on my Euribor object ; > 4. create a term structure (say TS2) ; > 5. call qlExtrapolatorEnableExtrapolation() on TS2 > 6. bootstrap TS2 based on the rate helpers > 7. call qlSetEuriborTermStructure to relink all enumerated Euribor > objects to TS2 ; > 8. we're now ready to price some securities. Is 5 necessary? During bootstrapping, the curve is extended at each new node so that it covers all times needed by the corresponding helper. Luigi ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
Hi Luigi,
On 3/28/07, Luigi Ballabio <[hidden email]> wrote: > > On Mar 28, 2007, at 9:36 PM, eric ehlers wrote: > > That's basically it. Existing QuantLibXL books work as follows: > > > > 1. create a dummy term structure (say TS1) ; > > 2. create my Euribor object based on TS1 ; > > 3. create swap rate helpers based on my Euribor object ; > > 4. create a term structure (say TS2) ; > > 5. call qlExtrapolatorEnableExtrapolation() on TS2 > > 6. bootstrap TS2 based on the rate helpers > > 7. call qlSetEuriborTermStructure to relink all enumerated Euribor > > objects to TS2 ; > > 8. we're now ready to price some securities. > > Is 5 necessary? During bootstrapping, the curve is extended at each new > node so that it covers all times needed by the corresponding helper. There is one example workbook which sets up a swaption, and in that case if you neglect to call qlExtrapolatorEnableExtrapolation() then when you ask for the NPV of the swaption it fails with "time (xxx) is past max curve time (yyy)". Calling qlExtrapolatorEnableExtrapolation() fixes the problem so one way or another that call makes a relevant change to the state of the term structure, though I don't understand the details. Regards, Eric ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
On Wed, 2007-03-28 at 22:34 +0200, eric ehlers wrote:
> > > That's basically it. Existing QuantLibXL books work as follows: > > > > > > 1. create a dummy term structure (say TS1) ; > > > 2. create my Euribor object based on TS1 ; > > > 3. create swap rate helpers based on my Euribor object ; > > > 4. create a term structure (say TS2) ; > > > 5. call qlExtrapolatorEnableExtrapolation() on TS2 > > > 6. bootstrap TS2 based on the rate helpers > > > 7. call qlSetEuriborTermStructure to relink all enumerated Euribor > > > objects to TS2 ; > > > 8. we're now ready to price some securities. > > > > Is 5 necessary? During bootstrapping, the curve is extended at each new > > node so that it covers all times needed by the corresponding helper. > > There is one example workbook which sets up a swaption, and in that > case if you neglect to call qlExtrapolatorEnableExtrapolation() then > when you ask for the NPV of the swaption it fails with "time (xxx) is > past max curve time (yyy)". I see. You don't need it during bootstrapping then---which was rather puzzling me---but afterwards, when you try and price a security whose relevant dates extend past the end of the curve. In this case 5 is necessary, but it can be done after 7. Luigi ---------------------------------------- Barker's Proof: Proofreading is more effective after publication. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
In reply to this post by eric ehlers
Hi all,
I am trying to compile QuantLibAddin with cygwin on windows XP. During the process I found that a standard patch (inculded) should be applied. Should I commit the patched file include/log4cxx/helpers/tchar.h or should we add the patch with a name like cygwin-diffs-log4cxx.diff to the repository? Marco Marchioro ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev diffs-log4cxx.diff (2K) Download Attachment |
Hi Marco,
On 3/29/07, Marco Marchioro <[hidden email]> wrote: > Hi all, > I am trying to compile QuantLibAddin with cygwin on windows XP. > During the process I found that a standard patch (inculded) should > be applied. > > Should I commit the patched file include/log4cxx/helpers/tchar.h > or should we add the patch with a name like cygwin-diffs-log4cxx.diff > to the repository? I would prefer the former - once it's in I'll confirm it works for VC and linux. Many thanks for picking this up. Regards, Eric ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
Free forum by Nabble | Edit this page |