# Documentation/Calc Functions/PRICEDISC

TDF LibreOffice Document Liberation Project Community Blogs Weblate Nextcloud Redmine Ask LibreOffice Donate

## Function name:

PRICEDISC

## Category:

Financial Analysis

## Summary:

Calculates the price per 100 currency units of par value of a non-interest- bearing security.

## Syntax:

PRICEDISC(**Settlement**; **Maturity**; **Discount**; **Redemption**[; **Basis**])

## Returns:

Returns a non-negative real number which is the price of a security with a discount per 100 currency units of face value.

## Arguments:

**Settlement** is a date or a reference to a cell containing that date which is the date of purchase of the security.

**Maturity** is a date or a reference to a cell containing that date which is the date on which the security matures (expires).

**Discount** is a positive real number or a reference to the cell containing that number which is the discount of security as a percentage.

**Redemption** is a positive real number or a reference to a cell containing that number which is the redemption value per 100 currency units of par value.

**Basis** is a positive integer from 0 to 4 or a reference to a cell containing that integer which is chosen from a list of options and indicates how the year is to be calculated. For more information, visit Wikipedia's Day count convention page.

Basis | Calculation |
---|---|

0 or missing | US method (NASD), 12 months of 30 days each |

1 | Exact number of days in months, exact number of days in year. |

2 | Exact number of days in month, year has 360 days. |

3 | Exact number of days in month, year has 365 days. |

4 | European method, 12 months of 30 days each. |

- If either
**Maturity**or**Settlement**is not valid dates then the function returns an value(#VALUE!) error. - If
**Settlement**date is after the**Maturity**date then the function returns an error value. - If
**Basis**is a non-integer value, then the function uses their floor value, i.e. they are truncated to an integer value. - If either of
**Discount**or**Redemption**is less than or equal to 0 then the function returns an error value. - After truncation if
**Basis**is any number except 0,1,2,3,4 or missing (passed as empty argument or not passed at all),then the function will return an error value.

## Additional details:

None

## Examples:

Formula | Description | Returns |
---|---|---|

=PRICEDISC("1999-02-15"; "1999-03-01"; 0.0525; 100; 2) | A security is purchased on 1999-02-15; the maturity date is 1999-03-01. Discount in per cent is 5.25%. The redemption value is 100. When calculating on basis 4, the function returns price discount. | 99.7666666666667 |

=PRICEDISC("1999-02-15"; "1999-03-01"; 0.0525; 100) | A security is purchased on 1999-02-15; the maturity date is 1999-03-01. Discount in per cent is 5.25%. The redemption value is 100. When calculating on basis 0 by default, the function returns price discount. | 99.7958333333333 |

=PRICEDISC("1999-02-15.05"; "1999-03-01"; 0.0525; 100; 2) | The function returns an error value if either Settlement or Maturity are not valid dates. |
#VALUE! |

=PRICEDISC("2008-02-15"; "1999-03-01"; 0.0525; 100; 2) | The function returns an error when Settlement date is after the Maturity date. |
Err:502 |

## Related LibreOffice functions:

## ODF standard:

## Equivalent Excel functions:

PRICEDISC