Investment restriction

Derivative exposure limit

A derivative exposure limit caps the exposure derivatives create, as a share of NAV, under a named measure such as notional or DV01. ‘Derivative exposure no more than 10% of NAV’ is a common form. Acclimetry sums the chosen measure over the named derivative classes and divides by NAV; a position missing its measure is a gap, never a zero.

Rule template
derivative_exposure
Derivative exposure limit
Measured in
% of portfolio value
Worked examples, run by the engine
6

How policies word it

Policies treat derivatives in three ways. Some restrict purpose to hedging or efficient portfolio management, as UK pension trustees must (statement of investment principles). Others prohibit direct derivatives or cap exposure: derivative exposure no more than 10% of NAV.

Regulated funds convert contracts into the equivalent position in the underlying, as in the AIFMD commitment method. In the US, Rule 18f-4 has a limited derivatives user exception for funds whose derivatives exposure is at most 10% of net assets.

  • Derivative exposure, measured on a delta-adjusted notional basis, will not exceed 10% of NAV.
  • Derivatives may be used only to reduce risk or for efficient portfolio management.
  • The total premium paid for options held will not exceed 5% of the portfolio.
  • No direct investment in derivatives is permitted.

How it is measured

The rule names the derivative classes, such as ‘Derivatives’ or ‘Options’, and one measure. Market value, notional and delta-adjusted notional are read from the feed in absolute terms. Equivalent underlying exposure, DV01 and provider-supplied risk come from a governed field named on the rule, in the portfolio’s currency.

Option premium uses such a field or, if none is named, the option’s market value. Every measure is summed over the named classes and divided by NAV. A future worth 20 with 300 of underlying exposure in a 1,000 book is 2% by market value but 30% by equivalent underlying.

For DV01, the limit is the value change for a one-basis-point move as a share of NAV. A position missing its measure is a gap that blocks a compliant result. A partial total already over the cap still proves the breach, because the missing measure can only add to it.

When it is breached and what follows

Derivative exposure changes with the underlying’s price and, for options, with delta, so breaches can arise without a trade. A warning bound below the cap gives notice, and proposed trades can be checked in Trade Impact before execution.

A breach opens a case at the first observation, with assignment, escalation and service-level clocks. A purpose test such as ‘hedging only’ is not a number. It can be kept as a manual obligation, attested on a schedule, alongside the exposure cap.

Data the check reads

Rule parameters

Exposure of the configured derivative classes, under the named measure, must not exceed the limit.

ParameterIn the platformOptions and help
classNamesDerivative class names
measureMeasure (each needs its stated inputs)market_value (Market value) · notional (Notional) · delta_adjusted_notional (Delta-adjusted notional) · equivalent_underlying (Equivalent underlying exposure (from a governed field)) · dv01 (Duration / DV01 (from a governed field)) · option_premium (Option premium (from a governed field, else the position's market value)) · provider_risk (Provider-supplied risk measure (from a governed field))
measureFieldCodeMeasure field codeThe governed custom field that carries the measure, in the portfolio's currency: required for equivalent underlying, DV01 and provider-supplied risk; optional for option premium.

Bounds the rule must set: hardMax

Methodology choices

Parameter names, methodology text and result-code meanings are shown exactly as the platform states them.

Worked examples, run by the engine

A future with 500 notional in a 1,000 book is 50% notional exposure, inside a 60% cap

Rule template: derivative_exposure

classNames: Derivatives
measure: notional
Bounds: hard max 60%

Holdings
HoldingClassMarket valueNotional
FUTDerivatives200500
EQStocks800–
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Compliant 50% ≤ 60% 10% WITHIN_LIMITS
  • WITHIN_LIMITS: The measured value sits inside every approved bound.

Largest contributors: Derivative exposure → FUT 50%

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

Delta-adjusted notional of 700 over a 1,000 book is 70%, over a 60% cap

Rule template: derivative_exposure

classNames: Derivatives
measure: delta_adjusted_notional
Bounds: hard max 60%

Holdings
HoldingClassMarket valueDelta-adjusted notional
OPTDerivatives200700
EQStocks800–
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Breach 70% ≤ 60% -10% ABOVE_HARD_MAXIMUM
  • ABOVE_HARD_MAXIMUM: The measured value exceeds the approved hard maximum, beyond any stated tolerance.

Largest contributors: Derivative exposure → OPT 70%

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

A partial notional of 700 already over the 60% cap proves the breach while a second derivative states no notional — the numerator can only grow

Rule template: derivative_exposure

classNames: Derivatives
measure: notional
Bounds: hard max 60%

Holdings
HoldingClassMarket valueNotional
FUT1Derivatives100700
FUT2Derivatives100–
EQStocks800–
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Breach 70% ≤ 60% – ABOVE_HARD_MAXIMUM
  • ABOVE_HARD_MAXIMUM: The measured value exceeds the approved hard maximum, beyond any stated tolerance.

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

Equivalent underlying: a future worth 20 with 300 of underlying exposure against a 1,000 book is 30%, above a 25% cap

Rule template: derivative_exposure

classNames: Derivatives
measure: equivalent_underlying
measureFieldCode: UNDERLYING_EXPOSURE
Bounds: hard max 25%

Holdings
HoldingClassMarket valueUNDERLYING_EXPOSURE
FUTDerivatives20300
EQStocks980(blank)
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Breach 30% ≤ 25% -5% ABOVE_HARD_MAXIMUM
  • ABOVE_HARD_MAXIMUM: The measured value exceeds the approved hard maximum, beyond any stated tolerance.

Largest contributors: Derivative exposure → FUT 30%

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

DV01: a swap without its DV01 field is a measure gap, not a zero — the rule is not evaluated

Rule template: derivative_exposure

classNames: Derivatives
measure: dv01
measureFieldCode: DV01
Bounds: hard max 1%

Holdings
HoldingClassMarket value
SWAPDerivatives10
EQStocks990
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Not evaluated: data quality – ≤ 1% – MISSING_POSITION_DATA
  • MISSING_POSITION_DATA: One or more positions had no readable value, and the partial numbers do not prove the outcome either way.

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

Option premium falls back to market value when no field is named: 40 of 1,000 is 4%, inside a 5% cap

Rule template: derivative_exposure

classNames: Options
measure: option_premium
Bounds: hard max 5%

Holdings
HoldingClassMarket value
CALLOptions40
EQStocks960
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Compliant 4% ≤ 5% 1% WITHIN_LIMITS
  • WITHIN_LIMITS: The measured value sits inside every approved bound.

Largest contributors: Derivative exposure → CALL 4%

These are the product's own test cases for this template, evaluated by the Acclimetry rule engine (backend commit 8197063). The build fails if any result changes.

An index option and a bond future add 85,000 of delta-adjusted notional, 8.5% of NAV: past the 8% warning bound and inside the 10% cap, though their market value is only 1.2%.

Rule template: derivative_exposure

classNames: Derivatives
measure: delta_adjusted_notional
Bounds: warn max 8% · hard max 10%

Holdings
HoldingClassMarket valueDelta-adjusted notional
UK equity index call optionDerivatives12,00045,000
Long gilt futureDerivatives040,000
UK equitiesEquities700,000–
UK giltsBonds288,000–
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Derivative exposure Warning 8.5% ≤ 10%
warning ≤ 8%
1.5%
-0.5% to warning
ABOVE_WARNING_MAXIMUM
  • ABOVE_WARNING_MAXIMUM: The measured value has crossed the early-warning maximum but not the hard limit.

Largest contributors: Derivative exposure → UK equity index call option 4.5%, Long gilt future 4%

Computed at build time by the Acclimetry rule engine (backend commit 8197063); the same code runs in the product.

Interpretation traps

Market value understates

A future or swap can have a market value near zero and a large exposure. Use notional, delta-adjusted notional or equivalent underlying when the policy means economic exposure; see derivative exposure measures.

Longs and shorts both add

Market value, notional and delta-adjusted notional are taken in absolute terms, so a long and a short future on one index both add. A policy that lets hedges offset means a netted figure, which this template does not compute.

Class names set the scope

Only positions in the named classes count. A forward booked under ‘FX’ or a warrant under ‘Equities’ falls outside the rule unless its class is listed.

DV01 is money, not percent

DV01 is an amount per basis point, so the limit is that amount as a share of NAV. Check that the field is in the portfolio’s currency and that the cap is set in the same terms.

Result codes this check can return

CodeStateMeaningWhat to do
WITHIN_LIMITS ✓CompliantThe measured value sits inside every approved bound.–
ABOVE_WARNING_MAXIMUMWarningThe measured value has crossed the early-warning maximum but not the hard limit.No breach yet; the early-warning band exists so the position can be managed before one.
BELOW_WARNING_MINIMUMWarningThe measured value has crossed the early-warning minimum but not the hard limit.No breach yet; the early-warning band exists so the position can be managed before one.
ABOVE_HARD_MAXIMUM ✓BreachThe measured value exceeds the approved hard maximum, beyond any stated tolerance.Remediate the exposure, or record an approved waiver against the case.
BELOW_HARD_MINIMUMBreachThe measured value falls below the approved hard minimum, beyond any stated tolerance.Remediate the exposure, or record an approved waiver against the case.
CONSERVATIVE_MISSING_DATABreachData was missing and this rule version's approved unknown-data policy is conservative_breach, so the gap is treated as a breach rather than as Not Evaluated.Supply the missing values; the reading is deliberately pessimistic until you do.
EMPTY_PORTFOLIONot applicableThe portfolio held no positions at the evaluation moment.–
NOT_IN_SCOPENot applicableThis rule version does not apply to this portfolio — the portfolio is outside the version's stated scope. Recorded so that "considered and out of scope" can be told from "never run".–
AGGREGATE_MEMBER_NOT_ACCEPTEDNot evaluated: data qualityA portfolio in the measured set has no authoritative snapshot, so the set-level number cannot be stated.Accept the named portfolios' snapshots. A partial set produces no aggregate.
MISSING_POSITION_DATA ✓Not evaluated: data qualityOne or more positions had no readable value, and the partial numbers do not prove the outcome either way.Supply the missing valuations. The platform will not fabricate a zero to produce a reading.
SNAPSHOT_NOT_ACCEPTEDNot evaluated: data qualityThe portfolio's newest snapshot awaits data-quality review; only accepted data may produce an authoritative result.Accept, override or reject the snapshot on Data & Quality.
SNAPSHOT_REJECTEDNot evaluated: data qualityThe portfolio's newest snapshot was rejected, so there is no authoritative data to measure.Load a corrected file.
STALE_POSITIONSNot evaluated: data qualityThe newest snapshot is older than the organisation's staleness threshold.Load current positions, or revisit the threshold on Data & Quality ▸ Policy.
STALE_PRICESNot evaluated: data qualityA holding had no price on the position file and its approved price was older than the organisation's price-staleness threshold, so it was left unvalued.Load a current price for the holding, price it on the position file, or revisit the threshold on Data & Quality ▸ Policy.
AWAITING_EXTERNAL_DATAPending external dataAn approved input is late but still inside the organisation's grace window. This is not a pass and not an exception.None yet. If the delivery does not arrive, this becomes a data-quality exception.
METHOD_NOT_SUPPORTEDNot evaluated: unsupportedThe rule version asks for a measurement method this engine does not implement. Declared rather than approximated.Choose a supported methodology, or treat this limit as a manual obligation until the method ships.
EVALUATOR_ERRORNot evaluated: system errorThe evaluator raised an error. Surfaced as a visible result rather than as silence.Report it. A system error is never a pass and never a compliant reading.

✓ seen in the worked examples. The rest come from the platform registry’s own scan of the template source.

Regulatory analogues

Questions

Which measure should a 10% derivative cap use?

The one the policy names. If it is silent, delta-adjusted notional or equivalent underlying usually matches the intent better than market value; record the choice as an author decision.

What if one derivative has no notional?

The rule is not evaluated, unless the derivatives that do state a notional already exceed the cap. Then the breach is proven, because the missing figure can only add to it.

Sources

Updated: 12 October 2026Acclimetry · Foreranger Ltd