PhpSpreadsheet/tests/data/Calculation/Financial/PRICE3.php

79 lines
1.5 KiB
PHP

<?php
// Result, Settlement, Maturity, Rate, Yield, Redemption, Frequency, Basis
// On the result line, the value is ODS's calculation.
// This agrees with Gnumeric, PhpSpreadsheet, and the published algorithm at:
//https://support.office.com/en-us/article/price-function-3ea9deac-8dfa-436f-a7c8-17ea02c21b0a.
// The commented-out value on the next line is Excel's result.
// I do not know how best to reconcile the different results.
// The problem seems restricted to basis codes 2 and 3.
return [
[
94.60241717687768,
// 94.636564030025099,
'15-Feb-2008',
'15-Nov-2017',
0.0575,
0.065,
100,
2,
2,
],
[
94.643594548258,
// 94.635174796784497,
'15-Feb-2008',
'15-Nov-2017',
0.0575,
0.065,
100,
2,
3,
],
[
110.74436592216529,
// 110.83448359321601,
'01-Apr-2012',
'31-Mar-2020',
0.12,
0.10,
100,
2,
2,
],
[
110.81970970927745,
// 110.83452855143901,
'01-Apr-2012',
'31-Mar-2020',
0.12,
0.10,
100,
2,
3,
],
[
110.8912556,
// 110.9216934,
'01-Apr-2012',
'31-Mar-2020',
0.12,
0.10,
100,
4,
2,
],
[
110.9292394066714,
// 110.921732963198,
'01-Apr-2012',
'31-Mar-2020',
0.12,
0.10,
100,
4,
3,
],
];