# DURATION

## Content

This function returns the Macauley duration for an assumed par value of $100.

## Syntax

`DURATION(settlement, maturity, coupon, yield, frequency, [basis])`

## Arguments

This function has these arguments:

| Argument | Description |
| -------- | ----------- |
| *settlement* | [Required] Settlement date for the security |
| *maturity* | [Required] Maturity date for the security |
| *coupon* | [Required] Annual coupon rate |
| *yield* | [Required] Annual yield for the security |
| *frequency* | [Required] Frequency of payment, number of coupon payments per year; must be 1, 2, or 4 |
| *basis* | [Optional] Integer representing the basis for day count |

## Remarks

This function returns a #VALUE! error when *settlement* or *maturity* is invalid or a #NUM! error when *frequency* is a number other than 1, 2, or 4.
*Settlement*, *maturity*, *frequency*, and *basis* are truncated to integers.
The function returns an error in the following cases:

* If *coupon* is less than 0 or *yield* is less than 0.
* If *basis* is less than 0 or greater than 4.
* If *settlement* is greater than or equal to maturity.

## Examples

`DURATION(C1,C2,C3,C4,C5,C6)`
`DURATION(R5C2,R2C4,R3C1,R4C1,R5C1)`