FN-PRICEMAT-002: PRICEMAT basis 0 applies the 31st rule before the February rule
Quirk · measured · recorded 2026-11-04
For basis 0, PRICEMAT tests "end on the 31st gives 30" before "start on the last day of February gives 30"; the US (NASD) 30/360 rule applies the February adjustment first. An issue on 28 February 2025 and maturity on 31 March 2043 gives DIM 6511, not 6510, and moves the price at about 1E-5 relative.
| Call and input route | Inputs | Excel | Correct value | Recorded in |
|---|---|---|---|---|
PRICEMAT(46376, 52321, 45716, 0.04392789506562811, 0.03266239139487676, 0)cell-value2 | settlement: 463760x40e6a50000000000maturity: 523210x40e98c2000000000issue: 457160x40e6528000000000rate: 0.043927895065628110x3fa67db79160c3a0yld: 0.032662391394876760x3fa0b91ffdb34689basis: 00x0000000000000000 | 109.220255659572470x405b4e18ab31a7da | — | Excel 16.0 build 20430, Windows 64-bit, AMD Ryzen 7 4800H |
Basis: One recorded row separates this rule from the standard one: 2,404 of 2,404 against 2,403.
Inferred: The order of the two tests is taken from the published ExcelFinancialFunctions getMatFactors rule, which fits; one row cannot pin it alone.
Evidence and capture sources
- DnaCalc-Research · evidence/round23/pricemat-hard/summary.json f1774082865e3a5ab7dec27ead7aeebb73b078c2 · counts day-count rule against precision
- DnaCalc · crates/calc-func/tests/f3_financial.rs 26bb1800d3b349e44d594bed5f8bb589b528ef10 · lines 435-466 recorded answers pinned
- CalcFunc-Evidence · cache/oracle-20430/build-20430/PRICEMAT.jsonl.gz 4d5320dfdc385354469b4d506153357bb932ab08 · line 1455, key PRICEMAT|0x40e6a50000000000|0x40e98c2000000000|0x40e6528000000000|0x3fa67db79160c3a0|0x3fa0b91ffdb34689|0x0000000000000000