Finance[Duration] - calculate the duration of a set of cash flows or bonds
|
Calling Sequence
|
|
Duration(cashflows, rate, opts)
Duration(bond, rate, opts)
|
|
Parameters
|
|
cashflows
|
-
|
cash flow data structure or a list of cash flow data structures; cash flows
|
bond
|
-
|
fixed- or floating-rate bond data structure; bond
|
rate
|
-
|
non-negative real number; interest rate
|
opts
|
-
|
equations of the form option = value where option is one of evaluation, compounding, or daycounter; specify options for the Duration command
|
|
|
|
|
Description
|
|
•
|
The Duration command calculates the duration of a set of cash flows or a portfolio of bonds.
|
•
|
For a set of cash flows the simple duration is defined as
|
where is the discount at time implied by the given interest rate. There are at least two ways to calculate . One can either use a yield term structure or an internal rate of return of the set of cash flows. In the latter case one would obtain the Macaulay duration.
•
|
A bond's duration is defined in a similar way. It can also be interpreted as the weighted first derivative of the price:
|
•
|
Duration is useful as a measure of sensitivity of a bond's or cash flows' price to interest rate movements.
|
•
|
The parameter cashflows is a cash flow data structure or a list of cash flow data structures.
|
•
|
The parameter bond must be a fixed- or floating-rate bond data structure.
|
|
|
Options
|
|
•
|
compounding = Simple, Continuous, Annual, Semiannual, EveryFourthMonth, Quarterly, Bimonthly, Monthly, SimpleThenAnnual, SimpleThenSemiannual, SimpleThenEveryFourthMonth, SimpleThenQuarterly, SimpleThenBimonthly, or SimpleThenMonthly -- This option specifies the compounding type for the given interest rate.
|
•
|
daycounter = Actual360, Actual365Fixed, AFB, Bond, Euro, Historical, ISDA, ISMA, OneDay, Simple, Thirty360BondBasis, Thirty360EuroBondBasis, Thirty360European, Thirty360Italian, Thirty360USA, or a day counter data structure created using the DayCounter constructor -- This option provides a day counter that will be used to represent the period between two dates as a fraction of the year. The default day count convention can be set using the Settings command.
|
•
|
evaluationdate = a string containing a date specification in a format recognized by ParseDate or a date data structure -- This option specifies the evaluation date. This is set to the global evaluation date by default (see EvaluationDate).
|
|
|
Compatibility
|
|
•
|
The Finance[Duration] command was introduced in Maple 15.
|
|
|
Examples
|
|
>
|
|
>
|
|
>
|
|
| (1) |
>
|
|
| (2) |
>
|
|
| (3) |
>
|
|
| (4) |
Here is another example.
>
|
|
| (5) |
>
|
|
| (6) |
>
|
|
| (7) |
>
|
|
| (8) |
Compute the value of this cash flow on January 1, 2005.
>
|
|
| (9) |
Compute the Macaulay duration for the previous cash flow.
>
|
|
| (10) |
>
|
|
| (11) |
Here is an example using bonds.
>
|
|
| (12) |
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
| (15) |
|
|