# prmat

Price with interest at maturity

## Syntax

``[Price,AccruInterest] = prmat(Settle,Maturity,Issue,Face,CouponRateYield)``
``[Price,AccruInterest] = prmat(___,Basis)``

## Description

````[Price,AccruInterest] = prmat(Settle,Maturity,Issue,Face,CouponRateYield)` returns the price and accrued interest of a security that pays interest at maturity. This function also applies to zero coupon bonds or pure discount securities by setting `CouponRate` = `0`.```

example

````[Price,AccruInterest] = prmat(___,Basis)` adds an optional argument for `Basis`. ```

example

## Examples

collapse all

This example shows how to compute the price and accrued interest of a security that pays interest at maturity.

```Settle = '02/07/2002'; Maturity = '04/13/2002'; Issue = '10/11/2001'; Face = 100; CouponRate = 0.0608; Yield = 0.0608; Basis = 1; [Price, AccruInterest] = prmat(Settle, Maturity, Issue, Face,... CouponRate, Yield, Basis)```
```Price = 99.9784 ```
```AccruInterest = 1.9591 ```

This example shows how to use `datetime` inputs compute the price and accrued interest of a security that pays interest at maturity.

```Settle = datetime(2002,2,7); Maturity = datetime(2002,4,13); Issue = datetime(2001,10,11); Face = 100; CouponRate = 0.0608; Yield = 0.0608; Basis = 1; [Price, AccruInterest] = prmat(Settle, Maturity, Issue, Face, CouponRate, Yield, Basis)```
```Price = 99.9784 ```
```AccruInterest = 1.9591 ```

## Input Arguments

collapse all

Settlement date of the security, specified as a scalar datetime, string, or date character vector. The `Settle` date must be before the `Maturity` date.

To support existing code, `prmat` also accepts serial date numbers as inputs, but they are not recommended.

Data Types: `char` | `string` | `datetime`

Maturity date of the security, specified as a scalar datetime, string, or date character vector.

To support existing code, `prmat` also accepts serial date numbers as inputs, but they are not recommended.

Data Types: `char` | `datetime` | `string`

Issue date of the security, specified as a scalar datetime, string, or date character vector.

To support existing code, `prmat` also accepts serial date numbers as inputs, but they are not recommended.

Data Types: `char` | `string` | `datetime`

Redemption value (par value), specified as a numeric value.

Data Types: `double`

Coupon rate, specified as a decimal fraction value.

Data Types: `double`

Annual yield, specified as a decimal fraction value.

Data Types: `double`

(Optional) Day-count basis of the security, specified using the following values:

• 0 = actual/actual

• 1 = 30/360 (SIA)

• 2 = actual/360

• 3 = actual/365

• 4 = 30/360 (PSA)

• 5 = 30/360 (ISDA)

• 6 = 30/360 (European)

• 7 = actual/365 (Japanese)

• 8 = actual/actual (ICMA)

• 9 = actual/360 (ICMA)

• 10 = actual/365 (ICMA)

• 11 = 30/360E (ICMA)

• 12 = actual/365 (ISDA)

• 13 = BUS/252

Data Types: `double`

## Output Arguments

collapse all

Security price, returned as a numeric value.

Accrued interest for security, returned as a numeric value.

## References

[1] Mayle, J. Standard Securities Calculation Methods. Volumes I-II, 3rd edition. Formula 3.

## Version History

Introduced before R2006a

expand all