Assumptions and Limitations
This page brings together the engine’s modelling choices, the methodology changes in the next version and the known limitations, product by product.
6.1 Modelling assumptions
| Area | Assumption |
|---|---|
| Prepayments | No prepayment model (CPR) for loans: behavioural view = contractual view, excluding calls. |
| Call options | The call is assumed to be exercised on its date in the behavioural view, whatever the rate scenario. |
| Non-maturity deposits | Conventional run-off (bucket law or script), identical in all scenarios; no modelling of the elasticity of balances to rates. |
| Constant balance sheet | Maturities within the horizon are replaced identically (nominal, term, spread); a rolled-over fixed rate is repriced at the scenario forward over its term, with the margin frozen at the reporting date; roll-overs enter only the NII. |
| Discount curve | A single curve (discounting index of the context) for all flows and all currencies; the commercial margin remains in the discounted flows. |
| Shocks | Applied to yield curves only; liquidity spreads and FX curves are not shocked. |
| Curves | Linear interpolation in days, flat extrapolation; curve closest to the reporting date (warning beyond 10 days); a curve quoted PAR is bootstrapped without calendar or spot lag (365-day years). |
| NII horizon | 12 months, accrued interest (pro rata of the days of each period falling within the horizon). |
| Unknown fixing | A rate.value of 0 on a floating-rate transaction is read as “fixing not provided”; the current coupon is then read from the curve. |
6.2 Changes in the next version
The rules below are those of the next version of the engine; the methodology pages already describe them. They align the calculation with the EBA framework and change the reported figures.
| Topic | Current version | Next version |
|---|---|---|
| Uncomputed cells of the J templates | Written as 0, with one warning per sheet. | Left empty; a 0 is only reported when it is computed (§5.2). |
| New business and run-off measures | Transactions rolled over in the constant balance sheet entered the EVE (their capital exchanges), the MV, the outstanding balance and the repricing schedules. | They enter only the NII; all their flows are uncertain (§4.1). |
| Post-shock floor | An observed rate already below the EBA floor was raised to the floor in downward scenarios. | The effective floor is \(\min(\text{floor}(t), r(t))\): a downward shock never raises a rate (§1.2). |
| Supervisory outlier test (J 01.00) | The worst change was taken over all scenarios, including UP_1_BP, for both EVE and NII. |
EVE: the six supervisory shocks; NII: the two parallel shocks (§3.4). |
| Fixed-rate roll-over | The contractual rate was used in all scenarios: the NII of fixed-rate new business did not respond to the shock. | The rolled-over rate is the scenario forward over the original term plus the margin frozen at the reporting date (§4.1). |
Curves quoted in swap rates (PAR) |
Swap rates were read as zero-coupon rates. | A PAR curve is bootstrapped into a zero-coupon curve for discounting and forwards; the shock applies to the zero-coupon rates (§1.3). |
| Call within a coupon period (bullet loan, term deposit) | The coupon straddling the call date was removed. | It is prorated up to the call, as for securities (§2.1). |
| 12-month NII | Coupons counted in full on their payment date, including the portion accrued before the reporting date; a coupon paid after 12 months did not count. | Accrued interest: each coupon counts for its days falling within the horizon (§3.3). |
| Column 0020 “duration” (J 02 – J 04) | Average contractual residual maturity weighted by the outstanding; amortising loans at their final maturity. | Modified duration of Annex XXIX, \(-EV01 / (EVE \times 0.0001)\), from the UP_1_BP scenario (§3.5). |
| Securities with off-schedule maturity | The last coupon was paid for a full period, after maturity. | Broken coupon up to maturity (§2.3). |
| Floating-rate deposits and balances | Rejected by the bucket run-off. | Each tranche is calculated as a bullet coupon at the forward of its period (§2.6). |
| Floating-rate amortising loan | The known fixing of the current instalment was not used. | It is used, as for the other products (§2.2). |
| Rate read on a curve | The forward of a floating coupon was an annually compounded Exact/365 rate, then accrued in another basis. | It is the simple rate of the period in the coupon’s basis, on every reading path (§1.4). |
| Floating coupon of a security | The rate was read from the reporting date to the payment date. | It is the forward of the coupon period, as for the other products (§2.3). |
| Average maturity (J 05 – J 07) | An amortising loan or a transaction without a maturity counted at a zero maturity and pulled the average towards 0. | An amortising loan enters at its final maturity, a non-maturity deposit at one day; an unknown maturity is left out, with a warning (§3.6). |
| Non-maturity deposit (J 05 – J 07) | The principal tranches of the run-off law carried no rate and entered neither block. | They carry the deposit’s rate and enter its block; a deposit without a rate is treated at a fixed 0%, with a warning (§2.6). |
| J 05.00 – J 07.00 schedules | Notional = sum of the slotted cash flows (projected interest included, swap legs netted); floating coupons after the refixing slotted and floating cash flows beyond 2 years lost; block by rate type; liabilities negative; non-maturity deposits by their law in the contractual view. | Notional repricing cash flows only; notional = positive principal, receiver leg of a swap; repricing beyond one year = fixed rate; liabilities positive; non-maturity deposits overnight in the contractual view (§3.6). |
On a portfolio including roll-overs, EVE and MV now cover only the balance sheet at the reporting date, NII (now on an accrued-interest basis) changes level, and the NII of the shocked scenarios follows the repricing of fixed-rate roll-overs. A curve declared PAR changes the EVE and the MV (discounting) and the NII of floating-rate flows (forwards).
6.3 Floating-rate amortising loan with constant instalments
- The capital portion of a constant instalment depends on the rate of the period (\(K_k = PMT_k - I_k\)); it is nevertheless flagged as certain, and calculated in the scenario when the coupon is uncertain: the capital of a floating-rate loan with constant instalments varies slightly from one scenario to another.
- The annuity is recalculated at each instalment with the rate of the period, on the original schedule (initial amount, \(n\) instalments), and not on the outstanding capital at the refixing date: the sum of the capital repayments equals the initial amount exactly only if the rate is constant.
6.4 Securities
- The periodic coupon equals \(N \cdot R / p\) whatever the actual length of the period (no day-count basis), whereas the call stub, the broken coupon at maturity and the single coupon use the day-count basis.
6.5 Deposits and accounting balances
- For a fixed rate, the spread is not added (the coupon rate is
rate.valuealone) and the analytical breakdown allocates the whole coupon to theRATEcomponent. - The script law receives fixed parameters (
outflow_period_in_days = 100,frequency_in_days = 5). - Maturity of an accounting balance. A balance with a linear law matures at its law’s horizon (
timeHorizonof the model file, chosen account by account) in the weighted average maturity of J 05.00 – J 07.00 (§3.6). A balance with a bucket law has no maturity and is left out of that average. On a constant balance sheet a balance is never rolled over at its maturity: what it runs off before the horizon, last tranche included, is replaced once by itsREF_Rtransaction, even when its law ends before the horizon (§4.1). - Contractual view of non-maturity deposits. Annex XXIX, Part IV, §1.3(a), requires the profile of non-maturity products (NMDs included) to be treated in contractual terms as short-term floating positions, in the shortest bucket. The engine applies it to non-maturity deposits: on the contractual sheet
.aof J 05.00 – J 07.00, all their principal is overnight, whatever the law (§3.6). An accounting balance keeps its law in both views: nothing says it is a non-maturity product rather than an aggregate of transactions whose maturity the import does not carry. - Deposit without a rate. A non-maturity deposit imported without a rate is treated as a non-interest-bearing deposit at a fixed 0%: zero interest, principal in the fixed-rate block of J 05.00 – J 07.00, one warning per deposit. This is the usual IRRBB treatment of a non-interest-bearing sight deposit, and that of non-interest-bearing accounting balances, imported at a fixed 0%.
- Repricing of a floating-rate non-maturity deposit. Its principal is placed, as for every floating instrument, at the end of the last certain coupon (§1.9). The coupons are those of the law’s tranches, whose periods do not follow the index refixing dates: the date used is the end of the last tranche paid before the next refixing, and can precede it by at most one tranche.
- Average maturity of a parent row of J 05.00 – J 07.00. A classification of which only part of the cash flows has a contractual maturity weighs in the parent row with its whole notional, its uncovered part in effect taking the average of the covered part: the covered notional is not carried through to the parent row’s calculation. The row of the classification itself is exact.
6.6 Duration conventions in curves
For interpolation, curve points are converted with 1 month = 30 days and 1 year = 365 days: a 12m point is placed at 360 days, a 1y point at 365 days. Shocks, on the other hand, convert maturities into years with 1 month = 1/12 year. The time bands of the flows are calendar-based. These three conventions coexist; the difference is small but visible on a 12m point of a curve.
6.7 Forward read on a par-quoted curve
A rate read on a curve is the simple rate of the period in the basis of the coupon that carries it, derived from the curve’s discount factors (§1.4), whatever the curve’s quotation (ZERO or PAR). A money-market coupon starting at the reporting date therefore returns its quote: on EURIBOR 6M SWAP at 30/06/2025, the one-year Exact/360 coupon reads 2.02%, the quoted rate of the 1-year point, and not its annual Exact/365 zero-coupon equivalent of 2.048%. The curve points are still read as annual Exact/365 zero-coupon rates, and discounting is unchanged.
Securities with a periodic coupon follow the same rule: their floating rate is the forward of the coupon period, \(F_B(\max(t_{k-1}, t_0),\ t_k)\) (§2.3), as for the other products.