Perpetual Bond

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Perpetual Bond

Leon Sit
Hi all

I need to price some perpetual bonds (fixed, floating and step-up) with the assumption that the discount curve will be constant after certain time. I notice that the yieldtermstructure support extrapolation. What is the best way to go about doing it in QuantLib? Can I just move the maturity of the bond long enough to get a good approximation or I should reimplement instruments for perpetuities?

Thanks tons.

Sincerely

Leon

------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: Perpetual Bond

Luigi Ballabio
On Tue, 2011-04-05 at 11:00 -0500, Leon Sit wrote:
> I need to price some perpetual bonds (fixed, floating and step-up)
> with the assumption that the discount curve will be constant after
> certain time. I notice that the yieldtermstructure support
> extrapolation.

As for extrapolation, the term structure just keeps going after the
maximum date with the same formula it was using before it.  If, say, the
forward rate was piecewise constant, it will be constant afterwards.  If
you were using a linear interpolation or a spline, it will keep doing
that (which will eventually lead you to have rates too high, or in the
negative.)

>  What is the best way to go about doing it in QuantLib? Can I just
> move the maturity of the bond long enough to get a good approximation
> or I should reimplement instruments for perpetuities?

I would try instantiating the bond with three or four different long
maturities and see if the price converges.

Luigi



--

Lubarsky's Law of Cybernetic Entomology:
There is _always_ one more bug.



------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: Perpetual Bond

Ferdinando M. Ametrano-3
On Fri, Apr 8, 2011 at 5:29 PM, Luigi Ballabio <[hidden email]> wrote:
> As for extrapolation, the term structure just keeps going after the
> maximum date with the same formula it was using before it.  If, say, the
> forward rate was piecewise constant, it will be constant afterwards.  If
> you were using a linear interpolation or a spline, it will keep doing
> that (which will eventually lead you to have rates too high, or in the
> negative.)

I respectfully disagree: yield term structures always extrapolate
using constant instantaneous forward rate, not using the specified
interpolation algorithm

ciao -- Nando

------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now!  http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: Perpetual Bond

Luigi Ballabio
On Tue, 2011-04-12 at 09:47 +0200, Ferdinando Ametrano wrote:

> On Fri, Apr 8, 2011 at 5:29 PM, Luigi Ballabio <[hidden email]> wrote:
> > As for extrapolation, the term structure just keeps going after the
> > maximum date with the same formula it was using before it.  If, say, the
> > forward rate was piecewise constant, it will be constant afterwards.  If
> > you were using a linear interpolation or a spline, it will keep doing
> > that (which will eventually lead you to have rates too high, or in the
> > negative.)
>
> I respectfully disagree: yield term structures always extrapolate
> using constant instantaneous forward rate, not using the specified
> interpolation algorithm

I see, you've added this to the several interpolated curves.

How comes the logic is not in the base YieldTermStructure class?

Luigi


--

fix, n.,v.
What one does when a problem has been reported too many times
to be ignored.
-- the Jargon file



------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now!  http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: Perpetual Bond

Ferdinando M. Ametrano-3
On Tue, Apr 12, 2011 at 10:09 AM, Luigi Ballabio
<[hidden email]> wrote:
> On Tue, 2011-04-12 at 09:47 +0200, Ferdinando Ametrano wrote:
>> yield term structures always extrapolate
>> using constant instantaneous forward rate, not using the specified
>> interpolation algorithm
>
> I see, you've added this to the several interpolated curves.
>
> How comes the logic is not in the base YieldTermStructure class?

on one hand it might be an approach not everybody is confident with
(even if I would challenge the mental sanity of any alternative :-)

on the other hand I could have not avoided specific implementations in
derived classes

anyway feel free to factor away in the base class anything you see fit

by the way, a similar approach is implemented for credit term
structures, as I remember implementing the rate term structure
extrapolation inspired by the credit example

ciao -- Nando

------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users