Methodology

This section describes, formula by formula and product by product, what the ALM / IRRBB engine calculates: how cash flows are generated and valued, and how the regulatory metrics (EVE, NII, MV, gaps, EBA J templates) are derived from them.

Overview

Imported situation ─► Constant balance sheet ─► 8 scenarios ─► Cash flow generation ─► Valuation ─► Metrics ─► EBA templates
# Page Content
1 Calculation framework Shock scenarios and floor, curve reading, forward rates, discounting, day-count conventions, coupon decomposition (rate / liquidity / spread), certainty, repricing date, signs, currencies, time buckets
2 Product Sheets Schedule and formulas for each product: bullet loan, term deposit, amortising loan, security, swap, repo, non-maturity deposit, accounting balance
3 Metrics MV, EVE, 12-month NII, ΔEVE / ΔNII, supervisory outlier test, outstanding balance and maturity, repricing notionals, liquidity and interest rate gaps, differences between the Metrics tab, the synthesis and the templates
4 Constant and behavioural balance sheet Roll-over of maturing positions, run-off laws, calls, projection modes, pre-fixing
5 EBA IRRBB templates Content of each template J 01.00 to J 11.02 and sign conventions
— J template cell details Calculation of each row and column of each template
6 Assumptions and limitations Modelling assumptions, changes in the next version, known limitations
7 Ledger reconciliation Filing deals on an account (instrument → account mapping, explicit mappings), reconciliation by poste with the ledger
— Rates, calls and rate projection Fixed rate with spread, issuer / holder calls, projection mode for uncertain rates, with examples

The engine can also compute a Basel IRB credit risk weighting and value options (Black-Scholes, Monte Carlo). No screen of the solution exposes them: these calculations are not described in this manual.

Notation

The formulas use the following notation, common to all chapters.

Symbol Meaning
\(t_0\) Reporting date (evaluationDate of the evaluation context)
\([t_{k-1}, t_k]\) Interest period \(k\): start and end (= payment date) of the coupon
\(N\) Notional (amount) of the transaction
\(s\) Direction of the transaction: \(+1\) for BUY, \(-1\) for SELL
\(r(t)\) Zero-coupon rate read from a curve for date \(t\)
\(F_B(t_a, t_b)\) Forward rate between \(t_a\) and \(t_b\): simple rate of the period in the coupon’s basis \(B\)
\(m\) Contractual spread of the transaction (rate.spread)
\(R\) All-in customer rate of a coupon: rate component + spread
\(\ell\) Liquidity spread
\(\tau_B(t_a, t_b)\) Year fraction between \(t_a\) and \(t_b\) under day-count convention \(B\)
\(p\) Number of periods per year of the frequency (12, 4, 2, 1)
\(DF_\sigma(t)\) Discount factor at date \(t\) in scenario \(\sigma\)
\(CF\) Signed amount of a cash flow, in its currency
\(\sigma\) Scenario: BASELINE, PARALLEL_UP, PARALLEL_DOWN, SHORT_UP, SHORT_DOWN, STEEPENER, FLATTENER, UP_1_BP

All amounts are expressed from the bank’s point of view: a positive cash flow is a cash inflow (an asset repaying, interest received), a negative cash flow is an outflow (a liability repaying, interest paid). See Calculation framework, §1.10.

Vocabulary

Displayed term Business term
evaluationDate Reporting date
CAPITAL / INTEREST Principal cash flow / interest cash flow
CONTRACTUAL / BEHAVIOURAL Contractual view / behavioural view (run-off, call)
CERTAIN / UNCERTAIN Cash flow whose rate is known (already fixed) / cash flow whose rate has yet to be fixed
FIXED / FLOATING Fixed rate / floating (indexed) rate
adjustedDate Repricing date of the cash flow (for floating-rate principal: next refixing)
OutflowStrategy Run-off law (run-off convention for non-maturity balances)
NIM, MNI Net interest income (NII in EBA texts)
original = false New business transaction arising from the constant balance sheet roll-over

Launching a Cash Flow generation

Cash flow generation is launched from the detail page of an ALM situation, by clicking the Cash Flows button in the top right corner.

Launch a cash flow generation

  1. From the detail page of an ALM situation, click the Cash Flows button in the top right corner.
  2. In the Start Generation window, select the scenario type from the drop-down list: IRRBB or Custom. An IRRBB run is the official run; Custom starts a custom simulation, whose settings are described in Custom scenario.
  3. Choose the Rate projection mode: Forwards (default) or Last known rate (see Projection mode for uncertain rates).
  4. Check the displayed parameters and click Start.

Choosing a scenario

IRRBB scenario

The IRRBB scenario (Interest Rate Risk in the Banking Book) applies the EBA standard framework (guidelines EBA/GL/2022/14 and the regulatory technical standards on the supervisory outlier test). It rests on two assumptions:

  • Constant balance sheet: positions maturing within the horizon are rolled over on identical terms (see Constant and behavioural balance sheet);
  • 8 scenarios calculated simultaneously, applied to all yield curves:
Scenario Description Shock in EUR
BASELINE Current yield curve, no shock. None
PARALLEL UP Upward parallel shift of the whole curve. +200 bp
PARALLEL DOWN Downward parallel shift of the whole curve. −200 bp
STEEPENER Steepening: short rates down, long rates up. \(-0.65 \times 250\,S(t) + 0.9 \times 100\,(1 - S(t))\) bp
FLATTENER Flattening: short rates up, long rates down. \(+0.8 \times 250\,S(t) - 0.6 \times 100\,(1 - S(t))\) bp
SHORT UP Rise in short rates, decaying with maturity. \(+250\,S(t)\) bp
SHORT DOWN Fall in short rates, decaying with maturity. \(-250\,S(t)\) bp
UP 1 BP Sensitivity probe, outside the regulatory test. +1 bp

with \(S(t) = e^{-t/4}\), \(t\) being the maturity of the curve point in years. The shock sizes depend on the currency of the curve, and shocked rates are bounded by the EBA floor: see Calculation framework, §1.2.

The IRRBB run is the official run: its settings are fixed (the import’s balance sheet, the 8 scenarios above, post-shock floor applied) and it is the only one that produces the regulatory IRRBB templates.

Custom scenario

Custom simulation

A custom simulation takes the ALM situation and its calculation chain, but lets you choose the assumptions. It carries a name, which tells it apart in the list of generations, and the following settings.

Setting Official run (IRRBB) Custom simulation
Balance sheet the import’s (constant balance sheet) constant over N months, run-off, or growing by N % a year
Scenarios the 8 scenarios BASELINE always, plus the chosen regulatory shocks
Own shock none an optional CUSTOM shock: parallel, short or long
Post-shock floor applied applied or not
Rate projection your choice your choice
Results cash flows, gaps, metrics and IRRBB templates cash flows, gaps and metrics, no IRRBB template

Balance sheet

  • Constant over N months: transactions maturing within the N months are rolled over on identical terms, as in the official run (see Constant balance sheet).
  • Run-off: no new production, the balance sheet runs down.
  • Growing by g % a year: the constant balance sheet roll-overs, their amounts multiplied by \((1 + g)^{\tau}\), \(\tau\) being the number of years (Actual/365) from the evaluation date to the start of the roll-over. A negative rate shrinks the balance sheet.

Scenarios and own shock

BASELINE is always calculated; the other regulatory scenarios only when chosen. The own shock adds a CUSTOM scenario of signed size \(b\) in basis points (+100 bp = +1 %), of shape:

Shape Shock at maturity point \(t\)
Parallel \(b\)
Short \(b \cdot S(t)\), with \(S(t) = e^{-t/4}\)
Long \(b \cdot (1 - S(t))\)

Without the floor, no shocked scenario of the simulation (CUSTOM included) is bounded by the EBA floor. The formulas are detailed in Calculation framework, §1.2.


Cash flows in brief

For each transaction and each scenario, the engine determines the payment dates, calculates each coupon on the all-in rate (base rate + spread) and each principal cash flow, then discounts them. Fixed-rate cash flows use the contractual rate; floating-rate cash flows use the forward rate of the index over the coupon period. The exact formulas are in the Calculation framework and the Product Sheets.


Cash flow origins

For each simulation, the engine calculates two sets of cash flows:

Origin (origin) Description
CONTRACTUAL Cash flows determined strictly on the basis of the financial contracts, without taking behavioural options into account.
BEHAVIOURAL Cash flows determined taking behavioural options into account, in particular the application of call dates.

CashFlow object fields

Time fields

Field Description
date Date on which the cash flow occurs in the future.
timeBucket IRRBB regulatory time bucket (e.g. B_06_12M, B_12_6Y).
adjustedDate Repricing date: for the principal of a floating-rate transaction, end of the current coupon (next refixing); otherwise the cash flow date.
adjustedTimeBucket Time bucket corresponding to the adjusted date.
daysFromEvaluationDate Number of days between the cash flow date and the reference date of the situation.
period Periodicity of the cash flow: MONTH, QUARTER, SEMESTER, YEAR, AT_MATURITY, NO_PERIOD.

Identification fields

Field Description
transactionReference Reference of the transaction in the portfolio (e.g. TD_95472).
scenario IRRBB scenario applied (e.g. BASELINE, PARALLEL_UP).
origin Origin of the cash flow: CONTRACTUAL or BEHAVIOURAL.
original Indicates whether the cash flow comes from an original transaction (true) or from a roll-over within the scenario (false).
product Instrument leg for swaps: LEG1 or LEG2.
cashFlowDetail Detail of the cash flow type: INITIAL, FINAL, or cash flow number (e.g. #002).

Nature fields

Field Description
cashFlowNature Nature of the cash flow: CAPITAL or INTEREST.
interestNature Interest decomposition: GLOBAL (total), LIQUIDITY (liquidity), RATE (base rate), MARGIN (spread).
CERTAINTY Certainty level: CERTAIN (rate already fixed) or UNCERTAIN (rate yet to be fixed, or rolled-over transaction).

Valuation fields

Field Description
amount Amount of the cash flow in the instrument currency (signed).
amountInPivotCurrency Amount converted into the reference currency (signed).
effectiveRate Final rate used to value the cash flow.
discountFactor (DF) Discount factor calculated on the original date of the cash flow.
adjustedDiscountFactor Discount factor calculated on the adjusted date.

Calculated metrics

Metric Description
EVE Contribution of the cash flow to the Economic Value of Equity: amount × adjusted discount factor, for a certain cash flow; 0 otherwise.
NIM Contribution of the cash flow to net interest income: undiscounted amount, pro rata to the days of its period falling after the reporting date, for an interest cash flow.
MV Market Value: amount × discount factor, for every cash flow.

Rate fields (rate)

Sub-field Description
type Rate type: FIXED or FLOATING.
index Market index used (e.g. EURIBOR 6M SWAP).
originalIndex Original index as stipulated in the contract.
interestMode Compounding mode: SIMPLE or COMPOUND.
base Day-count convention: EXACT_EXACT, EXACT_365, EXACT_360, ABB_30_360.
value Value of the applied rate.
spread Additional spread applied to the base rate.

Calculation of aggregate metrics

From the generated cash flows, the engine calculates, for each scenario, by currency and by origin:

Metric Definition
MV (Market Value) \(\sum CF \cdot DF_\sigma(t)\) over all cash flows of the balance sheet at the reporting date (excluding roll-overs), discounted at their payment date on the scenario curve.
EVE (Economic Value of Equity) \(\sum CF \cdot DF_\sigma(t^{adj})\) over certain cash flows only, discounted at their repricing date: run-off value of the existing portfolio.
NII / NIM (Net Interest Income) Undiscounted interest accrued over the 12 months following the reporting date (each coupon pro rata to its days falling within the horizon), including constant balance sheet roll-overs.

Sensitivities are the differences from the baseline scenario, \(\Delta EVE_\sigma = EVE_\sigma - EVE_{BASELINE}\) and \(\Delta NII_\sigma = NII_\sigma - NII_{BASELINE}\). The supervisory outlier test compares the worst decline with Tier 1 capital:

  • EVE: worst \(\Delta EVE\) across the six supervisory shocks; alert threshold at 15% of Tier 1;
  • NII: worst \(\Delta NII\) across the two parallel shocks; alert threshold at 5% of Tier 1.

The engine reports the worst change and its ratio to the Tier 1 capital declared in the situation (template J 01.00); the comparison with the threshold is left to the user. Formula details: Metrics.