Policy clause
"No more than 20% with any one issuer group": how to write it, test it and evidence it
An issuer-group limit adds everything a portfolio holds under one ultimate parent: the parent's bonds, a subsidiary's covered bonds, a deposit with its bank. It needs a current parent hierarchy and a rule for unknown parents. Acclimetry measures it with the concentration template on the issuer-group dimension.
Exposure to any one issuer group, meaning an ultimate parent and its subsidiaries, may not exceed 20% of the portfolio.
Questions to settle before it can be tested
- Membership: majority-owned subsidiaries only, or every consolidated entity? That decides which parent data the rule reads; LEI Level 2 records are one source.
- Ownership changes: a takeover can merge two compliant groups into one breaching group overnight. Each run reads the hierarchy in force on its date.
- Unknown parents: an issuer with no recorded parent is its own group, and a holding with no issuer leaves the rule not evaluated.
- Deposits: if cash at the group's bank counts, the deposit must carry that bank as issuer.
As a testable rule
Concentration template, dimension issuer group: the market value of every holding under one ultimate parent over the net market value of the measured positions. Hard maximum 20%, warning maximum 18%, tolerance zero. Each result names the group and lists its lines, so a reader sees which subsidiaries added up.
A testable wording
Exposure to any issuer group, meaning an ultimate parent and every entity it controls, may not exceed 20% of the portfolio's market value. Securities and deposits both count.
Sourcing the hierarchy is covered in issuer groups and ultimate parents. For UCITS funds, see issuer groups as a single body.
Worked example
Three Beacon entities hold 10%, 8% and 4% of the 2.5m book; under one ultimate parent they are 22%, over the cap.
Rule template:concentration dimension: issuerGroup
Bounds: warn max 18% · hard max 20%
| Holding | Issuer | Issuer group | Class | Market value |
|---|---|---|---|---|
| Beacon Holdings plc 4.6% 2031 | Beacon Holdings plc | Beacon Banking Group | Corporate bonds | 250,000 |
| Beacon Bank covered bond 2028 | Beacon Bank plc | Beacon Banking Group | Covered bonds | 200,000 |
| Beacon UK Bank 95-day deposit | Beacon UK Bank Ltd | Beacon Banking Group | Cash | 100,000 |
| UK Treasury 3.25% 2033 | HM Treasury | HM Treasury | Government bonds | 450,000 |
| Kestrel Utilities 5% 2031 | Kestrel Utilities plc | Kestrel Utilities plc | Corporate bonds | 400,000 |
| Northwind Energy 4.75% 2030 | Northwind Energy plc | Northwind Energy plc | Corporate bonds | 450,000 |
| Lumen Telecom 5.25% 2029 | Lumen Telecom plc | Lumen Telecom plc | Corporate bonds | 350,000 |
| Cash at custodian | Custodian bank | Custodian bank | Cash | 300,000 |
| Group | Status | Value | Bounds | Headroom to the hard bound | Code |
|---|---|---|---|---|---|
| Beacon Banking Group | Breach | 22% | ≤ 20% warning ≤ 18% | -2% -4% to warning | ABOVE_HARD_MAXIMUM |
| HM Treasury | Compliant | 18% | ≤ 20% warning ≤ 18% | 2% 0% to warning | WITHIN_LIMITS |
| Kestrel Utilities plc | Compliant | 16% | ≤ 20% warning ≤ 18% | 4% 2% to warning | WITHIN_LIMITS |
| Northwind Energy plc | Compliant | 18% | ≤ 20% warning ≤ 18% | 2% 0% to warning | WITHIN_LIMITS |
| Lumen Telecom plc | Compliant | 14% | ≤ 20% warning ≤ 18% | 6% 4% to warning | WITHIN_LIMITS |
| Custodian bank | Compliant | 12% | ≤ 20% warning ≤ 18% | 8% 6% to warning | WITHIN_LIMITS |
ABOVE_HARD_MAXIMUM: The measured value exceeds the approved hard maximum, beyond any stated tolerance.WITHIN_LIMITS: The measured value sits inside every approved bound.
Largest contributors: Beacon Banking Group → Beacon Holdings plc 4.6% 2031 10%, Beacon Bank covered bond 2028 8%, Beacon UK Bank 95-day deposit 4% · HM Treasury → UK Treasury 3.25% 2033 18% · Kestrel Utilities plc → Kestrel Utilities 5% 2031 16%
Computed at build time by the Acclimetry rule engine (backend commit 8197063); the same code runs in the product.
What each monitoring run records
Each run stores, per group, the state, reason code, weight, headroom and the subsidiaries' lines as contributors. A breach opens or updates a case with its root cause, such as a trade or a market move. A wrong parent link is corrected through new reference data, and the stored result stays as it was.