Contact

PRICEDISC Function (OpenOffice Calc)

Financial Intermediate OpenOffice Calc

Price a discounted redemption with Apache OpenOffice PRICEDISC. Follow verified date-basis examples and the release-specific difference from DISC.

Verification status: Eight ordinary reference formulas were recalculated in Apache OpenOffice 4.1.16 on Linux x86-64, Build 9816, through generated native ODF and GUI hard recalculation. Saved identities, inputs and results were checked. How formula examples are checked

Quick answer: =PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;0) returned 97.5 in the tested Apache OpenOffice 4.1.16 build.

Availability and version history

  • Introduced: First release not established; documented by OpenOffice.org 3.3.
  • Supported in: Apache OpenOffice 4.1.16; this is a verified release, not a final supported version.
  • Scope: Desktop Calc, English function names and semicolon-separated formulas.
  • Checked: October 14, 2026. Eight ordinary reference formulas were recalculated from generated ODF in 4.1.16 on Linux x86-64, Build 9816. Source and independent arithmetic were checked.

What PRICEDISC returns

PRICEDISC returns Redemption*(1-Discount*t) using the release’s GetYearDiff date fraction. It is a simple discount-price calculation, with no recurring coupon schedule. Price and Redemption share the same scale. Release implementation.

Syntax and arguments

PRICEDISC(Settlement;Maturity;Discount;Redemption[;Basis])
  • Settlement, Maturity: valid increasing dates.
  • Discount: positive annual discount rate as a decimal. Redemption: positive maturity amount, commonly 100.
  • Basis is optional and defaults to 0: 0 US 30/360, 1 actual/actual, 2 actual/360, 3 actual/365, or 4 European 30/360. These labels do not guarantee identical endpoint adjustments across every function in this release; the helper used here is identified below.

Eight reproducible examples

The native column contains saved 4.1.16 results; independent references use high-precision arithmetic and the stated source rules. Values are shown to twelve decimal places where needed. Enter DATE expressions directly rather than locale-dependent date text.

Formula Native 4.1.16 result Independent reference
=PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;0) 97.5 97.5
=PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;1) 97.513661202186 97.513661202186
=PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;2) 97.472222222222 97.472222222222
=PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;3) 97.506849315068 97.506849315068
=PRICEDISC(DATE(2024;1;1);DATE(2024;7;1);.05;100;4) 97.5 97.5
=PRICEDISC(DATE(2024;2;29);DATE(2024;3;31);.05;100;0) 99.569444444444 99.569444444444
=PRICEDISC(DATE(2024;2;29);DATE(2024;3;31);.05;100;4) 99.555555555556 99.555555555556
=PRICEDISC(DATE(2023;1;1);DATE(2024;1;1);.05;100) 95 95

Practical worksheet

For January 1 to July 1, 2024, Discount=0.05, Redemption=100 and Basis 0, t=0.5. The price is 97.5: 100×(1−0.05×0.5). This is a 2.5 amount discount over the stated half-year, not a 5 amount discount.

Basis 2 uses 182/360 and returns approximately 97.472222222222. Basis 1 uses 182/366 and returns approximately 97.513661202186. The native table also confirms the omitted basis follows the default 0 calculation.

Advanced interpretation and checks

Price scales directly with Redemption. Under the same t and Discount, doubling Redemption doubles the price. The simple relation can be rearranged as Discount=(1-Price/Redemption)/t, provided the same date fraction is used.

Release-specific inverse caution: DISC calls GetYearFrac, while PRICEDISC calls GetYearDiff. At February 29 to March 31, 2024, Basis 0, this function uses 31/360 and returns approximately 99.569444444444 for Discount=5% and Redemption=100. DISC uses 30/360 at those dates, so feeding that price into DISC does not recover 5%. Check the exact helper convention rather than assuming name-based inverse behavior.

Boundaries and troubleshooting

The implementation checks positive Discount and Redemption and Settlement<Maturity. It does not separately require 1-Discount*t to remain positive. Validate a positive price factor for a conventional pricing model; the ordinary tests all satisfy it. No invalid or nonpositive-factor cases were executed.

The output is an amount, not an annual return. Fees, transaction conventions and coupon cash flows are outside this formula. Keep the date basis and redemption scale with the inputs so a number such as 97.5 is interpreted correctly.

Official evidence and checking scope

The generated ODF produced the informational load warning “Not all attributes could be read.” The sheet was hard-recalculated and saved separately. All eight ordinary function identities, inputs and results were reconciled; a stale SUM cache changed from 999999 to 3 and an uncached SUM returned 7. This establishes the stated examples, not every workbook style or invalid input. Other explanatory identities are independent calculations. The authoring-tool XLSX was not executed in OpenOffice, and its preview values are not the native results reported here.