Hi All:
I am using the following set of rates to bootstrap a yieldcurve double[] rates = { 0.0022438 , 0.0025469 , 0.0025688 , 0.0026156 , 0.0027969 , 0.0030375 , 0.0036906 , 0.0044063 , 0.0051125 , 0.0057 , 0.0062838 , 0.0068188 , 0.0074125 , 0.0080344 , 0.00471 , 0.007027 , 0.00991 , 0.01303 , 0.016065 , 0.018773 , 0.021 , 0.02282 , 0.0243 , 0.025525 , 0.0266 , 0.027458 , 0.02835 , 0.02889 , 0.02939 , 0.02988 , 0.0302 , 0.0305 , 0.03075 , 0.03096 , 0.031655 , 0.031923 , 0.03222 , 0.031975}; string[] labels = {"ON", "1w", "2w", "1m", "2m", "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", "3y", "4y", "5y", "6y", "7y", "8y", "9y", "10y", "11y", "12y", "13y", "14y", "15y", "16y", "17y", "18y", "19y", "20y", "25y", "30y", "40y", "50y"}; everything is fine until it iterates to the first swap quote. Does anybody know what I might have missed? I am using the following yield curve class new PiecewiseYieldCurve<Discount, LogLinear>( settlementDate, depositFutureSwapInstruments, depositDayCounter, 10e-5)); Thanks ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
On Tue, 2010-10-19 at 09:32 -0500, Leon Sit wrote:
> I am using the following set of rates to bootstrap a yieldcurve [...] Does > anybody know what I might have missed? Can you show the rest of the code? Luigi -- Hofstadter's Law: It always takes longer than you expect, even when you take Hofstadter's Law into account. ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
In reply to this post by Leon Sit
I suspect that you're generating negative forward rates at the point
where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not enabled this as an option:- userconfig.hpp : uncomment out #define QL_NEGATIVE_RATES. You've not provided enough code to see whether your curve has properly defined the cash/swap transition. The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, followed by a 7% 2Y swap. Simon -----Original Message----- From: Leon Sit [mailto:[hidden email]] Sent: 19 October 2010 15:33 To: [hidden email] Subject: [Quantlib-users] Cannot bootstrap a yieldcurve Hi All: I am using the following set of rates to bootstrap a yieldcurve double[] rates = { 0.0022438 , 0.0025469 , 0.0025688 , 0.0026156 , 0.0027969 , 0.0030375 , 0.0036906 , 0.0044063 , 0.0051125 , 0.0057 , 0.0062838 , 0.0068188 , 0.0074125 , 0.0080344 , 0.00471 , 0.007027 , 0.00991 , 0.01303 , 0.016065 , 0.018773 , 0.021 , 0.02282 , 0.0243 , 0.025525 , 0.0266 , 0.027458 , 0.02835 , 0.02889 , 0.02939 , 0.02988 , 0.0302 , 0.0305 , 0.03075 , 0.03096 , 0.031655 , 0.031923 , 0.03222 , 0.031975}; string[] labels = {"ON", "1w", "2w", "1m", "2m", "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", "3y", "4y", "5y", "6y", "7y", "8y", "9y", "10y", "11y", "12y", "13y", "14y", "15y", "16y", "17y", "18y", "19y", "20y", "25y", "30y", "40y", "50y"}; everything is fine until it iterates to the first swap quote. Does anybody know what I might have missed? I am using the following yield curve class new PiecewiseYieldCurve<Discount, LogLinear>( settlementDate, depositFutureSwapInstruments, depositDayCounter, 10e-5)); Thanks ------------------------------------------------------------------------ ------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from The Financial Services Authority (FSA) 25 The North Colonnade, Canary Wharf, London E14 5HS United Kingdom Registered as a Limited Company in England and Wales No.1920623. Registered Office as above Switchboard: 020 7066 1000 Web Site: http://www.fsa.gov.uk ***************************************************************** ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
In reply to this post by Luigi Ballabio
I am using Quantlib 1.0
The actual code is mangled with other code so it is hard to show. The function in question is int yield_curve_setup(YieldCurve* yieldcurve, const unsigned& quote_size, const long& settlementDate_int, const string* maturitiesLabel, const double* quotes, const RateTypeEnum_C* rateTypes) { try { yieldcurve->rateTypes = new RateTypeEnum_C[quote_size]; std::copy(rateTypes, rateTypes + quote_size, yieldcurve->rateTypes); //for now assume that we have the quote with the same format as quantlib yieldcurve->calendar = TARGET(); DayCounter depositDayCounter = Actual360(); Date settlementDate(settlementDate_int); int fixingDays = 0; boost::shared_ptr<RateHelper> rate; std::vector<boost::shared_ptr<RateHelper> > depositeFutureSwapInstruments; Date imm = IMM::nextDate(settlementDate, true); boost::shared_ptr<IborIndex> swFloatingLegIndex(new Euribor6M); boost::shared_ptr<std::vector<boost::shared_ptr<RateHelper> > > depositFutureSwapInstruments(new std::vector<boost::shared_ptr<RateHelper> >); for( unsigned i = 0; i < quote_size; ++i) { TimeUnit timeunit; int length; parseLabel(maturitiesLabel[i], length, timeunit); if(rateTypes[i] == DepositQuote) { boost::shared_ptr<Quote> depositRate(new SimpleQuote(quotes[i])); rate.reset( new DepositRateHelper( Handle<Quote>(depositRate), length* timeunit, fixingDays, yieldcurve->calendar, ModifiedFollowing, true, depositDayCounter)); } else if(rateTypes[i] == SwapQuote) { Frequency swFixedLegFrequency = Annual; BusinessDayConvention swFixedLegConvention = Unadjusted; DayCounter swFixedLegDayCounter = Thirty360(Thirty360::USA); boost::shared_ptr<Quote> swapRate(new SimpleQuote(quotes[i])); rate.reset( new SwapRateHelper( Handle<Quote>(swapRate), length*timeunit, yieldcurve->calendar, swFixedLegFrequency, swFixedLegConvention, swFixedLegDayCounter, swFloatingLegIndex)); } else if(rateTypes[i] == FutureQuote) { Integer futMonths = 3; boost::shared_ptr<Quote> futurePrice(new SimpleQuote(quotes[i])); rate.reset(new FuturesRateHelper( Handle<Quote>(futurePrice), imm, futMonths, yieldcurve->calendar, ModifiedFollowing, true, depositDayCounter)); imm = IMM::nextDate(imm+1); } depositFutureSwapInstruments->push_back(rate); } boost::shared_ptr<YieldTermStructure> depoFutureSwapStructure( new PiecewiseYieldCurve<Discount, LogLinear>( settlementDate, *depositFutureSwapInstruments, depositDayCounter, 10e-5)); yieldcurve->discountingTermStructure.linkTo(depoFutureSwapStructure); return 1; } catch(std::exception& e) { std::cerr << e.what() << std::endl; return 0; } catch (...) { // have to catch all the pokemon exception std::cerr << "Unknown Yield Curve Exception" << std::endl; return 0; } }; with YieldCurve defined as typedef struct { // double* quotes; RateTypeEnum_C* rateTypes; // boost::shared_ptr<std::vector<boost::shared_ptr<RateHelper> > > depositFutureSwapInstruments; Calendar calendar; RelinkableHandle<YieldTermStructure> discountingTermStructure; }YieldCurve; When the data above passed to this function, everything is fine and runs without a problem. However then I try to call maxDate() from this curve, I get a bootstrap exception like stated 1st iteration: failed at 15th instrument, maturity October 21st, 2011, reference date August 15th, 2010: root not bracketed: f[2.22045e-016,0.992176] -> [-4.501710e+015,-2.753185e-003] On Tue, Oct 19, 2010 at 9:38 AM, Luigi Ballabio <[hidden email]> wrote: > On Tue, 2010-10-19 at 09:32 -0500, Leon Sit wrote: >> I am using the following set of rates to bootstrap a yieldcurve [...] Does >> anybody know what I might have missed? > > Can you show the rest of the code? > > Luigi > > > -- > > Hofstadter's Law: > It always takes longer than you expect, even when you take > Hofstadter's Law into account. > > > ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
In reply to this post by Leon Sit
Sorry, all those figures should be divided by 10... e.g. 0.8% rather
than 8%. The same principle applies. -----Original Message----- From: Simon Ibbotson Sent: 19 October 2010 15:50 To: 'Leon Sit'; [hidden email] Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve I suspect that you're generating negative forward rates at the point where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not enabled this as an option:- userconfig.hpp : uncomment out #define QL_NEGATIVE_RATES. You've not provided enough code to see whether your curve has properly defined the cash/swap transition. The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, followed by a 7% 2Y swap. Simon -----Original Message----- From: Leon Sit [mailto:[hidden email]] Sent: 19 October 2010 15:33 To: [hidden email] Subject: [Quantlib-users] Cannot bootstrap a yieldcurve Hi All: I am using the following set of rates to bootstrap a yieldcurve double[] rates = { 0.0022438 , 0.0025469 , 0.0025688 , 0.0026156 , 0.0027969 , 0.0030375 , 0.0036906 , 0.0044063 , 0.0051125 , 0.0057 , 0.0062838 , 0.0068188 , 0.0074125 , 0.0080344 , 0.00471 , 0.007027 , 0.00991 , 0.01303 , 0.016065 , 0.018773 , 0.021 , 0.02282 , 0.0243 , 0.025525 , 0.0266 , 0.027458 , 0.02835 , 0.02889 , 0.02939 , 0.02988 , 0.0302 , 0.0305 , 0.03075 , 0.03096 , 0.031655 , 0.031923 , 0.03222 , 0.031975}; string[] labels = {"ON", "1w", "2w", "1m", "2m", "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", "3y", "4y", "5y", "6y", "7y", "8y", "9y", "10y", "11y", "12y", "13y", "14y", "15y", "16y", "17y", "18y", "19y", "20y", "25y", "30y", "40y", "50y"}; everything is fine until it iterates to the first swap quote. Does anybody know what I might have missed? I am using the following yield curve class new PiecewiseYieldCurve<Discount, LogLinear>( settlementDate, depositFutureSwapInstruments, depositDayCounter, 10e-5)); Thanks ------------------------------------------------------------------------ ------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from The Financial Services Authority (FSA) 25 The North Colonnade, Canary Wharf, London E14 5HS United Kingdom Registered as a Limited Company in England and Wales No.1920623. Registered Office as above Switchboard: 020 7066 1000 Web Site: http://www.fsa.gov.uk ***************************************************************** ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
I noticed that issue too. However these are a set of real quote from
market so I was hoping that I did not use quantlib right instead of data issue. What is the consequence of allowing negative forward rate for other parts of quantlib if I am only working with swap, futures, and equity derivatives? Thanks. On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson <[hidden email]> wrote: > Sorry, all those figures should be divided by 10... e.g. 0.8% rather > than 8%. > > The same principle applies. > > -----Original Message----- > From: Simon Ibbotson > Sent: 19 October 2010 15:50 > To: 'Leon Sit'; [hidden email] > Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve > > I suspect that you're generating negative forward rates at the point > where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not > enabled this as an option:- userconfig.hpp : uncomment out #define > QL_NEGATIVE_RATES. > > You've not provided enough code to see whether your curve has properly > defined the cash/swap transition. > > The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, > followed by a 7% 2Y swap. > > Simon > > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 15:33 > To: [hidden email] > Subject: [Quantlib-users] Cannot bootstrap a yieldcurve > > Hi All: > > I am using the following set of rates to bootstrap a yieldcurve > > double[] rates = { > 0.0022438 , > 0.0025469 , > 0.0025688 , > 0.0026156 , > 0.0027969 , > 0.0030375 , > 0.0036906 , > 0.0044063 , > 0.0051125 , > 0.0057 , > 0.0062838 , > 0.0068188 , > 0.0074125 , > 0.0080344 , > 0.00471 , > 0.007027 , > 0.00991 , > 0.01303 , > 0.016065 , > 0.018773 , > 0.021 , > 0.02282 , > 0.0243 , > 0.025525 , > 0.0266 , > 0.027458 , > 0.02835 , > 0.02889 , > 0.02939 , > 0.02988 , > 0.0302 , > 0.0305 , > 0.03075 , > 0.03096 , > 0.031655 , > 0.031923 , > 0.03222 , > 0.031975}; > > string[] labels = {"ON", > "1w", > "2w", > "1m", > "2m", > "3m", > "4m", > "5m", > "6m", > "7m", > "8m", > "9m", > "10m", > "11m", > "1y", > "2y", > "3y", > "4y", > "5y", > "6y", > "7y", > "8y", > "9y", > "10y", > "11y", > "12y", > "13y", > "14y", > "15y", > "16y", > "17y", > "18y", > "19y", > "20y", > "25y", > "30y", > "40y", > "50y"}; > > everything is fine until it iterates to the first swap quote. Does > anybody know what I might have missed? > > I am using the following yield curve class > > new PiecewiseYieldCurve<Discount, LogLinear>( > settlementDate, depositFutureSwapInstruments, > depositDayCounter, 10e-5)); > > Thanks > > ------------------------------------------------------------------------ > ------ > Download new Adobe(R) Flash(R) Builder(TM) 4 > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > Flex(R) Builder(TM)) enable the development of rich applications that > run > across multiple browsers and platforms. Download your free trials today! > http://p.sf.net/sfu/adobe-dev2dev > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users > > > > This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. > > The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. > This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from > > The Financial Services Authority (FSA) > 25 The North Colonnade, > Canary Wharf, > London > E14 5HS > United Kingdom > > Registered as a Limited Company in England and Wales No.1920623. > Registered Office as above > > Switchboard: 020 7066 1000 > Web Site: http://www.fsa.gov.uk > ***************************************************************** > > ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves.
-----Original Message----- From: Leon Sit [mailto:[hidden email]] Sent: 19 October 2010 16:02 To: Simon Ibbotson Cc: [hidden email] Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve I noticed that issue too. However these are a set of real quote from market so I was hoping that I did not use quantlib right instead of data issue. What is the consequence of allowing negative forward rate for other parts of quantlib if I am only working with swap, futures, and equity derivatives? Thanks. On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson <[hidden email]> wrote: > Sorry, all those figures should be divided by 10... e.g. 0.8% rather > than 8%. > > The same principle applies. > > -----Original Message----- > From: Simon Ibbotson > Sent: 19 October 2010 15:50 > To: 'Leon Sit'; [hidden email] > Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve > > I suspect that you're generating negative forward rates at the point > where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not > enabled this as an option:- userconfig.hpp : uncomment out #define > QL_NEGATIVE_RATES. > > You've not provided enough code to see whether your curve has properly > defined the cash/swap transition. > > The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, > followed by a 7% 2Y swap. > > Simon > > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 15:33 > To: [hidden email] > Subject: [Quantlib-users] Cannot bootstrap a yieldcurve > > Hi All: > > I am using the following set of rates to bootstrap a yieldcurve > > double[] rates = { > 0.0022438 , > 0.0025469 , > 0.0025688 , > 0.0026156 , > 0.0027969 , > 0.0030375 , > 0.0036906 , > 0.0044063 , > 0.0051125 , > 0.0057 , > 0.0062838 , > 0.0068188 , > 0.0074125 , > 0.0080344 , > 0.00471 , > 0.007027 , > 0.00991 , > 0.01303 , > 0.016065 , > 0.018773 , > 0.021 , > 0.02282 , > 0.0243 , > 0.025525 , > 0.0266 , > 0.027458 , > 0.02835 , > 0.02889 , > 0.02939 , > 0.02988 , > 0.0302 , > 0.0305 , > 0.03075 , > 0.03096 , > 0.031655 , > 0.031923 , > 0.03222 , > 0.031975}; > > string[] labels = {"ON", > "1w", > "2w", > "1m", > "2m", > "3m", > "4m", > "5m", > "6m", > "7m", > "8m", > "9m", > "10m", > "11m", > "1y", > "2y", > "3y", > "4y", > "5y", > "6y", > "7y", > "8y", > "9y", > "10y", > "11y", > "12y", > "13y", > "14y", > "15y", > "16y", > "17y", > "18y", > "19y", > "20y", > "25y", > "30y", > "40y", > "50y"}; > > everything is fine until it iterates to the first swap quote. Does > anybody know what I might have missed? > > I am using the following yield curve class > > new PiecewiseYieldCurve<Discount, LogLinear>( > settlementDate, depositFutureSwapInstruments, > depositDayCounter, 10e-5)); > > Thanks > > ------------------------------------------------------------------------ > ------ > Download new Adobe(R) Flash(R) Builder(TM) 4 > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > Flex(R) Builder(TM)) enable the development of rich applications that > run > across multiple browsers and platforms. Download your free trials today! > http://p.sf.net/sfu/adobe-dev2dev > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users > > > > This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. > > The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. > This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from > > The Financial Services Authority (FSA) > 25 The North Colonnade, > Canary Wharf, > London > E14 5HS > United Kingdom > > Registered as a Limited Company in England and Wales No.1920623. > Registered Office as above > > Switchboard: 020 7066 1000 > Web Site: http://www.fsa.gov.uk > ***************************************************************** > > ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
I will give that a try later. My boss says negative forward is not
reasonable for our team :) Thanks a lot for the issue. Leon On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson <[hidden email]> wrote: > See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 16:02 > To: Simon Ibbotson > Cc: [hidden email] > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > I noticed that issue too. However these are a set of real quote from > market so I was hoping that I did not use quantlib right instead of > data issue. What is the consequence of allowing negative forward rate > for other parts of quantlib if I am only working with swap, futures, > and equity derivatives? > > Thanks. > > > On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson > <[hidden email]> wrote: >> Sorry, all those figures should be divided by 10... e.g. 0.8% rather >> than 8%. >> >> The same principle applies. >> >> -----Original Message----- >> From: Simon Ibbotson >> Sent: 19 October 2010 15:50 >> To: 'Leon Sit'; [hidden email] >> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> I suspect that you're generating negative forward rates at the point >> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not >> enabled this as an option:- userconfig.hpp : uncomment out #define >> QL_NEGATIVE_RATES. >> >> You've not provided enough code to see whether your curve has properly >> defined the cash/swap transition. >> >> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, >> followed by a 7% 2Y swap. >> >> Simon >> >> >> -----Original Message----- >> From: Leon Sit [mailto:[hidden email]] >> Sent: 19 October 2010 15:33 >> To: [hidden email] >> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> Hi All: >> >> I am using the following set of rates to bootstrap a yieldcurve >> >> double[] rates = { >> 0.0022438 , >> 0.0025469 , >> 0.0025688 , >> 0.0026156 , >> 0.0027969 , >> 0.0030375 , >> 0.0036906 , >> 0.0044063 , >> 0.0051125 , >> 0.0057 , >> 0.0062838 , >> 0.0068188 , >> 0.0074125 , >> 0.0080344 , >> 0.00471 , >> 0.007027 , >> 0.00991 , >> 0.01303 , >> 0.016065 , >> 0.018773 , >> 0.021 , >> 0.02282 , >> 0.0243 , >> 0.025525 , >> 0.0266 , >> 0.027458 , >> 0.02835 , >> 0.02889 , >> 0.02939 , >> 0.02988 , >> 0.0302 , >> 0.0305 , >> 0.03075 , >> 0.03096 , >> 0.031655 , >> 0.031923 , >> 0.03222 , >> 0.031975}; >> >> string[] labels = {"ON", >> "1w", >> "2w", >> "1m", >> "2m", >> "3m", >> "4m", >> "5m", >> "6m", >> "7m", >> "8m", >> "9m", >> "10m", >> "11m", >> "1y", >> "2y", >> "3y", >> "4y", >> "5y", >> "6y", >> "7y", >> "8y", >> "9y", >> "10y", >> "11y", >> "12y", >> "13y", >> "14y", >> "15y", >> "16y", >> "17y", >> "18y", >> "19y", >> "20y", >> "25y", >> "30y", >> "40y", >> "50y"}; >> >> everything is fine until it iterates to the first swap quote. Does >> anybody know what I might have missed? >> >> I am using the following yield curve class >> >> new PiecewiseYieldCurve<Discount, LogLinear>( >> settlementDate, depositFutureSwapInstruments, >> depositDayCounter, 10e-5)); >> >> Thanks >> >> ------------------------------------------------------------------------ >> ------ >> Download new Adobe(R) Flash(R) Builder(TM) 4 >> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >> Flex(R) Builder(TM)) enable the development of rich applications that >> run >> across multiple browsers and platforms. Download your free trials today! >> http://p.sf.net/sfu/adobe-dev2dev >> _______________________________________________ >> QuantLib-users mailing list >> [hidden email] >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> >> >> >> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. >> >> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. >> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from >> >> The Financial Services Authority (FSA) >> 25 The North Colonnade, >> Canary Wharf, >> London >> E14 5HS >> United Kingdom >> >> Registered as a Limited Company in England and Wales No.1920623. >> Registered Office as above >> >> Switchboard: 020 7066 1000 >> Web Site: http://www.fsa.gov.uk >> ***************************************************************** >> >> > ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
For reference, just because these quotes were seen in the market does not mean that they are liquid or even valid quotes!
Many banks only give out a live quote once a day (for Libor) and then update the other non-traded rates on an ad-hoc basis. 1Y swaps are not very liquid (in many currencies) as most banks hedge their positions with futures at the short end. -----Original Message----- From: Leon Sit [mailto:[hidden email]] Sent: 19 October 2010 16:14 To: Simon Ibbotson Cc: [hidden email] Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve I will give that a try later. My boss says negative forward is not reasonable for our team :) Thanks a lot for the issue. Leon On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson <[hidden email]> wrote: > See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 16:02 > To: Simon Ibbotson > Cc: [hidden email] > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > I noticed that issue too. However these are a set of real quote from > market so I was hoping that I did not use quantlib right instead of > data issue. What is the consequence of allowing negative forward rate > for other parts of quantlib if I am only working with swap, futures, > and equity derivatives? > > Thanks. > > > On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson > <[hidden email]> wrote: >> Sorry, all those figures should be divided by 10... e.g. 0.8% rather >> than 8%. >> >> The same principle applies. >> >> -----Original Message----- >> From: Simon Ibbotson >> Sent: 19 October 2010 15:50 >> To: 'Leon Sit'; [hidden email] >> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> I suspect that you're generating negative forward rates at the point >> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not >> enabled this as an option:- userconfig.hpp : uncomment out #define >> QL_NEGATIVE_RATES. >> >> You've not provided enough code to see whether your curve has properly >> defined the cash/swap transition. >> >> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, >> followed by a 7% 2Y swap. >> >> Simon >> >> >> -----Original Message----- >> From: Leon Sit [mailto:[hidden email]] >> Sent: 19 October 2010 15:33 >> To: [hidden email] >> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> Hi All: >> >> I am using the following set of rates to bootstrap a yieldcurve >> >> double[] rates = { >> 0.0022438 , >> 0.0025469 , >> 0.0025688 , >> 0.0026156 , >> 0.0027969 , >> 0.0030375 , >> 0.0036906 , >> 0.0044063 , >> 0.0051125 , >> 0.0057 , >> 0.0062838 , >> 0.0068188 , >> 0.0074125 , >> 0.0080344 , >> 0.00471 , >> 0.007027 , >> 0.00991 , >> 0.01303 , >> 0.016065 , >> 0.018773 , >> 0.021 , >> 0.02282 , >> 0.0243 , >> 0.025525 , >> 0.0266 , >> 0.027458 , >> 0.02835 , >> 0.02889 , >> 0.02939 , >> 0.02988 , >> 0.0302 , >> 0.0305 , >> 0.03075 , >> 0.03096 , >> 0.031655 , >> 0.031923 , >> 0.03222 , >> 0.031975}; >> >> string[] labels = {"ON", >> "1w", >> "2w", >> "1m", >> "2m", >> "3m", >> "4m", >> "5m", >> "6m", >> "7m", >> "8m", >> "9m", >> "10m", >> "11m", >> "1y", >> "2y", >> "3y", >> "4y", >> "5y", >> "6y", >> "7y", >> "8y", >> "9y", >> "10y", >> "11y", >> "12y", >> "13y", >> "14y", >> "15y", >> "16y", >> "17y", >> "18y", >> "19y", >> "20y", >> "25y", >> "30y", >> "40y", >> "50y"}; >> >> everything is fine until it iterates to the first swap quote. Does >> anybody know what I might have missed? >> >> I am using the following yield curve class >> >> new PiecewiseYieldCurve<Discount, LogLinear>( >> settlementDate, depositFutureSwapInstruments, >> depositDayCounter, 10e-5)); >> >> Thanks >> >> ------------------------------------------------------------------------ >> ------ >> Download new Adobe(R) Flash(R) Builder(TM) 4 >> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >> Flex(R) Builder(TM)) enable the development of rich applications that >> run >> across multiple browsers and platforms. Download your free trials today! >> http://p.sf.net/sfu/adobe-dev2dev >> _______________________________________________ >> QuantLib-users mailing list >> [hidden email] >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> >> >> >> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. >> >> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. >> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from >> >> The Financial Services Authority (FSA) >> 25 The North Colonnade, >> Canary Wharf, >> London >> E14 5HS >> United Kingdom >> >> Registered as a Limited Company in England and Wales No.1920623. >> Registered Office as above >> >> Switchboard: 020 7066 1000 >> Web Site: http://www.fsa.gov.uk >> ***************************************************************** >> >> > ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
1Y swap is based on 3M euribor, so it's comparable with 3 months rate
no way it's going to be in line with a 11M rate with the current market conditions. people keep bootstrapping one single curve with inhomogeneous rates, but it's not possible anymore. Attend the QuantLib forum for more details on this issue (or wait for the slides) ciao -- Nando On Tue, Oct 19, 2010 at 5:18 PM, Simon Ibbotson <[hidden email]> wrote: > For reference, just because these quotes were seen in the market does not mean that they are liquid or even valid quotes! > Many banks only give out a live quote once a day (for Libor) and then update the other non-traded rates on an ad-hoc basis. > > 1Y swaps are not very liquid (in many currencies) as most banks hedge their positions with futures at the short end. > > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 16:14 > To: Simon Ibbotson > Cc: [hidden email] > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > I will give that a try later. My boss says negative forward is not > reasonable for our team :) > > Thanks a lot for the issue. > > Leon > > > > On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson > <[hidden email]> wrote: >> See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. >> >> -----Original Message----- >> From: Leon Sit [mailto:[hidden email]] >> Sent: 19 October 2010 16:02 >> To: Simon Ibbotson >> Cc: [hidden email] >> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> I noticed that issue too. However these are a set of real quote from >> market so I was hoping that I did not use quantlib right instead of >> data issue. What is the consequence of allowing negative forward rate >> for other parts of quantlib if I am only working with swap, futures, >> and equity derivatives? >> >> Thanks. >> >> >> On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson >> <[hidden email]> wrote: >>> Sorry, all those figures should be divided by 10... e.g. 0.8% rather >>> than 8%. >>> >>> The same principle applies. >>> >>> -----Original Message----- >>> From: Simon Ibbotson >>> Sent: 19 October 2010 15:50 >>> To: 'Leon Sit'; [hidden email] >>> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >>> >>> I suspect that you're generating negative forward rates at the point >>> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not >>> enabled this as an option:- userconfig.hpp : uncomment out #define >>> QL_NEGATIVE_RATES. >>> >>> You've not provided enough code to see whether your curve has properly >>> defined the cash/swap transition. >>> >>> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, >>> followed by a 7% 2Y swap. >>> >>> Simon >>> >>> >>> -----Original Message----- >>> From: Leon Sit [mailto:[hidden email]] >>> Sent: 19 October 2010 15:33 >>> To: [hidden email] >>> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >>> >>> Hi All: >>> >>> I am using the following set of rates to bootstrap a yieldcurve >>> >>> double[] rates = { >>> 0.0022438 , >>> 0.0025469 , >>> 0.0025688 , >>> 0.0026156 , >>> 0.0027969 , >>> 0.0030375 , >>> 0.0036906 , >>> 0.0044063 , >>> 0.0051125 , >>> 0.0057 , >>> 0.0062838 , >>> 0.0068188 , >>> 0.0074125 , >>> 0.0080344 , >>> 0.00471 , >>> 0.007027 , >>> 0.00991 , >>> 0.01303 , >>> 0.016065 , >>> 0.018773 , >>> 0.021 , >>> 0.02282 , >>> 0.0243 , >>> 0.025525 , >>> 0.0266 , >>> 0.027458 , >>> 0.02835 , >>> 0.02889 , >>> 0.02939 , >>> 0.02988 , >>> 0.0302 , >>> 0.0305 , >>> 0.03075 , >>> 0.03096 , >>> 0.031655 , >>> 0.031923 , >>> 0.03222 , >>> 0.031975}; >>> >>> string[] labels = {"ON", >>> "1w", >>> "2w", >>> "1m", >>> "2m", >>> "3m", >>> "4m", >>> "5m", >>> "6m", >>> "7m", >>> "8m", >>> "9m", >>> "10m", >>> "11m", >>> "1y", >>> "2y", >>> "3y", >>> "4y", >>> "5y", >>> "6y", >>> "7y", >>> "8y", >>> "9y", >>> "10y", >>> "11y", >>> "12y", >>> "13y", >>> "14y", >>> "15y", >>> "16y", >>> "17y", >>> "18y", >>> "19y", >>> "20y", >>> "25y", >>> "30y", >>> "40y", >>> "50y"}; >>> >>> everything is fine until it iterates to the first swap quote. Does >>> anybody know what I might have missed? >>> >>> I am using the following yield curve class >>> >>> new PiecewiseYieldCurve<Discount, LogLinear>( >>> settlementDate, depositFutureSwapInstruments, >>> depositDayCounter, 10e-5)); >>> >>> Thanks >>> >>> ------------------------------------------------------------------------ >>> ------ >>> Download new Adobe(R) Flash(R) Builder(TM) 4 >>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >>> Flex(R) Builder(TM)) enable the development of rich applications that >>> run >>> across multiple browsers and platforms. Download your free trials today! >>> http://p.sf.net/sfu/adobe-dev2dev >>> _______________________________________________ >>> QuantLib-users mailing list >>> [hidden email] >>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>> >>> >>> >>> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. >>> >>> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. >>> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from >>> >>> The Financial Services Authority (FSA) >>> 25 The North Colonnade, >>> Canary Wharf, >>> London >>> E14 5HS >>> United Kingdom >>> >>> Registered as a Limited Company in England and Wales No.1920623. >>> Registered Office as above >>> >>> Switchboard: 020 7066 1000 >>> Web Site: http://www.fsa.gov.uk >>> ***************************************************************** >>> >>> >> > > ------------------------------------------------------------------------------ > Download new Adobe(R) Flash(R) Builder(TM) 4 > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > Flex(R) Builder(TM)) enable the development of rich applications that run > across multiple browsers and platforms. Download your free trials today! > http://p.sf.net/sfu/adobe-dev2dev > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users > ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Hi Nando,
Nowhere does the OP state that the curve is for EUR, so it could have a 6M or even a 12M floating rate (not to mention 90D, 12W or 4W markets). However, it is likely (given the values) that it does include a 3M basis. Cheers, Simon -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Ferdinando Ametrano Sent: 25 October 2010 11:56 To: Simon Ibbotson Cc: Leon Sit; [hidden email] Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve 1Y swap is based on 3M euribor, so it's comparable with 3 months rate no way it's going to be in line with a 11M rate with the current market conditions. people keep bootstrapping one single curve with inhomogeneous rates, but it's not possible anymore. Attend the QuantLib forum for more details on this issue (or wait for the slides) ciao -- Nando On Tue, Oct 19, 2010 at 5:18 PM, Simon Ibbotson <[hidden email]> wrote: > For reference, just because these quotes were seen in the market does not mean that they are liquid or even valid quotes! > Many banks only give out a live quote once a day (for Libor) and then update the other non-traded rates on an ad-hoc basis. > > 1Y swaps are not very liquid (in many currencies) as most banks hedge their positions with futures at the short end. > > > -----Original Message----- > From: Leon Sit [mailto:[hidden email]] > Sent: 19 October 2010 16:14 > To: Simon Ibbotson > Cc: [hidden email] > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > I will give that a try later. My boss says negative forward is not > reasonable for our team :) > > Thanks a lot for the issue. > > Leon > > > > On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson > <[hidden email]> wrote: >> See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. >> >> -----Original Message----- >> From: Leon Sit [mailto:[hidden email]] >> Sent: 19 October 2010 16:02 >> To: Simon Ibbotson >> Cc: [hidden email] >> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> I noticed that issue too. However these are a set of real quote from >> market so I was hoping that I did not use quantlib right instead of >> data issue. What is the consequence of allowing negative forward rate >> for other parts of quantlib if I am only working with swap, futures, >> and equity derivatives? >> >> Thanks. >> >> >> On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson >> <[hidden email]> wrote: >>> Sorry, all those figures should be divided by 10... e.g. 0.8% rather >>> than 8%. >>> >>> The same principle applies. >>> >>> -----Original Message----- >>> From: Simon Ibbotson >>> Sent: 19 October 2010 15:50 >>> To: 'Leon Sit'; [hidden email] >>> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >>> >>> I suspect that you're generating negative forward rates at the point >>> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not >>> enabled this as an option:- userconfig.hpp : uncomment out #define >>> QL_NEGATIVE_RATES. >>> >>> You've not provided enough code to see whether your curve has properly >>> defined the cash/swap transition. >>> >>> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, >>> followed by a 7% 2Y swap. >>> >>> Simon >>> >>> >>> -----Original Message----- >>> From: Leon Sit [mailto:[hidden email]] >>> Sent: 19 October 2010 15:33 >>> To: [hidden email] >>> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >>> >>> Hi All: >>> >>> I am using the following set of rates to bootstrap a yieldcurve >>> >>> double[] rates = { >>> 0.0022438 , >>> 0.0025469 , >>> 0.0025688 , >>> 0.0026156 , >>> 0.0027969 , >>> 0.0030375 , >>> 0.0036906 , >>> 0.0044063 , >>> 0.0051125 , >>> 0.0057 , >>> 0.0062838 , >>> 0.0068188 , >>> 0.0074125 , >>> 0.0080344 , >>> 0.00471 , >>> 0.007027 , >>> 0.00991 , >>> 0.01303 , >>> 0.016065 , >>> 0.018773 , >>> 0.021 , >>> 0.02282 , >>> 0.0243 , >>> 0.025525 , >>> 0.0266 , >>> 0.027458 , >>> 0.02835 , >>> 0.02889 , >>> 0.02939 , >>> 0.02988 , >>> 0.0302 , >>> 0.0305 , >>> 0.03075 , >>> 0.03096 , >>> 0.031655 , >>> 0.031923 , >>> 0.03222 , >>> 0.031975}; >>> >>> string[] labels = {"ON", >>> "1w", >>> "2w", >>> "1m", >>> "2m", >>> "3m", >>> "4m", >>> "5m", >>> "6m", >>> "7m", >>> "8m", >>> "9m", >>> "10m", >>> "11m", >>> "1y", >>> "2y", >>> "3y", >>> "4y", >>> "5y", >>> "6y", >>> "7y", >>> "8y", >>> "9y", >>> "10y", >>> "11y", >>> "12y", >>> "13y", >>> "14y", >>> "15y", >>> "16y", >>> "17y", >>> "18y", >>> "19y", >>> "20y", >>> "25y", >>> "30y", >>> "40y", >>> "50y"}; >>> >>> everything is fine until it iterates to the first swap quote. Does >>> anybody know what I might have missed? >>> >>> I am using the following yield curve class >>> >>> new PiecewiseYieldCurve<Discount, LogLinear>( >>> settlementDate, depositFutureSwapInstruments, >>> depositDayCounter, 10e-5)); >>> >>> Thanks >>> >>> ------------------------------------------------------------------------ >>> ------ >>> Download new Adobe(R) Flash(R) Builder(TM) 4 >>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >>> Flex(R) Builder(TM)) enable the development of rich applications that >>> run >>> across multiple browsers and platforms. Download your free trials today! >>> http://p.sf.net/sfu/adobe-dev2dev >>> _______________________________________________ >>> QuantLib-users mailing list >>> [hidden email] >>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>> >>> >>> >>> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. >>> >>> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. >>> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from >>> >>> The Financial Services Authority (FSA) >>> 25 The North Colonnade, >>> Canary Wharf, >>> London >>> E14 5HS >>> United Kingdom >>> >>> Registered as a Limited Company in England and Wales No.1920623. >>> Registered Office as above >>> >>> Switchboard: 020 7066 1000 >>> Web Site: http://www.fsa.gov.uk >>> ***************************************************************** >>> >>> >> > > ------------------------------------------------------------------------------ > Download new Adobe(R) Flash(R) Builder(TM) 4 > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > Flex(R) Builder(TM)) enable the development of rich applications that run > across multiple browsers and platforms. Download your free trials today! > http://p.sf.net/sfu/adobe-dev2dev > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users > ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Hi Simon
you're right, anyway whatever major currency is considered (at least EUR, USD, GBP) a curve built using "ON", "1w", "2w", "1m", "2m", "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", etc is very much old school inhomogeneous approach Unless it's used for estimating some funding cost (and in this case the xY swap should be spreaded) there is no way you can bootstrap such a curve in the current market conditions without negative rates ciao -- Nando On Mon, Oct 25, 2010 at 1:01 PM, Simon Ibbotson <[hidden email]> wrote: > > Hi Nando, > > Nowhere does the OP state that the curve is for EUR, so it could have a 6M or even a 12M floating rate (not to mention 90D, 12W or 4W markets). However, it is likely (given the values) that it does include a 3M basis. > > Cheers, > Simon > > > -----Original Message----- > From: [hidden email] [mailto:[hidden email]] On Behalf Of Ferdinando Ametrano > Sent: 25 October 2010 11:56 > To: Simon Ibbotson > Cc: Leon Sit; [hidden email] > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > 1Y swap is based on 3M euribor, so it's comparable with 3 months rate > > no way it's going to be in line with a 11M rate with the current > market conditions. > > people keep bootstrapping one single curve with inhomogeneous rates, > but it's not possible anymore. > > Attend the QuantLib forum for more details on this issue (or wait for > the slides) > > ciao -- Nando > > > On Tue, Oct 19, 2010 at 5:18 PM, Simon Ibbotson > <[hidden email]> wrote: > > For reference, just because these quotes were seen in the market does not mean that they are liquid or even valid quotes! > > Many banks only give out a live quote once a day (for Libor) and then update the other non-traded rates on an ad-hoc basis. > > > > 1Y swaps are not very liquid (in many currencies) as most banks hedge their positions with futures at the short end. > > > > > > -----Original Message----- > > From: Leon Sit [mailto:[hidden email]] > > Sent: 19 October 2010 16:14 > > To: Simon Ibbotson > > Cc: [hidden email] > > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > > > > I will give that a try later. My boss says negative forward is not > > reasonable for our team :) > > > > Thanks a lot for the issue. > > > > Leon > > > > > > > > On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson > > <[hidden email]> wrote: > >> See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. > >> > >> -----Original Message----- > >> From: Leon Sit [mailto:[hidden email]] > >> Sent: 19 October 2010 16:02 > >> To: Simon Ibbotson > >> Cc: [hidden email] > >> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve > >> > >> I noticed that issue too. However these are a set of real quote from > >> market so I was hoping that I did not use quantlib right instead of > >> data issue. What is the consequence of allowing negative forward rate > >> for other parts of quantlib if I am only working with swap, futures, > >> and equity derivatives? > >> > >> Thanks. > >> > >> > >> On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson > >> <[hidden email]> wrote: > >>> Sorry, all those figures should be divided by 10... e.g. 0.8% rather > >>> than 8%. > >>> > >>> The same principle applies. > >>> > >>> -----Original Message----- > >>> From: Simon Ibbotson > >>> Sent: 19 October 2010 15:50 > >>> To: 'Leon Sit'; [hidden email] > >>> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve > >>> > >>> I suspect that you're generating negative forward rates at the point > >>> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not > >>> enabled this as an option:- userconfig.hpp : uncomment out #define > >>> QL_NEGATIVE_RATES. > >>> > >>> You've not provided enough code to see whether your curve has properly > >>> defined the cash/swap transition. > >>> > >>> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, > >>> followed by a 7% 2Y swap. > >>> > >>> Simon > >>> > >>> > >>> -----Original Message----- > >>> From: Leon Sit [mailto:[hidden email]] > >>> Sent: 19 October 2010 15:33 > >>> To: [hidden email] > >>> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve > >>> > >>> Hi All: > >>> > >>> I am using the following set of rates to bootstrap a yieldcurve > >>> > >>> double[] rates = { > >>> 0.0022438 , > >>> 0.0025469 , > >>> 0.0025688 , > >>> 0.0026156 , > >>> 0.0027969 , > >>> 0.0030375 , > >>> 0.0036906 , > >>> 0.0044063 , > >>> 0.0051125 , > >>> 0.0057 , > >>> 0.0062838 , > >>> 0.0068188 , > >>> 0.0074125 , > >>> 0.0080344 , > >>> 0.00471 , > >>> 0.007027 , > >>> 0.00991 , > >>> 0.01303 , > >>> 0.016065 , > >>> 0.018773 , > >>> 0.021 , > >>> 0.02282 , > >>> 0.0243 , > >>> 0.025525 , > >>> 0.0266 , > >>> 0.027458 , > >>> 0.02835 , > >>> 0.02889 , > >>> 0.02939 , > >>> 0.02988 , > >>> 0.0302 , > >>> 0.0305 , > >>> 0.03075 , > >>> 0.03096 , > >>> 0.031655 , > >>> 0.031923 , > >>> 0.03222 , > >>> 0.031975}; > >>> > >>> string[] labels = {"ON", > >>> "1w", > >>> "2w", > >>> "1m", > >>> "2m", > >>> "3m", > >>> "4m", > >>> "5m", > >>> "6m", > >>> "7m", > >>> "8m", > >>> "9m", > >>> "10m", > >>> "11m", > >>> "1y", > >>> "2y", > >>> "3y", > >>> "4y", > >>> "5y", > >>> "6y", > >>> "7y", > >>> "8y", > >>> "9y", > >>> "10y", > >>> "11y", > >>> "12y", > >>> "13y", > >>> "14y", > >>> "15y", > >>> "16y", > >>> "17y", > >>> "18y", > >>> "19y", > >>> "20y", > >>> "25y", > >>> "30y", > >>> "40y", > >>> "50y"}; > >>> > >>> everything is fine until it iterates to the first swap quote. Does > >>> anybody know what I might have missed? > >>> > >>> I am using the following yield curve class > >>> > >>> new PiecewiseYieldCurve<Discount, LogLinear>( > >>> settlementDate, depositFutureSwapInstruments, > >>> depositDayCounter, 10e-5)); > >>> > >>> Thanks > >>> > >>> ------------------------------------------------------------------------ > >>> ------ > >>> Download new Adobe(R) Flash(R) Builder(TM) 4 > >>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > >>> Flex(R) Builder(TM)) enable the development of rich applications that > >>> run > >>> across multiple browsers and platforms. Download your free trials today! > >>> http://p.sf.net/sfu/adobe-dev2dev > >>> _______________________________________________ > >>> QuantLib-users mailing list > >>> [hidden email] > >>> https://lists.sourceforge.net/lists/listinfo/quantlib-users > >>> > >>> > >>> > >>> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. > >>> > >>> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. > >>> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from > >>> > >>> The Financial Services Authority (FSA) > >>> 25 The North Colonnade, > >>> Canary Wharf, > >>> London > >>> E14 5HS > >>> United Kingdom > >>> > >>> Registered as a Limited Company in England and Wales No.1920623. > >>> Registered Office as above > >>> > >>> Switchboard: 020 7066 1000 > >>> Web Site: http://www.fsa.gov.uk > >>> ***************************************************************** > >>> > >>> > >> > > > > ------------------------------------------------------------------------------ > > Download new Adobe(R) Flash(R) Builder(TM) 4 > > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly > > Flex(R) Builder(TM)) enable the development of rich applications that run > > across multiple browsers and platforms. Download your free trials today! > > http://p.sf.net/sfu/adobe-dev2dev > > _______________________________________________ > > QuantLib-users mailing list > > [hidden email] > > https://lists.sourceforge.net/lists/listinfo/quantlib-users > > ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
HI Ferdinando,
What are the new school ways to bootstrap yield curve? Any paper suggestion is strongly appreciated. Thanks On Mon, Oct 25, 2010 at 10:47 AM, Ferdinando Ametrano <[hidden email]> wrote: > Hi Simon > > you're right, anyway whatever major currency is considered (at least > EUR, USD, GBP) a curve built using "ON", "1w", "2w", "1m", "2m", > "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", > etc is very much old school inhomogeneous approach > > Unless it's used for estimating some funding cost (and in this case > the xY swap should be spreaded) there is no way you can bootstrap such > a curve in the current market conditions without negative rates > > ciao -- Nando > > On Mon, Oct 25, 2010 at 1:01 PM, Simon Ibbotson > <[hidden email]> wrote: >> >> Hi Nando, >> >> Nowhere does the OP state that the curve is for EUR, so it could have a 6M or even a 12M floating rate (not to mention 90D, 12W or 4W markets). However, it is likely (given the values) that it does include a 3M basis. >> >> Cheers, >> Simon >> >> >> -----Original Message----- >> From: [hidden email] [mailto:[hidden email]] On Behalf Of Ferdinando Ametrano >> Sent: 25 October 2010 11:56 >> To: Simon Ibbotson >> Cc: Leon Sit; [hidden email] >> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> 1Y swap is based on 3M euribor, so it's comparable with 3 months rate >> >> no way it's going to be in line with a 11M rate with the current >> market conditions. >> >> people keep bootstrapping one single curve with inhomogeneous rates, >> but it's not possible anymore. >> >> Attend the QuantLib forum for more details on this issue (or wait for >> the slides) >> >> ciao -- Nando >> >> >> On Tue, Oct 19, 2010 at 5:18 PM, Simon Ibbotson >> <[hidden email]> wrote: >> > For reference, just because these quotes were seen in the market does not mean that they are liquid or even valid quotes! >> > Many banks only give out a live quote once a day (for Libor) and then update the other non-traded rates on an ad-hoc basis. >> > >> > 1Y swaps are not very liquid (in many currencies) as most banks hedge their positions with futures at the short end. >> > >> > >> > -----Original Message----- >> > From: Leon Sit [mailto:[hidden email]] >> > Sent: 19 October 2010 16:14 >> > To: Simon Ibbotson >> > Cc: [hidden email] >> > Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >> > >> > I will give that a try later. My boss says negative forward is not >> > reasonable for our team :) >> > >> > Thanks a lot for the issue. >> > >> > Leon >> > >> > >> > >> > On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson >> > <[hidden email]> wrote: >> >> See if it works first - then worry about the rest of the library. It shouldn't matter much, the #define is specific for rates in yieldcurves. >> >> >> >> -----Original Message----- >> >> From: Leon Sit [mailto:[hidden email]] >> >> Sent: 19 October 2010 16:02 >> >> To: Simon Ibbotson >> >> Cc: [hidden email] >> >> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >> >> >> >> I noticed that issue too. However these are a set of real quote from >> >> market so I was hoping that I did not use quantlib right instead of >> >> data issue. What is the consequence of allowing negative forward rate >> >> for other parts of quantlib if I am only working with swap, futures, >> >> and equity derivatives? >> >> >> >> Thanks. >> >> >> >> >> >> On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson >> >> <[hidden email]> wrote: >> >>> Sorry, all those figures should be divided by 10... e.g. 0.8% rather >> >>> than 8%. >> >>> >> >>> The same principle applies. >> >>> >> >>> -----Original Message----- >> >>> From: Simon Ibbotson >> >>> Sent: 19 October 2010 15:50 >> >>> To: 'Leon Sit'; [hidden email] >> >>> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >> >>> >> >>> I suspect that you're generating negative forward rates at the point >> >>> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and have not >> >>> enabled this as an option:- userconfig.hpp : uncomment out #define >> >>> QL_NEGATIVE_RATES. >> >>> >> >>> You've not provided enough code to see whether your curve has properly >> >>> defined the cash/swap transition. >> >>> >> >>> The curve does look rather unrealistic: 8% 11M cash then 4.71% 1Y swap, >> >>> followed by a 7% 2Y swap. >> >>> >> >>> Simon >> >>> >> >>> >> >>> -----Original Message----- >> >>> From: Leon Sit [mailto:[hidden email]] >> >>> Sent: 19 October 2010 15:33 >> >>> To: [hidden email] >> >>> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >> >>> >> >>> Hi All: >> >>> >> >>> I am using the following set of rates to bootstrap a yieldcurve >> >>> >> >>> double[] rates = { >> >>> 0.0022438 , >> >>> 0.0025469 , >> >>> 0.0025688 , >> >>> 0.0026156 , >> >>> 0.0027969 , >> >>> 0.0030375 , >> >>> 0.0036906 , >> >>> 0.0044063 , >> >>> 0.0051125 , >> >>> 0.0057 , >> >>> 0.0062838 , >> >>> 0.0068188 , >> >>> 0.0074125 , >> >>> 0.0080344 , >> >>> 0.00471 , >> >>> 0.007027 , >> >>> 0.00991 , >> >>> 0.01303 , >> >>> 0.016065 , >> >>> 0.018773 , >> >>> 0.021 , >> >>> 0.02282 , >> >>> 0.0243 , >> >>> 0.025525 , >> >>> 0.0266 , >> >>> 0.027458 , >> >>> 0.02835 , >> >>> 0.02889 , >> >>> 0.02939 , >> >>> 0.02988 , >> >>> 0.0302 , >> >>> 0.0305 , >> >>> 0.03075 , >> >>> 0.03096 , >> >>> 0.031655 , >> >>> 0.031923 , >> >>> 0.03222 , >> >>> 0.031975}; >> >>> >> >>> string[] labels = {"ON", >> >>> "1w", >> >>> "2w", >> >>> "1m", >> >>> "2m", >> >>> "3m", >> >>> "4m", >> >>> "5m", >> >>> "6m", >> >>> "7m", >> >>> "8m", >> >>> "9m", >> >>> "10m", >> >>> "11m", >> >>> "1y", >> >>> "2y", >> >>> "3y", >> >>> "4y", >> >>> "5y", >> >>> "6y", >> >>> "7y", >> >>> "8y", >> >>> "9y", >> >>> "10y", >> >>> "11y", >> >>> "12y", >> >>> "13y", >> >>> "14y", >> >>> "15y", >> >>> "16y", >> >>> "17y", >> >>> "18y", >> >>> "19y", >> >>> "20y", >> >>> "25y", >> >>> "30y", >> >>> "40y", >> >>> "50y"}; >> >>> >> >>> everything is fine until it iterates to the first swap quote. Does >> >>> anybody know what I might have missed? >> >>> >> >>> I am using the following yield curve class >> >>> >> >>> new PiecewiseYieldCurve<Discount, LogLinear>( >> >>> settlementDate, depositFutureSwapInstruments, >> >>> depositDayCounter, 10e-5)); >> >>> >> >>> Thanks >> >>> >> >>> ------------------------------------------------------------------------ >> >>> ------ >> >>> Download new Adobe(R) Flash(R) Builder(TM) 4 >> >>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >> >>> Flex(R) Builder(TM)) enable the development of rich applications that >> >>> run >> >>> across multiple browsers and platforms. Download your free trials today! >> >>> http://p.sf.net/sfu/adobe-dev2dev >> >>> _______________________________________________ >> >>> QuantLib-users mailing list >> >>> [hidden email] >> >>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> >>> >> >>> >> >>> >> >>> This communication and any attachments contains information which is confidential and may be subject to legal privilege. It is for intended recipients only. If you are not the intended recipient you must not copy, distribute, publish, rely on or otherwise use it without our consent. Some of our communications may contain confidential information which it could be a criminal offence for you to disclose or use without authority. If you have received this email in error please notify [hidden email] immediately and delete the email from your computer. >> >>> >> >>> The FSA reserves the right to monitor all email communications for compliance with legal, regulatory and professional standards. >> >>> This email is not intended to nor should it be taken to create any legal relations or contractual relationships. This email has originated from >> >>> >> >>> The Financial Services Authority (FSA) >> >>> 25 The North Colonnade, >> >>> Canary Wharf, >> >>> London >> >>> E14 5HS >> >>> United Kingdom >> >>> >> >>> Registered as a Limited Company in England and Wales No.1920623. >> >>> Registered Office as above >> >>> >> >>> Switchboard: 020 7066 1000 >> >>> Web Site: http://www.fsa.gov.uk >> >>> ***************************************************************** >> >>> >> >>> >> >> >> > >> > ------------------------------------------------------------------------------ >> > Download new Adobe(R) Flash(R) Builder(TM) 4 >> > The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >> > Flex(R) Builder(TM)) enable the development of rich applications that run >> > across multiple browsers and platforms. Download your free trials today! >> > http://p.sf.net/sfu/adobe-dev2dev >> > _______________________________________________ >> > QuantLib-users mailing list >> > [hidden email] >> > https://lists.sourceforge.net/lists/listinfo/quantlib-users >> > > ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Hi Simon,
Heres a paper by Nando (Fernando M. Ametrano), and Marco Bianchetti. http://www.bianchetti.org/Finance/BootstrappingTheIlliquidity-v1.0.pdf Plus a more recent document by Andrea Pallavicini and Marco Tarenghi http://www.scribd.com/doc/33566467/Interest-Rates-Models-With-Multiple-Yield-Curves Cheers David On 26 Oct 2010, at 22:08, Leon Sit wrote: > HI Ferdinando, > > What are the new school ways to bootstrap yield curve? Any paper > suggestion is strongly appreciated. > > Thanks > > > > > > > On Mon, Oct 25, 2010 at 10:47 AM, Ferdinando Ametrano > <[hidden email]> wrote: >> Hi Simon >> >> you're right, anyway whatever major currency is considered (at least >> EUR, USD, GBP) a curve built using "ON", "1w", "2w", "1m", "2m", >> "3m", "4m", "5m", "6m", "7m", "8m", "9m", "10m", "11m", "1y", "2y", >> etc is very much old school inhomogeneous approach >> >> Unless it's used for estimating some funding cost (and in this case >> the xY swap should be spreaded) there is no way you can bootstrap >> such >> a curve in the current market conditions without negative rates >> >> ciao -- Nando >> >> On Mon, Oct 25, 2010 at 1:01 PM, Simon Ibbotson >> <[hidden email]> wrote: >>> >>> Hi Nando, >>> >>> Nowhere does the OP state that the curve is for EUR, so it could >>> have a 6M or even a 12M floating rate (not to mention 90D, 12W or >>> 4W markets). However, it is likely (given the values) that it does >>> include a 3M basis. >>> >>> Cheers, >>> Simon >>> >>> >>> -----Original Message----- >>> From: [hidden email] [mailto:[hidden email] >>> ] On Behalf Of Ferdinando Ametrano >>> Sent: 25 October 2010 11:56 >>> To: Simon Ibbotson >>> Cc: Leon Sit; [hidden email] >>> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >>> >>> 1Y swap is based on 3M euribor, so it's comparable with 3 months >>> rate >>> >>> no way it's going to be in line with a 11M rate with the current >>> market conditions. >>> >>> people keep bootstrapping one single curve with inhomogeneous rates, >>> but it's not possible anymore. >>> >>> Attend the QuantLib forum for more details on this issue (or wait >>> for >>> the slides) >>> >>> ciao -- Nando >>> >>> >>> On Tue, Oct 19, 2010 at 5:18 PM, Simon Ibbotson >>> <[hidden email]> wrote: >>>> For reference, just because these quotes were seen in the market >>>> does not mean that they are liquid or even valid quotes! >>>> Many banks only give out a live quote once a day (for Libor) and >>>> then update the other non-traded rates on an ad-hoc basis. >>>> >>>> 1Y swaps are not very liquid (in many currencies) as most banks >>>> hedge their positions with futures at the short end. >>>> >>>> >>>> -----Original Message----- >>>> From: Leon Sit [mailto:[hidden email]] >>>> Sent: 19 October 2010 16:14 >>>> To: Simon Ibbotson >>>> Cc: [hidden email] >>>> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >>>> >>>> I will give that a try later. My boss says negative forward is not >>>> reasonable for our team :) >>>> >>>> Thanks a lot for the issue. >>>> >>>> Leon >>>> >>>> >>>> >>>> On Tue, Oct 19, 2010 at 10:05 AM, Simon Ibbotson >>>> <[hidden email]> wrote: >>>>> See if it works first - then worry about the rest of the >>>>> library. It shouldn't matter much, the #define is specific for >>>>> rates in yieldcurves. >>>>> >>>>> -----Original Message----- >>>>> From: Leon Sit [mailto:[hidden email]] >>>>> Sent: 19 October 2010 16:02 >>>>> To: Simon Ibbotson >>>>> Cc: [hidden email] >>>>> Subject: Re: [Quantlib-users] Cannot bootstrap a yieldcurve >>>>> >>>>> I noticed that issue too. However these are a set of real quote >>>>> from >>>>> market so I was hoping that I did not use quantlib right instead >>>>> of >>>>> data issue. What is the consequence of allowing negative forward >>>>> rate >>>>> for other parts of quantlib if I am only working with swap, >>>>> futures, >>>>> and equity derivatives? >>>>> >>>>> Thanks. >>>>> >>>>> >>>>> On Tue, Oct 19, 2010 at 9:50 AM, Simon Ibbotson >>>>> <[hidden email]> wrote: >>>>>> Sorry, all those figures should be divided by 10... e.g. 0.8% >>>>>> rather >>>>>> than 8%. >>>>>> >>>>>> The same principle applies. >>>>>> >>>>>> -----Original Message----- >>>>>> From: Simon Ibbotson >>>>>> Sent: 19 October 2010 15:50 >>>>>> To: 'Leon Sit'; [hidden email] >>>>>> Subject: RE: [Quantlib-users] Cannot bootstrap a yieldcurve >>>>>> >>>>>> I suspect that you're generating negative forward rates at the >>>>>> point >>>>>> where the rate drops from 8% (11M cash) to 4.7% (1Y swap) and >>>>>> have not >>>>>> enabled this as an option:- userconfig.hpp : uncomment out >>>>>> #define >>>>>> QL_NEGATIVE_RATES. >>>>>> >>>>>> You've not provided enough code to see whether your curve has >>>>>> properly >>>>>> defined the cash/swap transition. >>>>>> >>>>>> The curve does look rather unrealistic: 8% 11M cash then 4.71% >>>>>> 1Y swap, >>>>>> followed by a 7% 2Y swap. >>>>>> >>>>>> Simon >>>>>> >>>>>> >>>>>> -----Original Message----- >>>>>> From: Leon Sit [mailto:[hidden email]] >>>>>> Sent: 19 October 2010 15:33 >>>>>> To: [hidden email] >>>>>> Subject: [Quantlib-users] Cannot bootstrap a yieldcurve >>>>>> >>>>>> Hi All: >>>>>> >>>>>> I am using the following set of rates to bootstrap a yieldcurve >>>>>> >>>>>> double[] rates = { >>>>>> 0.0022438 , >>>>>> 0.0025469 , >>>>>> 0.0025688 , >>>>>> 0.0026156 , >>>>>> 0.0027969 , >>>>>> 0.0030375 , >>>>>> 0.0036906 , >>>>>> 0.0044063 , >>>>>> 0.0051125 , >>>>>> 0.0057 , >>>>>> 0.0062838 , >>>>>> 0.0068188 , >>>>>> 0.0074125 , >>>>>> 0.0080344 , >>>>>> 0.00471 , >>>>>> 0.007027 , >>>>>> 0.00991 , >>>>>> 0.01303 , >>>>>> 0.016065 , >>>>>> 0.018773 , >>>>>> 0.021 , >>>>>> 0.02282 , >>>>>> 0.0243 , >>>>>> 0.025525 , >>>>>> 0.0266 , >>>>>> 0.027458 , >>>>>> 0.02835 , >>>>>> 0.02889 , >>>>>> 0.02939 , >>>>>> 0.02988 , >>>>>> 0.0302 , >>>>>> 0.0305 , >>>>>> 0.03075 , >>>>>> 0.03096 , >>>>>> 0.031655 , >>>>>> 0.031923 , >>>>>> 0.03222 , >>>>>> 0.031975}; >>>>>> >>>>>> string[] labels = {"ON", >>>>>> "1w", >>>>>> "2w", >>>>>> "1m", >>>>>> "2m", >>>>>> "3m", >>>>>> "4m", >>>>>> "5m", >>>>>> "6m", >>>>>> "7m", >>>>>> "8m", >>>>>> "9m", >>>>>> "10m", >>>>>> "11m", >>>>>> "1y", >>>>>> "2y", >>>>>> "3y", >>>>>> "4y", >>>>>> "5y", >>>>>> "6y", >>>>>> "7y", >>>>>> "8y", >>>>>> "9y", >>>>>> "10y", >>>>>> "11y", >>>>>> "12y", >>>>>> "13y", >>>>>> "14y", >>>>>> "15y", >>>>>> "16y", >>>>>> "17y", >>>>>> "18y", >>>>>> "19y", >>>>>> "20y", >>>>>> "25y", >>>>>> "30y", >>>>>> "40y", >>>>>> "50y"}; >>>>>> >>>>>> everything is fine until it iterates to the first swap quote. >>>>>> Does >>>>>> anybody know what I might have missed? >>>>>> >>>>>> I am using the following yield curve class >>>>>> >>>>>> new PiecewiseYieldCurve<Discount, LogLinear>( >>>>>> settlementDate, depositFutureSwapInstruments, >>>>>> depositDayCounter, 10e-5)); >>>>>> >>>>>> Thanks >>>>>> >>>>>> ------------------------------------------------------------------------ >>>>>> ------ >>>>>> Download new Adobe(R) Flash(R) Builder(TM) 4 >>>>>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >>>>>> Flex(R) Builder(TM)) enable the development of rich >>>>>> applications that >>>>>> run >>>>>> across multiple browsers and platforms. Download your free >>>>>> trials today! >>>>>> http://p.sf.net/sfu/adobe-dev2dev >>>>>> _______________________________________________ >>>>>> QuantLib-users mailing list >>>>>> [hidden email] >>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>>>>> >>>>>> >>>>>> >>>>>> This communication and any attachments contains information >>>>>> which is confidential and may be subject to legal privilege. It >>>>>> is for intended recipients only. If you are not the intended >>>>>> recipient you must not copy, distribute, publish, rely on or >>>>>> otherwise use it without our consent. Some of our >>>>>> communications may contain confidential information which it >>>>>> could be a criminal offence for you to disclose or use without >>>>>> authority. If you have received this email in error please >>>>>> notify [hidden email] immediately and delete the email >>>>>> from your computer. >>>>>> >>>>>> The FSA reserves the right to monitor all email communications >>>>>> for compliance with legal, regulatory and professional standards. >>>>>> This email is not intended to nor should it be taken to create >>>>>> any legal relations or contractual relationships. This email >>>>>> has originated from >>>>>> >>>>>> The Financial Services Authority (FSA) >>>>>> 25 The North Colonnade, >>>>>> Canary Wharf, >>>>>> London >>>>>> E14 5HS >>>>>> United Kingdom >>>>>> >>>>>> Registered as a Limited Company in England and Wales No.1920623. >>>>>> Registered Office as above >>>>>> >>>>>> Switchboard: 020 7066 1000 >>>>>> Web Site: http://www.fsa.gov.uk >>>>>> ***************************************************************** >>>>>> >>>>>> >>>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Download new Adobe(R) Flash(R) Builder(TM) 4 >>>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >>>> Flex(R) Builder(TM)) enable the development of rich applications >>>> that run >>>> across multiple browsers and platforms. Download your free trials >>>> today! >>>> http://p.sf.net/sfu/adobe-dev2dev >>>> _______________________________________________ >>>> QuantLib-users mailing list >>>> [hidden email] >>>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>>> >> > > ------------------------------------------------------------------------------ > Nokia and AT&T present the 2010 Calling All Innovators-North America > contest > Create new apps & games for the Nokia N8 for consumers in U.S. and > Canada > $10 million total in prizes - $4M cash, 500 devices, nearly $6M in > marketing > Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi > Store > http://p.sf.net/sfu/nokia-dev2dev > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Free forum by Nabble | Edit this page |