QUANT.BOND.ACCRUED OpenBI
The interest a bond has earned since its last coupon, for each 100 of nominal.
Group: Quantitative finance. OpenBI’s own: DAX has no function of this name.
Syntax
QUANT.BOND.ACCRUED ( <settlement>, <maturity>, <coupon> [, <frequency>] [, <dayCount>] )
| Parameter | Type | Description |
|---|---|---|
settlement | Date | The day the bond changes hands: everything is worked out as of this day. |
maturity | Date | The day the bond pays its last coupon and its redemption. |
coupon | Number | The coupon rate a year, as a decimal: 0.04 for 4 %. |
frequency | Whole number optional | Coupons a year: 1 (when left out), 2, 4 or 12. |
dayCount | Text optional | How days are counted between coupons: "Actual/Actual" (when left out: each coupon period's own days), "Actual/Actual ISDA", "Actual/365", "Actual/360" or "30/360". |
Returns
Number. The accrued interest for each 100 of nominal: the coupon times the share of its period that has gone by at the settlement.
Remarks
- No yield is needed: the interest accrued depends only on the dates, the coupon and the day count.
- On a coupon date it is 0. The clean price plus the accrued interest is the dirty price, what the buyer pays.
- With "Actual/Actual" the share is the days gone by over the days of that very period, so it differs a little from "30/360", which counts every month as 30 days.
- The coupon dates are counted back from the maturity one period at a time, on the same day of the month, and are not moved off weekends or holidays.
- A blank or a text where a number belongs, a maturity on or before the settlement, or a frequency other than 1, 2, 4 or 12 is an error.
Compared with DAX
An OpenBI function: DAX has none like it, so a measure or query that uses it works in OpenBI only, not in Power BI or Analysis Services.
Examples
Half a year into an annual coupon
A 4 % bond paying every 13 April, six months on: 183 days of 365 on Actual/Actual, 180 of 360 on 30/360. Paid twice a year, the same day is a coupon date.
EVALUATE
ROW (
"Actual/Actual", QUANT.BOND.ACCRUED ( DATE ( 2026, 10, 13 ), DATE ( 2031, 4, 13 ), 0.04 ),
"30/360", QUANT.BOND.ACCRUED ( DATE ( 2026, 10, 13 ), DATE ( 2031, 4, 13 ), 0.04, 1, "30/360" ),
"Twice a year", QUANT.BOND.ACCRUED ( DATE ( 2026, 10, 13 ), DATE ( 2031, 4, 13 ), 0.04, 2 )
)
| Actual/Actual | 30/360 | Twice a year |
|---|---|---|
| 2.0054794520548 | 2 | 0 |
The holdings' accrued interest
EVALUATE
SELECTCOLUMNS (
Holdings,
"Bond", Holdings[Bond],
"Accrued", QUANT.BOND.ACCRUED ( DATE ( 2026, 10, 13 ), Holdings[Maturity], Holdings[Coupon] ),
"In NOK", ROUND ( QUANT.BOND.ACCRUED ( DATE ( 2026, 10, 13 ), Holdings[Maturity], Holdings[Coupon] ) * Holdings[Nominal] / 100, 0 )
)
| Bond | Accrued | In NOK |
|---|---|---|
| Government 2028 | 1.84931506849315 | 4623288 |
| Government 2033 | 1.3068493150685 | 3920548 |
| Municipal 2031 | 0.402739726027401 | 604110 |
| Covered 2029 | 1.26027397260273 | 1512329 |
| Corporate 2030 | 4.19041095890411 | 3352329 |