Features
Everything HERMES ALM does.
The complete feature list, taken from the HERMES ALM user manual and methodology guide.
Client configuration
A set-up created once to connect the bank’s exports to the HERMES ALM data model.
Reusable client configurations
Create a mapping configuration once, update it when the bank’s exports change, and keep several side by side to test a new export.
Declared data format
The input file format is chosen explicitly in the configuration and alone determines how files are read.
Column and product mapping
Map each engine field to a column of your extracts, product by product, and each of the bank’s instrument types to a product model.
Rate index mapping
Link each of the bank’s rate labels to a curve in the rate file, with the option of distinguishing tenors (3M, 6M…) of the same label.
Compound curves
Build a discount or projection curve from several elementary curves, each covering its own maturity range.
Day-count conventions
Translate your systems’ day-count conventions (30/360, ACT/360, ACT/365, ACT/ACT) into engine bases, with a default value for empty cells.
Transaction tags
Copy columns from your files, such as the entity, as tags on each transaction to group and filter results.
Discount index picker
The situation’s discount curve is picked from a list built from the configuration, shown under the bank’s own labels.
Data import
Two ways to load a complete reporting date: file by file or as a single archive.
Guided file-by-file import
Drop each file into a typed slot and get it checked on upload, before the import is even started.
Archive import
Import a situation in one go from a .zip archive containing all its files.
Drafts you can resume
Pause a guided import at any time and pick it up later exactly where you left off.
Reopen a failed import
Reopen a failed guided import as a draft: files already uploaded are kept and only the faulty ones need replacing.
Situation information form
Enter client, reporting date, portfolio, discount index and pivot currency in a form: the information file is written for you.
One situation, seven files
A situation brings together general information, run-off model, classification, accounting balance, pre-fixed cash flows, rate curves and one or more transaction files.
Excel, CSV and text files
Balances, curves and transactions are accepted as .xlsx, .csv or .txt; the separator of a delimited file is detected automatically.
Robust amount parsing
Decimal comma or point, thousands spaces and scientific notation are recognised, and an empty cell is flagged rather than read as zero.
FINREP and IRRBB classification
A classification workbook links the bank’s accounting categories to the FINREP codes and IRRBB classes used by the EVE and NII models.
Pre-fixed cash flows
Import the already-fixed cash flows of your transactions so they replace the calculation for known payments.
Market rate curves
Load the reporting-date curves, from spot and overnight points to multi-year maturities, by index and currency.
Built-in import guide
An in-app guide walks through the process screen by screen and each file column by column, with an Excel template and mapping to download.
Consistency checks
Anomalies are detected as early as possible and explained, so the reporting date can be used without surprises.
Instant check of every file
Every uploaded file is read by the engine with the draft’s configuration and gets a status: checking, valid or n anomalies.
Preview of what was read
For each file, a total and a breakdown (by product, index, account class…) let you confirm it is the expected reporting date.
Guarded launch
The import cannot start while a file is being checked or has anomalies, and empty slots are pointed out.
Rate index checks
Every mapped index and every compound-curve component must exist in the rate file, and the discount index must be known before the import starts.
Unmapped-rate transactions kept
A transaction quoting a rate label missing from the mapping is still valued, with a warning naming the label to add.
Stale curve alert
A curve quoted more than 50 days away from the reporting date triggers a warning stating the gap.
Browsable import anomalies
A dedicated tab lists every anomaly with level, type and message, with filters, free-text search and export.
Typed anomalies
Each anomaly is tied to a step (index, parsing, mapping, compound curve, constraint, missing data…) so the fix can be targeted.
ALM situation
All the data of a reporting date, open for review before any calculation.
Situations grouped by reporting date
Find every imported situation grouped by reporting date, with status, import duration and counts of transactions, errors and warnings.
Archive, delete and restore
Archive situations no longer in use; deletion is logical and an administrator can restore the situation.
Situation summary
Portfolio, evaluation context, reporting date, import times and download of the source files are gathered on one page.
Run-off laws on display
View the run-off strategies applied: type, product, reference, rate, frequency and horizon.
Evaluation context and curves
Review the pivot currency, the resolved discount index and every rate curve of the context, with its detail and export.
Filterable portfolio
Browse transactions by free text, product, sub-product, tag or generation (original or new) and export them to a spreadsheet.
Transaction detail sheet
Open any transaction to see its terms (dates, amount, rate, call) and all its raw imported data, edit it or add tags.
Accounting statement
Review the reporting-date accounting balance lines, filterable by keyword and exportable.
Balance sheet pivot table
Analyse the balance sheet by dragging fields into filters, rows, columns and values, with a choice of aggregation function.
IRRBB rate scenarios
The EBA and Basel Committee standard shock set, applied in a single run.
Eight scenarios at once
One run computes the baseline, the six supervisory shocks and a sensitivity probe together.
Six supervisory shocks
Parallel up and down, steepener, flattener, short up and short down, following EBA/GL/2022/14 and BCBS SRP31.90.
+1 bp sensitivity probe
A +1 basis point scenario, DV01-style, measures sensitivity without entering the regulatory test.
Shock sizes by currency
Parallel, short and long shock sizes follow the curve’s currency (EUR, USD, GBP, JPY, CHF…), other currencies using the euro values.
EBA post-shock floor
Shocked rates are bounded by the EBA floor, from −150 bp at immediate maturities to 0% at 50 years.
Shocks on every rate curve
Every point of every rate curve is shocked, and the curves of each scenario remain available for review.
Fixed rates stay unshocked
A cash flow whose rate is already fixed keeps the same rate in every scenario; only uncertain cash flows are shocked.
Cash-flow generation
An engine that projects, values and classifies every cash flow of every transaction, in every scenario.
Run from the situation
Launch cash-flow generation from a situation, choosing the scenario type and the rate projection mode.
End-to-end calculation chain
Scenarios, constant balance sheet, product-family generation, post-processing and metrics run as one chain.
Curve selection and interpolation
The engine picks the curve closest to the reporting date, interpolates linearly in days and extrapolates flat, with alerts when dates drift.
Forward rate of floating coupons
Floating coupons are projected at the forward rate read on their index curve.
Scenario-specific discounting
Each cash flow gets a discount factor on the scenario curve, at its payment date and at its repricing date.
Day-count bases and interest modes
Exact/Exact, Exact/365, Exact/360 and 30/360, with simple or compound interest.
Rate, liquidity and margin split
Each coupon, computed on the base rate plus spread, is split into rate component, liquidity spread and commercial margin.
Certainty of each cash flow
Each cash flow is classed as certain (rate already fixed) or uncertain (rate still to fix, new business), using the index’s refixing calendar.
Repricing date of floating principal
The principal of a floating-rate transaction is placed at its next refixing date, giving it its true rate sensitivity.
Multi-currency with pivot currency
Each cash flow is computed in its own currency and then converted into the pivot currency using FX curves.
19 EBA time buckets
Each cash flow is assigned to one of the 19 EBA repricing buckets, by payment date and by repricing date.
Projection of uncertain rates
Floating rates not yet fixed are projected at the forward rate of their period, contractual spread included, on the scenario’s shocked curve.
Rate prefixing
Enter a per-transaction rate that replaces the curve rate over its validity period; its use is traced in the log.
Products covered
The banking-book product families, each with its own cash-flow generator.
Bullet loans and borrowings
Periodic or at-maturity coupons, fixed or floating, with early repayment at the call date in the behavioural view.
Term deposits
Fixed-maturity deposits received, handled with the same schedule, rate and call rules as bullet loans.
Amortising loans
Constant instalments or linear amortisation, with the schedule rebuilt from the loan’s origination.
Bonds
Periodic coupon, single coupon or zero-coupon, fixed or floating rate.
Interest rate swaps
Each leg is generated separately, with forward or backward schedules and notional exchanges that carry each leg’s sensitivity.
Repos
The cash leg is modelled as a bullet placement or borrowing, for both reverse repos and repos.
Non-maturity deposits
Sight deposits and savings accounts run off along a conventional law, at fixed or floating rates or non-interest-bearing.
Accounting balances
Balances taken from the general ledger are attached to a run-off law by account prefix, the longest prefix winning.
Constant and behavioural balance sheet
The balance-sheet assumptions that take you from contracts to behaviour.
Contractual and behavioural views
Every simulation produces two sets of cash flows: per the contracts alone, and with behavioural options such as calls.
Constant balance sheet
Transactions maturing within the chosen horizon are renewed like for like, repeatedly, so the balance sheet does not shrink.
Bucket-based run-off law
Spread the balance across maturities (1 month, 1 year…) whose shares add up to 100%, checked by the engine.
Linear run-off law
Run a balance off in equal shares over a chosen horizon and frequency.
Python script run-off law
Describe a behavioural deposit model as a Python function executed by the engine.
One law per view
The same product can run off along one convention in the contractual view and a behavioural model in the behavioural view.
Call dates
The imported call date is applied in the behavioural view: principal repaid at the call, later coupons removed.
Interest rate risk metrics
Regulatory and management measures, by currency, scenario and view.
Market value (MV)
Present value of all cash flows, certain and uncertain, discounted on each scenario’s curve.
Economic value of equity (EVE)
Run-off value of certain cash flows only, discounted at their repricing date, as the IRRBB framework requires.
12-month net interest income (NII)
Net interest income over the 12 months after the reporting date, constant balance sheet renewals included.
One-year variants
MV and EVE are also reported on cash flows paid within one year only.
ΔEVE, ΔNII, ΔMV sensitivities
Each scenario is compared with the baseline to measure the change in value and in margin.
Supervisory outlier test
Worst EVE and NII variations across scenarios, as ratios of the reported own funds.
Carrying amount and average maturity
Carrying amount and balance-weighted average residual contractual maturity, by currency and FINREP classification.
Notionals and repricing schedules
Schedule by repricing bucket, notional, weighted average yield and maturity, separately for fixed and floating rates.
Transaction-level metrics
MV, EVE and NII are also computed transaction by transaction, with their notional, and add up to the aggregate metrics.
Metrics summary and export
Each reporting run’s metrics are shown by currency and scenario and can be exported to a spreadsheet.
Gaps and cash-flow analysis
Explore, chart and export the cash flows of a run.
Liquidity gap
Inflows, outflows and net gap of principal cash flows in the pivot currency, placed at their payment date.
Interest rate gap
The same cash flows placed at their repricing date, to see when rates reset.
Axes, cumulation and sensitivity filter
Weekly, monthly, quarterly or IRRBB buckets, cumulative position or remaining balance, and a filter on rate-sensitive cash flows only.
Gap chart
Inflows, outflows, net and cumulative net flows per period, filterable by scenario, dates, currency, tag, reference and product.
Gap table by classification
Gaps cross-tabulated by classification and period, ready to export.
Cash-flow explorer
Every generated cash flow can be viewed with its date, bucket, rate, discount factor and contributions to EVE, NII and MV.
Cash-flow filters
Filter by transaction, time bucket, scenario, rate type, view, certainty and nature (principal or interest).
CSV, Excel and Parquet exports
Export cash flows and gaps, in full or just the filtered view.
Python notebook access
A ready-to-use Python script loads the run’s cash flows, stored as Parquet, into a pandas DataFrame.
EBA IRRBB templates
The ITS templates J 01.00 to J 11.02, filled by currency from the situation’s cash flows.
IRRBB reporting run
The reporting run regenerates cash flows, computes the metrics and fills the EBA workbooks of Implementing Regulation (EU) 2024/855, Annex XXIX, by currency.
Built-in interactive spreadsheet
The filled templates are shown in an interactive spreadsheet right in the page.
J 01.00 – Outlier test
Supervisory outlier test and key metrics: baseline EVE, NII and MV, changes per shock, worst changes and capital ratios.
J 02.00 to J 04.00 – Sensitivities
Breakdown by FINREP classification with balance, maturity, EVE, NII and MV, cumulated parent rows, fixed-rate “of which” rows and net positions.
J 05.00 to J 07.00 – Repricing
Repricing cash flows in fixed-rate and floating-rate blocks, with a contractual tab and a behavioural tab.
J 08.00 / 09.00 – Non-maturity deposits
Non-maturity deposit notional by category, with stable, exempt or operational shares taken from declared data.
J 10.01 to J 11.02 – Qualitative
Qualitative answers declared on the situation are carried into the templates, cell by cell.
ITS sign convention
The engine works in signed amounts and applies the ITS presentation as a final step, in line with the EBA validation rules.
Reporting history
Every reporting run is listed with its evaluation date, scenario and counts of reports, errors and warnings.
Traceability and methodology
Every calculation is logged and every formula documented.
Cash-flow run history
Every run is listed with its evaluation date, scenario, counts of cash flows, errors and warnings, duration and progress.
Isolation of failing transactions
A failing transaction is removed from the calculation and logged with its reference, while the rest of the portfolio is computed.
Typed calculation logs
Calculation logs are classed by level and type, with filters, free-text search and export.
Reporting-specific warnings
The reporting run flags transactions left out of average maturities, deposits without a rate and missing declared capital.
Documented methodology
A methodology guide sets out, formula by formula and product by product, how every cash flow, metric and template is computed.
Explicit assumptions and limits
Modelling assumptions, method changes and known limitations are published product by product.
See it on your balance sheet
A 45-minute demo with an ALM expert, focused on your products, your run-off models and your IRRBB templates.