| Title: | Offline Solvency II Calculations and Regulatory Parameters |
|---|---|
| Description: | Native, offline calculations for Solvency II with explicit rule profiles, regulatory parameters, correlation matrices and synthetic reference cases. Structured results record inputs, sources and analyst overrides. The implementation follows the published 'solvency2' Python reference library without requiring Python at runtime. Includes local curve adapters, dependency graphs and archived reporting definitions and component checks. |
| Authors: | RiskDataScience GmbH [aut, cph, cre] |
| Maintainer: | RiskDataScience GmbH <[email protected]> |
| License: | GPL (>= 3) |
| Version: | 0.5.0 |
| Built: | 2026-10-21 12:27:45 UTC |
| Source: | https://github.com/rds0001/solvency2-r |
Aggregate already determined module charges using an explicit regulatory matrix.
aggregate_risk(components, matrix_id, context, ...)aggregate_risk(components, matrix_id, context, ...)
components |
Components. Reference type: |
matrix_id |
Matrix id. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("default-baseline-matrix-3-4") result <- do.call(aggregate_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("default-baseline-matrix-3-4") result <- do.call(aggregate_risk, c(case$kwargs, list(context = context))) result$value
Catalogue of Golden Source APIs
api_catalogue()api_catalogue()
Named list of functions, domains, source signatures and contracts. Source signatures use Python notation; the R help pages give R signatures.
names(api_catalogue())names(api_catalogue())
Route3 excludes already assigned176a(1)-CQS2 instruments, not every instrument that might hypothetically qualify for2. Choice and substantive assessments are explicit external inputs. Existing numeric screens remain authoritative for their limited arithmetic and profile-specific analyst overrides.
assigned_credit_eligibility_screen( issuer_financials, yield_inputs, conditions, target_cqs, qualification_reference, context, assessment = NULL, ... )assigned_credit_eligibility_screen( issuer_financials, yield_inputs, conditions, target_cqs, qualification_reference, context, assessment = NULL, ... )
issuer_financials |
Issuer financials. Reference type: |
yield_inputs |
Yield inputs. Reference type: |
conditions |
Conditions. Reference type: |
target_cqs |
Target cqs. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
assessment |
Assessment. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-eligibility-baseline-financial-fails") result <- do.call(assigned_credit_eligibility_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-eligibility-baseline-financial-fails") result <- do.call(assigned_credit_eligibility_screen, c(case$kwargs, list(context = context))) result$value
Rows are oldest to newest, consecutive completed financial years. All supplied rows are validated; only the latest prescribed windows are used. EUR inputs remain EUR even if Context.currency differs. Definitions, chronology, latest-value alignment and currency-revenue scope are external. A pass does not satisfy other Article176a conditions or assign a CQS.
assigned_credit_issuer_financial_screen( financial_years, latest_financials, eligible_currency_revenue_share, years_without_credit_event, qualification_reference, context, ... )assigned_credit_issuer_financial_screen( financial_years, latest_financials, eligible_currency_revenue_share, years_without_credit_event, qualification_reference, context, ... )
financial_years |
Financial years. Reference type: |
latest_financials |
Latest financials. Reference type: |
eligible_currency_revenue_share |
Eligible currency revenue share. Reference type: |
years_without_credit_event |
Years without credit event. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-baseline-one-small-year") result <- do.call(assigned_credit_issuer_financial_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-baseline-one-small-year") result <- do.call(assigned_credit_issuer_financial_screen, c(case$kwargs, list(context = context))) result$value
Index keys are 2/4 or 3/4, not sorted by observed yield. All rates are absolute decimal rates, allowing negative yields. Complete comparable own issues, issue-date indices, maturity/currency and any adjustments under paragraphs8/9 must be supplied and qualified externally.
assigned_credit_yield_screen( yield_observations, index_yields, current_issue_id, target_cqs, qualification_reference, context, ... )assigned_credit_yield_screen( yield_observations, index_yields, current_issue_id, target_cqs, qualification_reference, context, ... )
yield_observations |
Yield observations. Reference type: |
index_yields |
Index yields. Reference type: |
current_issue_id |
Current issue id. Reference type: |
target_cqs |
Target cqs. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-baseline-yield-not-capped-at-one") result <- do.call(assigned_credit_yield_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("assigned-credit-baseline-yield-not-capped-at-one") result <- do.call(assigned_credit_yield_screen, c(case$kwargs, list(context = context))) result$value
Five-module aggregation plus the charge on recognised intangible assets.
basic_scr(components, intangible_charge, context, ...)basic_scr(components, intangible_charge, context, ...)
components |
Components. Reference type: |
intangible_charge |
Intangible charge. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("bscr-2027-five-modules") result <- do.call(basic_scr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("bscr-2027-five-modules") result <- do.call(basic_scr, c(case$kwargs, list(context = context))) result$value
Inadequate internal processes cannot justify this exception. Neither an invented materiality percentage nor a preferred actuarial model is supplied.
best_estimate_approximation_conditions( conditions, qualification_reference, context, ... )best_estimate_approximation_conditions( conditions, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("be-approx-baseline-combination-31") result <- do.call(best_estimate_approximation_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("be-approx-baseline-combination-31") result <- do.call(best_estimate_approximation_conditions, c(case$kwargs, list(context = context))) result$value
No projection model, curve interpolation or compounding convention is invented here. Discount factors must match the payment dates and currency. Inflows include premiums, not separately valued reinsurance recoverables.
best_estimate_cashflows( cashflows, runoff_complete, cashflow_reference, curve_reference, context, ... )best_estimate_cashflows( cashflows, runoff_complete, cashflow_reference, curve_reference, context, ... )
cashflows |
Cashflows. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
cashflow_reference |
Cashflow reference. Reference type: |
curve_reference |
Curve reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("be-at-valuation-date") result <- do.call(best_estimate_cashflows, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("be-at-valuation-date") result <- do.call(best_estimate_cashflows, c(case$kwargs, list(context = context))) result$value
Every row identifies a disjoint obligation or contract part. Its evidence qualifies legal enforceability, unilateral rights, full-risk reflection, profile-specific life rules, discernibility and any unbundling. Accepted reinsurance is assessed independently of underlying contract boundaries. These substantive qualifications remain external, not certified here.
best_estimate_contract_cashflows( obligations, runoff_complete, cashflow_reference, curve_reference, context, ... )best_estimate_contract_cashflows( obligations, runoff_complete, cashflow_reference, curve_reference, context, ... )
obligations |
Obligations. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
cashflow_reference |
Cashflow reference. Reference type: |
curve_reference |
Curve reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Article18(5)(c) is cross-checked against the same-version English text; the incomplete German source is preserved. Paid premiums, discernible cover/guarantee or enforceable future premiums disapply this exception. Unbundled parts are independently qualified, not inferred from cash flows.
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("contract-exception-baseline-enforceable") result <- do.call(best_estimate_contract_cashflows, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("contract-exception-baseline-enforceable") result <- do.call(best_estimate_contract_cashflows, c(case$kwargs, list(context = context))) result$value
Bind a local discount curve to externally projected cashflows
best_estimate_with_curve( cashflows, curve, runoff_complete, cashflow_reference, context )best_estimate_with_curve( cashflows, curve, runoff_complete, cashflow_reference, context )
cashflows |
Named list keyed by payment date with |
curve |
Validated |
runoff_complete |
Explicit completeness declaration. |
cashflow_reference |
External cashflow provenance. |
context |
Explicit |
A Result, including the user curve's metadata and content hash.
ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") curve <- DiscountCurve("example", ctx$as_of, "EUR", "custom", "synthetic example", list(list("2026-01-17", 0.97))) best_estimate_with_curve(list("2026-01-17" = list(expected_inflows = 0, expected_outflows = 100)), curve, TRUE, "synthetic cashflows", ctx)$valuectx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") curve <- DiscountCurve("example", ctx$as_of, "EUR", "custom", "synthetic example", list(list("2026-01-17", 0.97))) best_estimate_with_curve(list("2026-01-17" = list(expected_inflows = 0, expected_outflows = 100)), curve, TRUE, "synthetic cashflows", ctx)$value
Assigned CQS eligibility and exclusions are external. The published CQS4 jump above20 years is retained, not interpolated away. The 2027 scope explicitly excludes defaulted and forborne loans; callers must qualify that scope before supplying a position to this factor API.
bond_spread_stress( modified_duration, category, classification_reference, credit_quality_step = NULL, context, assigned_eligibility = NULL, coinvestment = NULL, ... )bond_spread_stress( modified_duration, category, classification_reference, credit_quality_step = NULL, context, assigned_eligibility = NULL, coinvestment = NULL, ... )
modified_duration |
Modified duration. Reference type: |
category |
Category. Reference type: |
classification_reference |
Classification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
context |
Explicit |
assigned_eligibility |
Assigned eligibility. Reference type: |
coinvestment |
Coinvestment. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-captive-quality") result <- do.call(bond_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-captive-quality") result <- do.call(bond_spread_stress, c(case$kwargs, list(context = context))) result$value
Structured calculation failure
CalculationError(code, field, message)CalculationError(code, field, message)
code |
Machine-readable error code. |
field |
Offending input or resource field. |
message |
Human-readable explanation. |
An R condition inheriting from CalculationError, s2_error, error
and condition. Constructing it does not signal it; use stop() to signal.
error <- CalculationError("INVALID_INPUT", "amount", "finite amount required") error$codeerror <- CalculationError("INVALID_INPUT", "amount", "finite amount required") error$code
SCR inputs exclude prior/concurrent add-ons. Modified valuations and any permitted offsetting under283(7) are externally qualified. Article279's risk-profile significance thresholds are separate from imposing an add-on. No quantitative governance/additional2027 Article37(1)e formula is invented.
capital_add_on_amount( base_scr, modified_scr, method, qualification_reference, context, base_eligible_own_funds = NULL, modified_eligible_own_funds = NULL, rebuttal_established = NULL, ... )capital_add_on_amount( base_scr, modified_scr, method, qualification_reference, context, base_eligible_own_funds = NULL, modified_eligible_own_funds = NULL, rebuttal_established = NULL, ... )
base_scr |
Base scr. Reference type: |
modified_scr |
Modified scr. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
base_eligible_own_funds |
Base eligible own funds. Reference type: |
modified_eligible_own_funds |
Modified eligible own funds. Reference type: |
rebuttal_established |
Rebuttal established. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-addon-baseline-risk-zero-base") result <- do.call(capital_add_on_amount, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-addon-baseline-risk-zero-base") result <- do.call(capital_add_on_amount, c(case$kwargs, list(context = context))) result$value
Future MCR plans also respond to prospective breach; historical MCR and SCR plans here respond to actual breach. No grace period for notification, calendar deadline, automatic extension, filing or approval is produced. Optional Article136 evidence adds its independent notification trigger; absence is not evidence that financial deterioration has been ruled out. Combined-group minimum breaches use233a(6) only in the2027 profile; SCR own funds never substitute for minimum-eligible basic own funds.
capital_breach_requirements( capital_requirement, actual_breach, breach_risk_within_horizon, qualification_reference, deterioration = NULL, consolidated_own_funds = NULL, consolidated_scr = NULL, transition_measures = NULL, transition_plan_active = NULL, context, ... )capital_breach_requirements( capital_requirement, actual_breach, breach_risk_within_horizon, qualification_reference, deterioration = NULL, consolidated_own_funds = NULL, consolidated_scr = NULL, transition_measures = NULL, transition_plan_active = NULL, context, ... )
capital_requirement |
Capital requirement. Reference type: |
actual_breach |
Actual breach. Reference type: |
breach_risk_within_horizon |
Breach risk within horizon. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
deterioration |
Deterioration. Reference type: |
consolidated_own_funds |
Consolidated own funds. Reference type: |
consolidated_scr |
Consolidated scr. Reference type: |
transition_measures |
Transition measures. Reference type: |
transition_plan_active |
Transition plan active. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-breach-baseline-scr-11") result <- do.call(capital_breach_requirements, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-breach-baseline-scr-11") result <- do.call(capital_breach_requirements, c(case$kwargs, list(context = context))) result$value
Inventory the five common plan contents; do not project or approve them.
capital_recovery_plan_evidence_check( evidence, plan_kind, assessment_reference, scope_reference, context, ... )capital_recovery_plan_evidence_check( evidence, plan_kind, assessment_reference, scope_reference, context, ... )
evidence |
Evidence. Reference type: |
plan_kind |
Plan kind. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-breach-baseline-scr_recovery-empty") result <- do.call(capital_recovery_plan_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("capital-breach-baseline-scr_recovery-empty") result <- do.call(capital_recovery_plan_evidence_check, c(case$kwargs, list(context = context))) result$value
Relative stresses, rate/duration consistency and eligibility are externally qualified. Signed inputs are preserved: there is no hidden down-direction sign flip, floor or stress-curve generation (including blocked 2027 curves). All five asset bands and all 36 Annex I LoBs must be supplied explicitly.
captive_interest_currency( assets, technical_provisions, direction, eligibility_reference, valuation_reference, stress_reference, context, ... )captive_interest_currency( assets, technical_provisions, direction, eligibility_reference, valuation_reference, stress_reference, context, ... )
assets |
Assets. Reference type: |
technical_provisions |
Technical provisions. Reference type: |
direction |
Direction. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
stress_reference |
Stress reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-interest-baseline-zero") result <- do.call(captive_interest_currency, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-interest-baseline-zero") result <- do.call(captive_interest_currency, c(case$kwargs, list(context = context))) result$value
Look up an explicitly qualified lettered band; do not invent boundary rules.
captive_interest_duration(band, qualification_reference, context, ...)captive_interest_duration(band, qualification_reference, context, ...)
band |
Band. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: years.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-interest-baseline-duration-a") result <- do.call(captive_interest_duration, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-interest-baseline-duration-a") result <- do.call(captive_interest_duration, c(case$kwargs, list(context = context))) result$value
Weights are separate profile parameters, not ordinary nonlife correlations. A full set prevents omitted exposures from silently becoming zero.
captive_nonlife_aggregation( segment_charges, eligibility_reference, context, ... )captive_nonlife_aggregation( segment_charges, eligibility_reference, context, ... )
segment_charges |
Segment charges. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-aggregate-zero") result <- do.call(captive_nonlife_aggregation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-aggregate-zero") result <- do.call(captive_nonlife_aggregation, c(case$kwargs, list(context = context))) result$value
Normalising before squaring avoids overflow for representable charges; neither reinsurance adjustments nor geographic diversification are repeated.
captive_nonlife_segment( premium_volume, reserve_volume, eligibility_reference, volume_reference, context, ... )captive_nonlife_segment( premium_volume, reserve_volume, eligibility_reference, volume_reference, context, ... )
premium_volume |
Premium volume. Reference type: |
reserve_volume |
Reserve volume. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
volume_reference |
Volume reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-zero") result <- do.call(captive_nonlife_segment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-zero") result <- do.call(captive_nonlife_segment, c(case$kwargs, list(context = context))) result$value
Absent insurance/reinsurance business must be explicitly qualified by the caller; missing evidence never means that a condition is met.
captive_simplification_conditions( conditions, qualification_reference, context, ... )captive_simplification_conditions( conditions, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-eligible") result <- do.call(captive_simplification_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("captive-baseline-eligible") result <- do.call(captive_simplification_conditions, c(case$kwargs, list(context = context))) result$value
Recoveries conditional on unrelated claims must have been excluded externally. For vessel components apply separately; for other perils use the qualified combined object/group sum. The returned amount is not a BOF loss or SCR.
catastrophe_effective_sum( gross_sum, recoverable, use_gross, peril, qualification_reference, context, ... )catastrophe_effective_sum( gross_sum, recoverable, use_gross, peril, qualification_reference, context, ... )
gross_sum |
Gross sum. Reference type: |
recoverable |
Recoverable. Reference type: |
use_gross |
Use gross. Reference type: |
peril |
Peril. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("concentration-2027-fire-gross") result <- do.call(catastrophe_effective_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("concentration-2027-fire-gross") result <- do.call(catastrophe_effective_sum, c(case$kwargs, list(context = context))) result$value
The named region fixes the common regional scope. Source-blocked weights remain blocked through the ordinary selector. A group amount cannot be repeated into every original matrix zone: downstream group treatment must be qualified separately. Future90b(6) requires120(1a) evidence for wind/soil.
catastrophe_group_weighted_sum( peril, region, zone_ordinals, insured_sum, qualification_reference, exposure_basis_reference = NULL, context, ... )catastrophe_group_weighted_sum( peril, region, zone_ordinals, insured_sum, qualification_reference, exposure_basis_reference = NULL, context, ... )
peril |
Peril. Reference type: |
region |
Region. Reference type: |
zone_ordinals |
Zone ordinals. Reference type: |
insured_sum |
Insured sum. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
exposure_basis_reference |
Exposure basis reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-group-single") result <- do.call(catastrophe_group_weighted_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-group-single") result <- do.call(catastrophe_group_weighted_sum, c(case$kwargs, list(context = context))) result$value
Aggregate externally determined regional catastrophe charges plus other-region charge.
catastrophe_region_aggregation( peril, region_charges, other_charge, context, ... )catastrophe_region_aggregation( peril, region_charges, other_charge, context, ... )
peril |
Peril. Reference type: |
region_charges |
Region charges. Reference type: |
other_charge |
Other charge. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-region-subsidence-zero") result <- do.call(catastrophe_region_aggregation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-region-subsidence-zero") result <- do.call(catastrophe_region_aggregation, c(case$kwargs, list(context = context))) result$value
Future subsidence uses Annex VIIIA Q. Unqualified future geographic links stay explicitly absent instead of inheriting historical labels.
catastrophe_weighted_sum( peril, region, zone_ordinal, insured_sum, context, ... )catastrophe_weighted_sum( peril, region, zone_ordinal, insured_sum, context, ... )
peril |
Peril. Reference type: |
region |
Region. Reference type: |
zone_ordinal |
Zone ordinal. Reference type: |
insured_sum |
Insured sum. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-weight-zero-si") result <- do.call(catastrophe_weighted_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-weight-zero-si") result <- do.call(catastrophe_weighted_sum, c(case$kwargs, list(context = context))) result$value
sqrt(WSI' C WSI) for one Annex XXII–XXVI peril/region; WSI supplied externally.
catastrophe_zone_aggregation(peril, region, weighted_sums, context, ...)catastrophe_zone_aggregation(peril, region, weighted_sums, context, ...)
peril |
Peril. Reference type: |
region |
Region. Reference type: |
weighted_sums |
Weighted sums. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-zone-earthquake-GU-one") result <- do.call(catastrophe_zone_aggregation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-zone-earthquake-GU-one") result <- do.call(catastrophe_zone_aggregation, c(case$kwargs, list(context = context))) result$value
Callers must first apply the region's documented postcode/province rule. This function never guesses a prefix from a full address or repairs source conflicts; the latter produce REVIEW_REQUIRED for the affected code only.
catastrophe_zone_ordinal(region, geographic_code, context, ...)catastrophe_zone_ordinal(region, geographic_code, context, ...)
region |
Region. Reference type: |
geographic_code |
Geographic code. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: zone_ordinal.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-geography-BE-1") result <- do.call(catastrophe_zone_ordinal, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cat-geography-BE-1") result <- do.call(catastrophe_zone_ordinal, c(case$kwargs, list(context = context))) result$value
Model approvals, contract requirements, CQS/PD mapping, consolidated issuer scope, fiscal-year selection and EUR conversion remain external. There is no averaging of retention across securities and no internal credit model.
coinvestment_numeric_screen( revenue_currency_share, financial_years, retentions, qualification_reference, context, ... )coinvestment_numeric_screen( revenue_currency_share, financial_years, retentions, qualification_reference, context, ... )
revenue_currency_share |
Revenue currency share. Reference type: |
financial_years |
Financial years. Reference type: |
retentions |
Retentions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("coinvestment-baseline-employee-route") result <- do.call(coinvestment_numeric_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("coinvestment-baseline-employee-route") result <- do.call(coinvestment_numeric_screen, c(case$kwargs, list(context = context))) result$value
Ei excluding zero-gi counterparties; does not alter Assets or quality weights.
concentration_adjusted_exposure(exposures, grouping_reference, context, ...)concentration_adjusted_exposure(exposures, grouping_reference, context, ...)
exposures |
Exposures. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-adjusted-zero") result <- do.call(concentration_adjusted_exposure, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-adjusted-zero") result <- do.call(concentration_adjusted_exposure, c(case$kwargs, list(context = context))) result$value
Immediate asset-value loss, explicitly NOT the resulting BOF capital charge.
concentration_asset_loss(excess, risk_factor, context, ...)concentration_asset_loss(excess, risk_factor, context, ...)
excess |
Excess. Reference type: |
risk_factor |
Risk factor. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-5") result <- do.call(concentration_asset_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-5") result <- do.call(concentration_asset_loss, c(case$kwargs, list(context = context))) result$value
Exclusions are not inferred from names. Intragroup category itself asserts group membership externally; a failed exclusion condition retains the asset.
concentration_assets(assets, classification_reference, context, ...)concentration_assets(assets, classification_reference, context, ...)
assets |
Assets. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-assets-all-excluded") result <- do.call(concentration_assets, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-assets-all-excluded") result <- do.call(concentration_assets, c(case$kwargs, list(context = context))) result$value
Here the quality itself is interpolated, unlike Article180 stress-factor interpolation. MCR/SFCR routing in Article182(6-8) concerns unrated insurers.
concentration_credit_quality( category, qualification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )concentration_credit_quality( category, qualification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
solvency_ratio |
Solvency ratio. Reference type: |
mcr_compliant |
Mcr compliant. Reference type: |
sfcr_published |
Sfcr published. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: credit_quality_step.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-quality-residual") result <- do.call(concentration_credit_quality, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-quality-residual") result <- do.call(concentration_credit_quality, c(case$kwargs, list(context = context))) result$value
Threshold excess on already scoped Assets and zero-factor-adjusted exposure.
concentration_excess(exposure, assets, threshold, context, ...)concentration_excess(exposure, assets, threshold, context, ...)
exposure |
Exposure. Reference type: |
assets |
Assets. Reference type: |
threshold |
Threshold. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-3") result <- do.call(concentration_excess, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-3") result <- do.call(concentration_excess, c(case$kwargs, list(context = context))) result$value
Sum externally grouped counterparty/single-name exposures, not all Assets.
concentration_exposure_sum(exposures, grouping_reference, context, ...)concentration_exposure_sum(exposures, grouping_reference, context, ...)
exposures |
Exposures. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-13") result <- do.call(concentration_exposure_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-13") result <- do.call(concentration_exposure_sum, c(case$kwargs, list(context = context))) result$value
gi selection, not grouping or CT selection; regional CQS2 reference affects gi only.
concentration_factor( category, qualification_reference, credit_quality_step = NULL, context, ... )concentration_factor( category, qualification_reference, credit_quality_step = NULL, context, ... )
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration_factor-property-none") result <- do.call(concentration_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration_factor-property-none") result <- do.call(concentration_factor, c(case$kwargs, list(context = context))) result$value
Euclidean norm of already valued single-name BOF charges; not asset losses.
concentration_risk(single_name_charges, context, ...)concentration_risk(single_name_charges, context, ...)
single_name_charges |
Single name charges. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-7") result <- do.call(concentration_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-7") result <- do.call(concentration_risk, c(case$kwargs, list(context = context))) result$value
Exact arithmetic on validated binary inputs protects integer boundaries and avoids overflow in weighted products. Input qualities may be fractional.
concentration_single_name_quality(exposures, grouping_reference, context, ...)concentration_single_name_quality(exposures, grouping_reference, context, ...)
exposures |
Exposures. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: credit_quality_step.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-9") result <- do.call(concentration_single_name_quality, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration-core-9") result <- do.call(concentration_single_name_quality, c(case$kwargs, list(context = context))) result$value
CT on externally established single-name quality or qualified special exposure.
concentration_threshold( category, qualification_reference, credit_quality_step = NULL, context, ... )concentration_threshold( category, qualification_reference, credit_quality_step = NULL, context, ... )
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration_threshold-property-none") result <- do.call(concentration_threshold, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-concentration_threshold-property-none") result <- do.call(concentration_threshold, c(case$kwargs, list(context = context))) result$value
Select a dated rule profile and optional numeric analyst overrides. No current date, currency, rule profile or external approval is inferred.
Context( as_of, known_at, currency, profile_id, mode = "REFERENCE_ONLY", overrides = list() )Context( as_of, known_at, currency, profile_id, mode = "REFERENCE_ONLY", overrides = list() )
as_of, known_at
|
ISO dates for valuation and information availability. |
currency |
Three-letter uppercase currency identifier. |
profile_id |
Explicit profile identifier; inspect |
mode |
Must be |
overrides |
List of |
An immutable-by-convention S3 Context list. Functions validate it
before calculation; modifying a copy does not affect other contexts.
context <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") intangible_risk(100, context = context)$valuecontext <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") intangible_risk(100, context = context)$value
'After' concerns coverage, not payment dates. Qualification of unilateral rights, repricing and legal enforceability is supplied externally.
contract_boundary_exclusion( coverage_after_qualifying_right, premium_payment_enforceable, assessment_reference, context, ... )contract_boundary_exclusion( coverage_after_qualifying_right, premium_payment_enforceable, assessment_reference, context, ... )
coverage_after_qualifying_right |
Coverage after qualifying right. Reference type: |
premium_payment_enforceable |
Premium payment enforceable. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-boundary-exclusion-true-true") result <- do.call(contract_boundary_exclusion, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-boundary-exclusion-true-true") result <- do.call(contract_boundary_exclusion, c(case$kwargs, list(context = context))) result$value
Has the first recognition time arrived? This does not reverse later derecognition.
contract_recognition_due( contract_party_date, coverage_start_date, evidence_reference, context, ... )contract_recognition_due( contract_party_date, coverage_start_date, evidence_reference, context, ... )
contract_party_date |
Contract party date. Reference type: |
coverage_start_date |
Coverage start date. Reference type: |
evidence_reference |
Evidence reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-recognition-party-first") result <- do.call(contract_recognition_due, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-recognition-party-first") result <- do.call(contract_recognition_due, c(case$kwargs, list(context = context))) result$value
Restrictions must be externally qualified effective restrictions, including the Article18 economic-effect assessment. Relevant third parties exclude supervisors/governance bodies. Mere reputation or competition is not a veto. Full risk reflection and the profile-specific life repricing clause remain separate for an amendment right, even when this screen returns1.
contract_unilateral_right( right_type, facts, assessment_reference, context, ... )contract_unilateral_right( right_type, facts, assessment_reference, context, ... )
right_type |
Right type. Reference type: |
facts |
Facts. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unilateral-baseline-amend-31") result <- do.call(contract_unilateral_right, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unilateral-baseline-amend-31") result <- do.call(contract_unilateral_right, c(case$kwargs, list(context = context))) result$value
Values must refer to the correct counterparty, currency and unit. Their recency and regulatory eligibility are not established by this division. Signed funds are preserved; neither MCR compliance nor a rating is inferred.
counterparty_solvency_ratio( eligible_own_funds, scr, qualification_reference, context, ... )counterparty_solvency_ratio( eligible_own_funds, scr, qualification_reference, context, ... )
eligible_own_funds |
Eligible own funds. Reference type: |
scr |
Scr. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("counterparty-ratio-baseline-zero") result <- do.call(counterparty_solvency_ratio, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("counterparty-ratio-baseline-zero") result <- do.call(counterparty_solvency_ratio, c(case$kwargs, list(context = context))) result$value
Declared regulatory coverage and limitations
coverage()coverage()
Named list inherited from the Golden Source. This describes regulatory scope, not certification or approval of a company's inputs or capital result.
names(coverage())names(coverage())
Each recovery is externally valued against this exposure's default claim, not against its full insured sum. Ambiguous cutoff ties with differing gross amounts require explicit selection, still constrained to largest net losses.
credit_cat_default_loss( exposures, qualification_reference, selected_exposure_ids = NULL, context, ... )credit_cat_default_loss( exposures, qualification_reference, selected_exposure_ids = NULL, context, ... )
exposures |
Exposures. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
selected_exposure_ids |
Selected exposure ids. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("credit-cat-empty") result <- do.call(credit_cat_default_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("credit-cat-empty") result <- do.call(credit_cat_default_loss, c(case$kwargs, list(context = context))) result$value
Sudden gross claim from next12month earned LOB9/21 premiums, not capital.
credit_cat_recession_loss(gross_premium, qualification_reference, context, ...)credit_cat_recession_loss(gross_premium, qualification_reference, context, ...)
gross_premium |
Gross premium. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-credit-recession") result <- do.call(credit_cat_recession_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-credit-recession") result <- do.call(credit_cat_recession_loss, c(case$kwargs, list(context = context))) result$value
Widening/tightening BOF valuations and Article179(3) hedge exclusions must be qualified externally. This is neither derivative pricing nor hedge approval. Article180(9) can instead use an explicitly qualified public debt underlying; no partial guarantee, other underlying or missing scenarios implies zero.
credit_derivative_scenario_charge( gross_losses, net_losses, valuation_reference, tie_break = NULL, public_underlying = NULL, hedge_exemption = NULL, context, ... )credit_derivative_scenario_charge( gross_losses, net_losses, valuation_reference, tie_break = NULL, public_underlying = NULL, hedge_exemption = NULL, context, ... )
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
public_underlying |
Public underlying. Reference type: |
hedge_exemption |
Hedge exemption. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("credit-derivative-select-baseline-equal") result <- do.call(credit_derivative_scenario_charge, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("credit-derivative-select-baseline-equal") result <- do.call(credit_derivative_scenario_charge, c(case$kwargs, list(context = context))) result$value
Absolute widening versus relative tightening; hedge exclusions require separate assessment.
credit_spread_stress( spread, direction, category, qualification_reference, credit_quality_step = NULL, context, ... )credit_spread_stress( spread, direction, category, qualification_reference, credit_quality_step = NULL, context, ... )
spread |
Spread. Reference type: |
direction |
Direction. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-credit-spread-tighten-0") result <- do.call(credit_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-credit-spread-tighten-0") result <- do.call(credit_spread_stress, c(case$kwargs, list(context = context))) result$value
Inputs are externally valued BOF deltas for each holding's Art68-deducted and non-deducted parts, not market values or deduction amounts. Apply the positive-part rule per holding before summation; do not net excluded losses.
currency_participation_bof_change( participations, qualification_reference, context, ... )currency_participation_bof_change( participations, qualification_reference, context, ... )
participations |
Participations. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-participation-baseline-empty") result <- do.call(currency_participation_bof_change, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-participation-baseline-empty") result <- do.call(currency_participation_bof_change, c(case$kwargs, list(context = context))) result$value
All 15 unordered pairs are explicit original values, not cross-rate-derived estimates. External evidence must establish date-specific applicability.
currency_peg_factor(foreign_currency, qualification_reference, context, ...)currency_peg_factor(foreign_currency, qualification_reference, context, ...)
foreign_currency |
Foreign currency. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-peg-factor-EUR-DKK") result <- do.call(currency_peg_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-peg-factor-EUR-DKK") result <- do.call(currency_peg_factor, c(case$kwargs, list(context = context))) result$value
Apply a qualified original peg factor to local currency per one foreign unit.
currency_peg_rate_stress( exchange_rate, foreign_currency, direction, qualification_reference, valuation_reference, context, ... )currency_peg_rate_stress( exchange_rate, foreign_currency, direction, qualification_reference, valuation_reference, context, ... )
exchange_rate |
Exchange rate. Reference type: |
foreign_currency |
Foreign currency. Reference type: |
direction |
Direction. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: exchange_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-peg-rate-EUR-DKK-up") result <- do.call(currency_peg_rate_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-peg-rate-EUR-DKK-up") result <- do.call(currency_peg_rate_stress, c(case$kwargs, list(context = context))) result$value
Stress local currency per one foreign unit, not its reciprocal or a BOF amount.
currency_rate_stress( exchange_rate, direction, valuation_reference, context, ... )currency_rate_stress( exchange_rate, direction, valuation_reference, context, ... )
exchange_rate |
Exchange rate. Reference type: |
direction |
Direction. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: exchange_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-rate-1-up") result <- do.call(currency_rate_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-rate-1-up") result <- do.call(currency_rate_stress, c(case$kwargs, list(context = context))) result$value
Sum already net-scenario-selected gross charges, all valued in Context.currency.
currency_risk(currency_charges, classification_reference, context, ...)currency_risk(currency_charges, classification_reference, context, ...)
currency_charges |
Currency charges. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-sum-zero") result <- do.call(currency_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-sum-zero") result <- do.call(currency_risk, c(case$kwargs, list(context = context))) result$value
Each mapping contains exactly up/down in the context's local currency. This does not value exposures or approve their currency classification.
currency_scenario_charge( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )currency_scenario_charge( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-select-baseline-equal") result <- do.call(currency_scenario_charge, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("currency-select-baseline-equal") result <- do.call(currency_scenario_charge, c(case$kwargs, list(context = context))) result$value
The input is the unhalved applicable AMCR, not the branch MCR. A German deposit waiver does not waive the deposit at the chosen supervisory state. Asset location, admissibility and any higher actual SCR/MCR stay separate.
de_branch_minimum_amount( unadjusted_absolute_floor, requirement, reinsurance_branch, domestic_deposit_relief, relief_reference = NULL, source_version, applicability_reference, context, ... )de_branch_minimum_amount( unadjusted_absolute_floor, requirement, reinsurance_branch, domestic_deposit_relief, relief_reference = NULL, source_version, applicability_reference, context, ... )
unadjusted_absolute_floor |
Unadjusted absolute floor. Reference type: |
requirement |
Requirement. Reference type: |
reinsurance_branch |
Reinsurance branch. Reference type: |
domestic_deposit_relief |
Domestic deposit relief. Reference type: |
relief_reference |
Relief reference. Reference type: |
source_version |
Source version. Reference type: |
applicability_reference |
Applicability reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("de-close-baseline-reinsurer") result <- do.call(de_branch_minimum_amount, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("de-close-baseline-reinsurer") result <- do.call(de_branch_minimum_amount, c(case$kwargs, list(context = context))) result$value
Gross direct-insurance figures precede reinsurance deductions. Eligible current pool value must already reflect the separate Article126 rules. Extra supervisory requirements under127(2) are not inferred here.
de_cover_assets_minimum( components, source_version, applicability_reference, current_cover_assets = NULL, foreign_security_exception = 0, foreign_security_reference = NULL, context, ... )de_cover_assets_minimum( components, source_version, applicability_reference, current_cover_assets = NULL, foreign_security_exception = 0, foreign_security_reference = NULL, context, ... )
components |
Components. Reference type: |
source_version |
Source version. Reference type: |
applicability_reference |
Applicability reference. Reference type: |
current_cover_assets |
Current cover assets. Reference type: |
foreign_security_exception |
Foreign security exception. Reference type: |
foreign_security_reference |
Foreign security reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("cover-close-baseline-minimum") result <- do.call(de_cover_assets_minimum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("cover-close-baseline-minimum") result <- do.call(de_cover_assets_minimum, c(case$kwargs, list(context = context))) result$value
A doubled market-to-book threshold permits review of an increase; it does not prescribe the increase. Encumbered property always needs an external supervisory value. Neither value may feed a Solvency-II market valuation merely because this separate cover-pool rule accepts it.
de_cover_property_value( book_value, market_value, encumbered, supervisory_value = NULL, supervisory_reference = NULL, expert_valuation_reference = NULL, source_version, applicability_reference, context, ... )de_cover_property_value( book_value, market_value, encumbered, supervisory_value = NULL, supervisory_reference = NULL, expert_valuation_reference = NULL, source_version, applicability_reference, context, ... )
book_value |
Book value. Reference type: |
market_value |
Market value. Reference type: |
encumbered |
Encumbered. Reference type: |
supervisory_value |
Supervisory value. Reference type: |
supervisory_reference |
Supervisory reference. Reference type: |
expert_valuation_reference |
Expert valuation reference. Reference type: |
source_version |
Source version. Reference type: |
applicability_reference |
Applicability reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("cover-close-baseline-property-low") result <- do.call(de_cover_property_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("cover-close-baseline-property-low") result <- do.call(de_cover_property_value, c(case$kwargs, list(context = context))) result$value
Inflows and cash are disjoint sources; no netting or double counting. Projections, liquidation assumptions and scenarios are insurer inputs. The circular specifies no universal minimum ratio or fixed time bands.
de_liquidity_coverage( gross_inflows, gross_outflows, realisable_cash, total_investments, source_version, applicability_reference, horizon_reference, context, ... )de_liquidity_coverage( gross_inflows, gross_outflows, realisable_cash, total_investments, source_version, applicability_reference, horizon_reference, context, ... )
gross_inflows |
Gross inflows. Reference type: |
gross_outflows |
Gross outflows. Reference type: |
realisable_cash |
Realisable cash. Reference type: |
total_investments |
Total investments. Reference type: |
source_version |
Source version. Reference type: |
applicability_reference |
Applicability reference. Reference type: |
horizon_reference |
Horizon reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("de-close-baseline-liquidity-zero-assets") result <- do.call(de_liquidity_coverage, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("de-close-baseline-liquidity-zero-assets") result <- do.call(de_liquidity_coverage, c(case$kwargs, list(context = context))) result$value
LGD of an externally qualified CCP default-fund contribution, not CCP eligibility.
default_ccp_fund_lgd_2027( contribution, prefunded, qualification_reference, context, ... )default_ccp_fund_lgd_2027( contribution, prefunded, qualification_reference, context, ... )
contribution |
Contribution. Reference type: |
prefunded |
Prefunded. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-ccp-fund-true") result <- do.call(default_ccp_fund_lgd_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-ccp-fund-true") result <- do.call(default_ccp_fund_lgd_2027, c(case$kwargs, list(context = context))) result$value
A failed declaration screen never implies zero capital or a fallback LGD branch. The client joint-default exception relaxes only the named joint failure case. Historical legal opinions must not substitute for the changed 2027 legal-review requirement. Direct own-account clearing is future-only.
default_clearing_conditions( route, conditions, qualification_reference, context, ... )default_clearing_conditions( route, conditions, qualification_reference, context, ... )
route |
Route. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("clearing-conditions-future-member_own_account-all") result <- do.call(default_clearing_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("clearing-conditions-future-member_own_account-all") result <- do.call(default_clearing_conditions, c(case$kwargs, list(context = context))) result$value
Select a coefficient, not an insolvency-law interpretation or collateral valuation.
default_collateral_factor( factor_type, collateral_ignored_in_estate_share, legal_reference, context, ... )default_collateral_factor( factor_type, collateral_ignored_in_estate_share, legal_reference, context, ... )
factor_type |
Factor type. Reference type: |
collateral_ignored_in_estate_share |
Collateral ignored in estate share. Reference type: |
legal_reference |
Legal reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-factor-F-true") result <- do.call(default_collateral_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-factor-F-true") result <- do.call(default_collateral_factor, c(case$kwargs, list(context = context))) result$value
External valuations must assess FX against exposure/loan currency. Do not silently reverse this source's subtraction or apply the Article196 floor.
default_collateral_market_adjustment( scr_without, scr_with, valuation_reference, context, ... )default_collateral_market_adjustment( scr_without, scr_with, valuation_reference, context, ... )
scr_without |
Scr without. Reference type: |
scr_with |
Scr with. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-collateral-adjustment-negative") result <- do.call(default_collateral_market_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-collateral-adjustment-negative") result <- do.call(default_collateral_market_adjustment, c(case$kwargs, list(context = context))) result$value
Classification and guideline-compliant recovery valuation are external. This does not extend the source-defined scope to arbitrary unsecured loans.
default_defaulted_loan_lgd_2027( loan, recoverables, qualification_reference, context, ... )default_defaulted_loan_lgd_2027( loan, recoverables, qualification_reference, context, ... )
loan |
Loan. Reference type: |
recoverables |
Recoverables. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-loan-0-0") result <- do.call(default_defaulted_loan_lgd_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-loan-0-0") result <- do.call(default_defaulted_loan_lgd_2027, c(case$kwargs, list(context = context))) result$value
For a qualified netting set, RM and collateral must be assessed at set level; summing stand-alone risk mitigation is not justified by this function.
default_derivative_lgd( derivative_value, risk_mitigation, collateral_value, variant, collateral_basis, collateral_ignored_in_estate_share, qualification_reference, context, ... )default_derivative_lgd( derivative_value, risk_mitigation, collateral_value, variant, collateral_basis, collateral_ignored_in_estate_share, qualification_reference, context, ... )
derivative_value |
Derivative value. Reference type: |
risk_mitigation |
Risk mitigation. Reference type: |
collateral_value |
Collateral value. Reference type: |
variant |
Variant. Reference type: |
collateral_basis |
Collateral basis. Reference type: |
collateral_ignored_in_estate_share |
Collateral ignored in estate share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-derivative-3-true") result <- do.call(default_derivative_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-derivative-3-true") result <- do.call(default_derivative_lgd, c(case$kwargs, list(context = context))) result$value
All values must already be in context currency and Article75-compatible. Netting eligibility and completeness of the set remain externally assessed. Fraction over decimal float representations prevents intermediate overflow and preserves signed cancellation. Only the final value becomes float.
default_derivative_netting_value( positions, netting_qualified, liabilities_settled_before_clearing, qualification_reference, context, ... )default_derivative_netting_value( positions, netting_qualified, liabilities_settled_before_clearing, qualification_reference, context, ... )
positions |
Positions. Reference type: |
netting_qualified |
Netting qualified. Reference type: |
liabilities_settled_before_clearing |
Liabilities settled before clearing. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("derivative-netting-baseline-single") result <- do.call(default_derivative_netting_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("derivative-netting-baseline-single") result <- do.call(default_derivative_netting_value, c(case$kwargs, list(context = context))) result$value
The category must already describe the precise qualified contractual risk, including any spread/mortgage/CCP/guarantee conditions. An excluded risk may attract capital elsewhere; zero is a routing code, not a capital value. Only cedant deposits and called-unpaid commitments use the declared count and optional legal election. Article190 grouping and Article189(5) provider substitution, and the all-relevant-exposures scope of the election, remain external prerequisites; no count is inferred from arbitrary asset IDs.
default_exposure_type( category, qualification_reference, single_name_count = NULL, elect_type1 = NULL, context, ... )default_exposure_type( category, qualification_reference, single_name_count = NULL, elect_type1 = NULL, context, ... )
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
single_name_count |
Single name count. Reference type: |
elect_type1 |
Elect type1. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: exposure_type.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-type-future-securities_financing") result <- do.call(default_exposure_type, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-type-future-securities_financing") result <- do.call(default_exposure_type, c(case$kwargs, list(context = context))) result$value
The future Article192(4) adds a floor on the non-guaranteed loan value. Historical results retain the published zero floor, not the new 5% floor.
default_mortgage_lgd( loan_value, risk_adjusted_mortgage, eligible_guarantee, qualification_reference, context, guarantee_conditions = NULL, ... )default_mortgage_lgd( loan_value, risk_adjusted_mortgage, eligible_guarantee, qualification_reference, context, guarantee_conditions = NULL, ... )
loan_value |
Loan value. Reference type: |
risk_adjusted_mortgage |
Risk adjusted mortgage. Reference type: |
eligible_guarantee |
Eligible guarantee. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
guarantee_conditions |
Guarantee conditions. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lgd-mortgage-10") result <- do.call(default_mortgage_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lgd-mortgage-10") result <- do.call(default_mortgage_lgd, c(case$kwargs, list(context = context))) result$value
Two externally classified nonnegative valuation conventions; no hidden offsetting.
default_other_lgd( recognised_value, exposure_type, classification_reference, nominal_value = NULL, context, ... )default_other_lgd( recognised_value, exposure_type, classification_reference, nominal_value = NULL, context, ... )
recognised_value |
Recognised value. Reference type: |
exposure_type |
Exposure type. Reference type: |
classification_reference |
Classification reference. Reference type: |
nominal_value |
Nominal value. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-other-receivable-0") result <- do.call(default_other_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-other-receivable-0") result <- do.call(default_other_lgd, c(case$kwargs, list(context = context))) result$value
B uses already net BEC/BEU; C uses the whole pool's BECE. The recovery threshold is inclusive, unlike Article192(2). DeltaRM is not halved.
default_pool_lgd( best_estimate, risk_mitigation_contribution, risk_adjusted_collateral, variant, encumbered_asset_fraction, collateral_ignored_in_estate_share, qualification_reference, undertaking_share = NULL, counterparty_share = NULL, context, ... )default_pool_lgd( best_estimate, risk_mitigation_contribution, risk_adjusted_collateral, variant, encumbered_asset_fraction, collateral_ignored_in_estate_share, qualification_reference, undertaking_share = NULL, counterparty_share = NULL, context, ... )
best_estimate |
Best estimate. Reference type: |
risk_mitigation_contribution |
Risk mitigation contribution. Reference type: |
risk_adjusted_collateral |
Risk adjusted collateral. Reference type: |
variant |
Variant. Reference type: |
encumbered_asset_fraction |
Encumbered asset fraction. Reference type: |
collateral_ignored_in_estate_share |
Collateral ignored in estate share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
undertaking_share |
Undertaking share. Reference type: |
counterparty_share |
Counterparty share. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-C-boundary") result <- do.call(default_pool_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-C-boundary") result <- do.call(default_pool_lgd, c(case$kwargs, list(context = context))) result$value
Select the pool SR convention, not the counterparty PD table.
default_pool_member_ratio( category, classification_reference, credit_quality_step = NULL, current_solvency_ratio = NULL, equivalent = NULL, context, ... )default_pool_member_ratio( category, classification_reference, credit_quality_step = NULL, current_solvency_ratio = NULL, equivalent = NULL, context, ... )
category |
Category. Reference type: |
classification_reference |
Classification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
current_solvency_ratio |
Current solvency ratio. Reference type: |
equivalent |
Equivalent. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-member-rating-0") result <- do.call(default_pool_member_ratio, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-member-rating-0") result <- do.call(default_pool_member_ratio, c(case$kwargs, list(context = context))) result$value
Membership must include any central intermediary. Zero inner SR requires a separately assessed limiting case; it is not silently replaced by zero.
default_pool_solvency_ratio( in_scope_members, out_of_scope_members, membership_reference, context, ... )default_pool_solvency_ratio( in_scope_members, out_of_scope_members, membership_reference, context, ... )
in_scope_members |
In scope members. Reference type: |
out_of_scope_members |
Out of scope members. Reference type: |
membership_reference |
Membership reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-ratio-outside") result <- do.call(default_pool_solvency_ratio, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-ratio-outside") result <- do.call(default_pool_solvency_ratio, c(case$kwargs, list(context = context))) result$value
Low SR legitimately gives a risk-share factor above1 in this source; there is no invented reduction-only clamp.
default_pool_type_a_lgd( base_lgd, joint_liability, qualification_reference, pool_solvency_ratio = NULL, context, ... )default_pool_type_a_lgd( base_lgd, joint_liability, qualification_reference, pool_solvency_ratio = NULL, context, ... )
base_lgd |
Base lgd. Reference type: |
joint_liability |
Joint liability. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
pool_solvency_ratio |
Pool solvency ratio. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-A-proportional") result <- do.call(default_pool_type_a_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pool-A-proportional") result <- do.call(default_pool_type_a_lgd, c(case$kwargs, list(context = context))) result$value
Clearing exceptions in (12)/(13) take precedence in the external category decision. A 'rated' call cannot establish that those exceptions are absent.
default_probability( category, classification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )default_probability( category, classification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )
category |
Category. Reference type: |
classification_reference |
Classification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
solvency_ratio |
Solvency ratio. Reference type: |
mcr_compliant |
Mcr compliant. Reference type: |
sfcr_published |
Sfcr published. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pd-other") result <- do.call(default_probability, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pd-other") result <- do.call(default_probability, c(case$kwargs, list(context = context))) result$value
Full protection and Articles209–215 compliance are externally assessed. Clearing precedence is explicit. This does not regroup names under189(5), change LGD, or infer sovereign zero-PD eligibility from a provider identity.
default_protected_probability( original_pd, substitute_provider, protection, clearing_category, qualification_reference, context, central_government_guarantee = NULL, ... )default_protected_probability( original_pd, substitute_provider, protection, clearing_category, qualification_reference, context, central_government_guarantee = NULL, ... )
original_pd |
Original pd. Reference type: |
substitute_provider |
Substitute provider. Reference type: |
protection |
Protection. Reference type: |
clearing_category |
Clearing category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
central_government_guarantee |
Central government guarantee. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("protected-pd-baseline-original") result <- do.call(default_protected_probability, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("protected-pd-baseline-original") result <- do.call(default_protected_probability, c(case$kwargs, list(context = context))) result$value
This SCR LGD is distinct from the technical-provisions loss in Article42. Netting, collateral eligibility and contract qualifications remain external.
default_reinsurance_lgd( recoverables, risk_mitigation, risk_adjusted_collateral, counterparty_is_insurer, collateral_ignored_in_estate_share, qualification_reference, encumbered_asset_fraction = NULL, context, method = "standard", proportionality_reference = NULL, ... )default_reinsurance_lgd( recoverables, risk_mitigation, risk_adjusted_collateral, counterparty_is_insurer, collateral_ignored_in_estate_share, qualification_reference, encumbered_asset_fraction = NULL, context, method = "standard", proportionality_reference = NULL, ... )
recoverables |
Recoverables. Reference type: |
risk_mitigation |
Risk mitigation. Reference type: |
risk_adjusted_collateral |
Risk adjusted collateral. Reference type: |
counterparty_is_insurer |
Counterparty is insurer. Reference type: |
collateral_ignored_in_estate_share |
Collateral ignored in estate share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
encumbered_asset_fraction |
Encumbered asset fraction. Reference type: |
context |
Explicit |
method |
Method. Reference type: |
proportionality_reference |
Proportionality reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lgd-ri-full-collateral") result <- do.call(default_reinsurance_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lgd-ri-full-collateral") result <- do.call(default_reinsurance_lgd, c(case$kwargs, list(context = context))) result$value
Article197(3) says neither condition is met. Mixed failure is therefore not silently treated as zero. A negative result remains visible; downstream LGD APIs explicitly reject collateral outside their nonnegative contract. Article112 is an explicit alternative on market value, not an additional haircut after a market adjustment. Article88 qualification stays external. Optional Article214(2) assessment checks the deposit institution's CQS; its legal applicability and all other Article214 conditions stay external. Omission preserves the qualified-input API, not a numeric eligibility check.
default_risk_adjusted_collateral( market_value, market_adjustment, collateral_type, conditions, qualification_reference, context, method = "standard", proportionality_reference = NULL, custodian_assessment = NULL, ... )default_risk_adjusted_collateral( market_value, market_adjustment, collateral_type, conditions, qualification_reference, context, method = "standard", proportionality_reference = NULL, custodian_assessment = NULL, ... )
market_value |
Market value. Reference type: |
market_adjustment |
Market adjustment. Reference type: |
collateral_type |
Collateral type. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
method |
Method. Reference type: |
proportionality_reference |
Proportionality reference. Reference type: |
custodian_assessment |
Custodian assessment. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("risk-adjusted-collateral-baseline-title") result <- do.call(default_risk_adjusted_collateral, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("risk-adjusted-collateral-baseline-title") result <- do.call(default_risk_adjusted_collateral, c(case$kwargs, list(context = context))) result$value
Monitoring, prior claims and the independent valuation's market-value cap must already be reflected in property_value; no appraisal is invented here.
default_risk_adjusted_mortgage( property_value, market_adjustment, valuation_reference, context, ... )default_risk_adjusted_mortgage( property_value, market_adjustment, valuation_reference, context, ... )
property_value |
Property value. Reference type: |
market_adjustment |
Market adjustment. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("risk-adjusted-mortgage-baseline-zero") result <- do.call(default_risk_adjusted_mortgage, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("risk-adjusted-mortgage-baseline-zero") result <- do.call(default_risk_adjusted_mortgage, c(case$kwargs, list(context = context))) result$value
Difference for the same relevant risk module; never substitute overall SCR.
default_risk_mitigation( scr_without, scr_with, valuation_reference, context, ... )default_risk_mitigation( scr_without, scr_with, valuation_reference, context, ... )
scr_without |
Scr without. Reference type: |
scr_with |
Scr with. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-rm-floor") result <- do.call(default_risk_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-rm-floor") result <- do.call(default_risk_mitigation, c(case$kwargs, list(context = context))) result$value
Netted inputs must already represent the same legally qualified set's economic effect; collateral is assessed at set level, not blindly summed.
default_securities_financing_lgd_2027( exposure, risk_adjusted_collateral, netting_applied, qualification_reference, context, ... )default_securities_financing_lgd_2027( exposure, risk_adjusted_collateral, netting_applied, qualification_reference, context, ... )
exposure |
Exposure. Reference type: |
risk_adjusted_collateral |
Risk adjusted collateral. Reference type: |
netting_applied |
Netting applied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-financing-zero") result <- do.call(default_securities_financing_lgd_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-financing-zero") result <- do.call(default_securities_financing_lgd_2027, c(case$kwargs, list(context = context))) result$value
None for group/pool means externally established absence, NOT unknown. Pool separation suppresses the pool edge only, not the corporate-group rule. Optional189(5) substitutions are an explicit election, restricted to this count. Original/effective legal memberships and completeness of the relevant portfolio are external qualifications, never inferred from IDs.
default_single_name_count( exposures, pool_treatment, grouping_reference, context, provider_substitutions = NULL, ... )default_single_name_count( exposures, pool_treatment, grouping_reference, context, provider_substitutions = NULL, ... )
exposures |
Exposures. Reference type: |
pool_treatment |
Pool treatment. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
provider_substitutions |
Provider substitutions. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: single_names.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("default-grouping-baseline-same-group") result <- do.call(default_single_name_count, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("default-grouping-baseline-same-group") result <- do.call(default_single_name_count, c(case$kwargs, list(context = context))) result$value
Sum already assessed LGDs; qualified netting sets must not be counted twice.
default_single_name_lgd(exposure_lgds, grouping_reference, context, ...)default_single_name_lgd(exposure_lgds, grouping_reference, context, ...)
exposure_lgds |
Exposure lgds. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-single-name-zero") result <- do.call(default_single_name_lgd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-lgd-single-name-zero") result <- do.call(default_single_name_lgd, c(case$kwargs, list(context = context))) result$value
LGD-weighted PD for one externally grouped single name, not legal grouping.
default_single_name_pd(exposures, grouping_reference, context, ...)default_single_name_pd(exposures, grouping_reference, context, ...)
exposures |
Exposures. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pd-weighted-zero") result <- do.call(default_single_name_pd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pd-weighted-zero") result <- do.call(default_single_name_pd, c(case$kwargs, list(context = context))) result$value
Type-1 variance and charge; PD/LGD supplied per already grouped single name.
default_type1( counterparties, context, method = "standard", proportionality_reference = NULL, ... )default_type1( counterparties, context, method = "standard", proportionality_reference = NULL, ... )
counterparties |
Counterparties. Reference type: |
context |
Explicit |
method |
Method. Reference type: |
proportionality_reference |
Proportionality reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-type1-single-0") result <- do.call(default_type1, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-type1-single-0") result <- do.call(default_type1, c(case$kwargs, list(context = context))) result$value
Value-decrease amount; BOF must still be revalued to determine the capital charge.
default_type2_shock(overdue_intermediary_lgd, other_lgd, context, ...)default_type2_shock(overdue_intermediary_lgd, other_lgd, context, ...)
overdue_intermediary_lgd |
Overdue intermediary lgd. Reference type: |
other_lgd |
Other lgd. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("type2-shock") result <- do.call(default_type2_shock, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("type2-shock") result <- do.call(default_type2_shock, c(case$kwargs, list(context = context))) result$value
Inputs are qualified externally and the residual pool excludes both special pools. The result is the exposure-value shock, not a completed BOF revaluation.
default_type2_shock_2027( overdue_intermediary_lgd, defaulted_forborne_lgd, other_lgd, qualification_reference, context, ... )default_type2_shock_2027( overdue_intermediary_lgd, defaulted_forborne_lgd, other_lgd, qualification_reference, context, ... )
overdue_intermediary_lgd |
Overdue intermediary lgd. Reference type: |
defaulted_forborne_lgd |
Defaulted forborne lgd. Reference type: |
other_lgd |
Other lgd. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-type2-4") result <- do.call(default_type2_shock_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("default-2027-type2-4") result <- do.call(default_type2_shock_2027, c(case$kwargs, list(context = context))) result$value
Build explicit discount factors from externally supplied spot rates
discount_curve_from_spot_rates( points, curve_id, curve_kind, source_reference, time_basis_reference, context )discount_curve_from_spot_rates( points, curve_id, curve_kind, source_reference, time_basis_reference, context )
points |
Named list keyed by payment date, each with
|
curve_id, curve_kind, source_reference
|
Curve identity; see |
time_basis_reference |
Nonempty external year-fraction convention reference. |
context |
Explicit |
No interpolation, extrapolation or calendar convention is inferred.
A DiscountCurve() with raw inputs and convention fingerprinted in provenance.
ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") curve <- discount_curve_from_spot_rates( list("2026-01-17" = list(annual_effective_rate = 0.03, time_years = 1)), "example", "custom", "synthetic rates", "explicit one year", ctx) discount_curve_factor(curve, "2026-01-17")ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") curve <- discount_curve_from_spot_rates( list("2026-01-17" = list(annual_effective_rate = 0.03, time_years = 1)), "example", "custom", "synthetic rates", "explicit one year", ctx) discount_curve_factor(curve, "2026-01-17")
Explicit local discount curve
DiscountCurve(curve_id, as_of, currency, curve_kind, source_reference, points) discount_curve_factor(curve, payment_date) discount_curve_to_dict(curve) discount_curve_from_dict(payload)DiscountCurve(curve_id, as_of, currency, curve_kind, source_reference, points) discount_curve_factor(curve, payment_date) discount_curve_to_dict(curve) discount_curve_from_dict(payload)
curve_id |
Nonempty identifier supplied by the user. |
as_of |
Canonical valuation date, |
currency |
Uppercase three-letter currency. |
curve_kind |
One of |
source_reference |
User-owned provenance, not an instruction to download. |
points |
Ordered list of two-element lists containing payment date and discount factor. Factors must be positive; values above one are permitted. |
curve |
|
payment_date |
Exact canonical payment date. |
payload |
Exact version-1 schema with metadata and |
Points are sorted by date and duplicate dates rejected. No interpolation, day-count convention, currency conversion or approval is inferred. A copy can be edited, but adapters revalidate it before use.
A DiscountCurve list. Use discount_curve_factor() for exact lookup
and discount_curve_to_dict() for the version-1 JSON-compatible schema.
curve <- DiscountCurve("example", "2025-01-17", "EUR", "custom", "synthetic example", list(list("2026-01-17", 0.97))) discount_curve_factor(curve, "2026-01-17")curve <- DiscountCurve("example", "2025-01-17", "EUR", "custom", "synthetic example", list(list("2026-01-17", 0.97))) discount_curve_factor(curve, "2026-01-17")
Read bundled documentation without a browser
documentation(topic = "README")documentation(topic = "README")
topic |
Case-sensitive topic: |
UTF-8 Markdown text from the installed R package.
cat(documentation("DATA"))cat(documentation("DATA"))
Execute a dependency graph of granular calculations
Engine() calculate(nodes, context)Engine() calculate(nodes, context)
nodes |
Named list of nodes, each containing |
context |
Explicit |
Cycles and missing dependencies raise structured conditions. Cached
numeric results do not suppress synthetic-data provenance. Outputs retain
PARTIAL status: combining reference components does not approve an SCR.
Engine() returns an object with a run(nodes, context) function
and an instance-local cache. calculate() returns a list containing
results, execution order, cache hits, coverage and profile scope.
ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") nodes <- list(charge = list("function" = "intangible_risk", inputs = list(value = 100))) # Use a source reference's exact input names: case <- Filter(function(x) x[["function"]] == "intangible_risk" && is.null(x$expected_error), reference_cases()$cases)[[1]] nodes$charge$inputs <- case$kwargs calculate(nodes, ctx)$results$charge$valuectx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") nodes <- list(charge = list("function" = "intangible_risk", inputs = list(value = 100))) # Use a source reference's exact input names: case <- Filter(function(x) x[["function"]] == "intangible_risk" && is.null(x$expected_error), reference_cases()$cases)[[1]] nodes$charge$inputs <- case$kwargs calculate(nodes, ctx)$results$charge$value
Without classification, eligibility remains external. Optional route inputs bind market/fund scope or existing qualification screens to the chosen factor. Strategic/long-term recognition and own-funds deductions remain separate.
equity_shock( category, symmetric_adjustment, duration_based = NULL, context, classification = NULL, ... )equity_shock( category, symmetric_adjustment, duration_based = NULL, context, classification = NULL, ... )
category |
Category. Reference type: |
symmetric_adjustment |
Symmetric adjustment. Reference type: |
duration_based |
Duration based. Reference type: |
context |
Explicit |
classification |
Classification. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("equity-shock-type1-1") result <- do.call(equity_shock, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("equity-shock-type1-1") result <- do.call(equity_shock, c(case$kwargs, list(context = context))) result$value
A negative investment with losses beyond the invested amount uses its absolute value; other negative non-short investments have a zero stress basis, not a zero balance-sheet value. Short pricing is deliberately not inferred from a signed value or from the absolute-value exception.
equity_stress_amount_2027( equity_value, shock, short_position, losses_can_exceed_investment, qualification_reference, context, ... )equity_stress_amount_2027( equity_value, shock, short_position, losses_can_exceed_investment, qualification_reference, context, ... )
equity_value |
Equity value. Reference type: |
shock |
Shock. Reference type: |
short_position |
Short position. Reference type: |
losses_can_exceed_investment |
Losses can exceed investment. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("equity-position-zero") result <- do.call(equity_stress_amount_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("equity-position-zero") result <- do.call(equity_stress_amount_2027, c(case$kwargs, list(context = context))) result$value
Export local reference resources or an explicit analyst scenario
export_resources(destination, context = NULL)export_resources(destination, context = NULL)
destination |
Path to a new directory. Existing paths are never overwritten. |
context |
Optional |
This explicitly requested local write does not download anything. Analyst overrides are marked as scenarios, not regulatory approval. Exported JSON formatting and its hashes are R-specific; source hashes remain provenance.
Exported filenames and SHA-256 hashes of their actual JSON bytes.
# Creates a new temporary directory only when explicitly called: destination <- tempfile("solvency2-export-") result <- export_resources(destination) length(result$files) # Remove only the directory just created by this example. unlink(destination, recursive = TRUE)# Creates a new temporary directory only when explicitly called: destination <- tempfile("solvency2-export-") result <- export_resources(destination) length(result$files) # Remove only the directory just created by this example. unlink(destination, recursive = TRUE)
AVAILABLE references do not prove their contents, model approval, adequacy or lawful integration. Partial-model results must already follow the externally approved integration; this function applies no correlations. Period metadata is not a calendar-deadline monitor or submission service.
external_model_checked_value( value, evidence, model_kind, output_kind, conditions, model_reference, assessment_reference, scope_reference, context, ... )external_model_checked_value( value, evidence, model_kind, output_kind, conditions, model_reference, assessment_reference, scope_reference, context, ... )
value |
Value. Reference type: |
evidence |
Evidence. Reference type: |
model_kind |
Model kind. Reference type: |
output_kind |
Output kind. Reference type: |
conditions |
Conditions. Reference type: |
model_reference |
Model reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("model-standards-close-baseline-full") result <- do.call(external_model_checked_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("model-standards-close-baseline-full") result <- do.call(external_model_checked_value, c(case$kwargs, list(context = context))) result$value
After first SFCR, MCR breach takes precedence even over an available rating. Before SFCR, compliance and current solvency inputs are not used/accepted.
financial_issuer_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )financial_issuer_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, solvency_ratio = NULL, mcr_compliant = NULL, sfcr_published = NULL, context, ... )
modified_duration |
Modified duration. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
solvency_ratio |
Solvency ratio. Reference type: |
mcr_compliant |
Mcr compliant. Reference type: |
sfcr_published |
Sfcr published. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-financial-issuer-spread-9") result <- do.call(financial_issuer_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-financial-issuer-spread-9") result <- do.call(financial_issuer_spread_stress, c(case$kwargs, list(context = context))) result$value
No references are retrieved, substantive evidence reviewed, or actual calendar deadlines monitored. Combination eligibility is conditional on external facts. The optional29d/327d approval changes only the policy-review maximum, not function-combination approval or any other governance interval. Optional archived guidance requires its own explicit applicability reference; omission is NOT_ASSESSED, never a statement that the guidelines do not apply. Optional2027 liquidity_assessment separates solo/group plans, exemptions and supervisory measures; no cashflow projection or supervisory decision is made.
governance_evidence_check( evidence, conditions, assessment_reference, supervisory_policy_interval_years = NULL, non_snc_policy_approval_reference = NULL, de_ppp_assessment = NULL, guidance_assessment = NULL, liquidity_assessment = NULL, context, ... )governance_evidence_check( evidence, conditions, assessment_reference, supervisory_policy_interval_years = NULL, non_snc_policy_approval_reference = NULL, de_ppp_assessment = NULL, guidance_assessment = NULL, liquidity_assessment = NULL, context, ... )
evidence |
Evidence. Reference type: |
conditions |
Conditions. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
supervisory_policy_interval_years |
Supervisory policy interval years. Reference type: |
non_snc_policy_approval_reference |
Non snc policy approval reference. Reference type: |
de_ppp_assessment |
De ppp assessment. Reference type: |
guidance_assessment |
Guidance assessment. Reference type: |
liquidity_assessment |
Liquidity assessment. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-approved-policies-five") result <- do.call(governance_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-approved-policies-five") result <- do.call(governance_evidence_check, c(case$kwargs, list(context = context))) result$value
No prescribed significant-deferred-share percentage is invented. This is not permission to ignore payment sustainability, vesting or malus/clawback rules.
governance_remuneration_deferral_years( annual_variable, annual_total, supervisory_exception_denied, qualification_reference, context, ... )governance_remuneration_deferral_years( annual_variable, annual_total, supervisory_exception_denied, qualification_reference, context, ... )
annual_variable |
Annual variable. Reference type: |
annual_total |
Annual total. Reference type: |
supervisory_exception_denied |
Supervisory exception denied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: years.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("governance-pay-baseline-zero") result <- do.call(governance_remuneration_deferral_years, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("governance-pay-baseline-zero") result <- do.call(governance_remuneration_deferral_years, c(case$kwargs, list(context = context))) result$value
Consolidated inputs already exclude M2/sector holdings and reflect required currency sensitivity. Do not repeat pure-M2 participation-value deductions. M2 insurer subsidiary deficits retain Article221 treatment; sector amounts are already weighted and availability-adjusted under Article228.
group_combined_component_surplus_2027( consolidated_own_funds, consolidated_scr, minimum, method2_related, sector_contributions, method2_own_funds_adjustment, method2_capital_addon, approval_reference, qualification_reference, context, ... )group_combined_component_surplus_2027( consolidated_own_funds, consolidated_scr, minimum, method2_related, sector_contributions, method2_own_funds_adjustment, method2_capital_addon, approval_reference, qualification_reference, context, ... )
consolidated_own_funds |
Consolidated own funds. Reference type: |
consolidated_scr |
Consolidated scr. Reference type: |
minimum |
Minimum. Reference type: |
method2_related |
Method2 related. Reference type: |
sector_contributions |
Sector contributions. Reference type: |
method2_own_funds_adjustment |
Method2 own funds adjustment. Reference type: |
method2_capital_addon |
Method2 capital addon. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-combined-negative") result <- do.call(group_combined_component_surplus_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-combined-negative") result <- do.call(group_combined_component_surplus_2027, c(case$kwargs, list(context = context))) result$value
Amounts use the same qualified currency. This is not a currency charge and no equity shock applies to this holding under the cited combined-method rule.
group_combined_currency_exposure_2027( participation_value, entity_scr, share, qualification_reference, context, ... )group_combined_currency_exposure_2027( participation_value, entity_scr, share, qualification_reference, context, ... )
participation_value |
Participation value. Reference type: |
entity_scr |
Entity scr. Reference type: |
share |
Share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-combined-fx-50-0") result <- do.call(group_combined_currency_exposure_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-combined-fx-50-0") result <- do.call(group_combined_currency_exposure_2027, c(case$kwargs, list(context = context))) result$value
Method1 Article335(1)a/c scope and consolidation shares are external. The receiving reinsurer excludes intra-group fulfilment cashflows; the cedant excludes corresponding recoverables. This function does not perform netting.
group_consolidated_best_estimate( parent_best_estimate, related, qualification_reference, context, ... )group_consolidated_best_estimate( parent_best_estimate, related, qualification_reference, context, ... )
parent_best_estimate |
Parent best estimate. Reference type: |
related |
Related. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-consolidated-be-positive") result <- do.call(group_consolidated_best_estimate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-consolidated-be-positive") result <- do.call(group_consolidated_best_estimate, c(case$kwargs, list(context = context))) result$value
Future third-country rows are explicit, including an empty mapping. They must not duplicate the EU-MCR entity set; legal scope is assessed externally.
group_consolidated_minimum( parent_mcr, related, qualification_reference, third_country = NULL, context, ... )group_consolidated_minimum( parent_mcr, related, qualification_reference, third_country = NULL, context, ... )
parent_mcr |
Parent mcr. Reference type: |
related |
Related. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
third_country |
Third country. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-minimum-parent") result <- do.call(group_consolidated_minimum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-minimum-parent") result <- do.call(group_consolidated_minimum, c(case$kwargs, list(context = context))) result$value
Proportionate sum of externally qualified risk margins, no added diversification.
group_consolidated_risk_margin( parent_risk_margin, related, qualification_reference, context, ... )group_consolidated_risk_margin( parent_risk_margin, related, qualification_reference, context, ... )
parent_risk_margin |
Parent risk margin. Reference type: |
related |
Related. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-consolidated-rm-empty") result <- do.call(group_consolidated_risk_margin, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-consolidated-rm-empty") result <- do.call(group_consolidated_risk_margin, c(case$kwargs, list(context = context))) result$value
Contributions b/c already include proportional shares. Components d/e are externally determined risk amounts, not invented sums of individual SCRs. From 2027, only a-d belong here; separate Article336b additions must be explicit and disjoint from those components. Article228 sector contributions are outside this consolidated amount. Their valuation is not inferred. Apply the Article230 minimum separately. No sector/Look-through valuation or supervisory determination is implemented by this composition function.
group_consolidated_scr( components, capital_addon, qualification_reference, simplified_contributions = NULL, context, ... )group_consolidated_scr( components, capital_addon, qualification_reference, simplified_contributions = NULL, context, ... )
components |
Components. Reference type: |
capital_addon |
Capital addon. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
simplified_contributions |
Simplified contributions. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-scr-four") result <- do.call(group_consolidated_scr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-scr-four") result <- do.call(group_consolidated_scr, c(case$kwargs, list(context = context))) result$value
This is not consolidation by adding individual SCRs. Input SCR must include externally required add-ons; EOF qualification and minimum coverage remain externally assessed. A negative surplus is deliberately retained. Future Article228 sectors must be excluded from consolidated inputs and added separately, after the minimum is applied to consolidated SCR only.
group_consolidated_surplus( eligible_own_funds, calculated_scr, minimum, qualification_reference, sector_contributions = NULL, context, ... )group_consolidated_surplus( eligible_own_funds, calculated_scr, minimum, qualification_reference, sector_contributions = NULL, context, ... )
eligible_own_funds |
Eligible own funds. Reference type: |
calculated_scr |
Calculated scr. Reference type: |
minimum |
Minimum. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
sector_contributions |
Sector contributions. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-consolidated-deficit") result <- do.call(group_consolidated_surplus, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-consolidated-deficit") result <- do.call(group_consolidated_surplus, c(case$kwargs, list(context = context))) result$value
All relevant holdings and consolidated assets are externally qualified. Exact decimal comparisons avoid a rounding tolerance at either boundary.
group_immaterial_participation_screen_2027( consolidated_assets, book_values, qualification_reference, context, ... )group_immaterial_participation_screen_2027( consolidated_assets, book_values, qualification_reference, context, ... )
consolidated_assets |
Consolidated assets. Reference type: |
book_values |
Book values. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-immaterial-zero") result <- do.call(group_immaterial_participation_screen_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-immaterial-zero") result <- do.call(group_immaterial_participation_screen_2027, c(case$kwargs, list(context = context))) result$value
Shares must use the precisely qualified212(1)f(vi) consolidated perimeter. Do not cap ratios at1: offsetting consolidated amounts can change ratios. Ongoing satisfaction and the other legal conditions remain external facts.
group_insurance_holding_conditions_2027( indicator_shares, other_supervisory_shares, conditions, qualification_reference, context, ... )group_insurance_holding_conditions_2027( indicator_shares, other_supervisory_shares, conditions, qualification_reference, context, ... )
indicator_shares |
Indicator shares. Reference type: |
other_supervisory_shares |
Other supervisory shares. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("holding-definition-equal") result <- do.call(group_insurance_holding_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("holding-definition-equal") result <- do.call(group_insurance_holding_conditions_2027, c(case$kwargs, list(context = context))) result$value
Article335(1)a amounts enter in full,335(1)c proportionally. On a qualified supervisory request replace only1(a) with the externally recomputed amount.
group_long_term_equity_limit_2027( full_amounts, proportional_amounts, supervisory_recalculation_required, recalculated_full_amount, qualification_reference, context, ... )group_long_term_equity_limit_2027( full_amounts, proportional_amounts, supervisory_recalculation_required, recalculated_full_amount, qualification_reference, context, ... )
full_amounts |
Full amounts. Reference type: |
proportional_amounts |
Proportional amounts. Reference type: |
supervisory_recalculation_required |
Supervisory recalculation required. Reference type: |
recalculated_full_amount |
Recalculated full amount. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-group-zero") result <- do.call(group_long_term_equity_limit_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-group-zero") result <- do.call(group_long_term_equity_limit_2027, c(case$kwargs, list(context = context))) result$value
Calculate before/after removal of intra-group transactions separately; this component does not invent an EOF-adjustment sign or revalue transactions.
group_method2_best_estimate_sum( parent_best_estimate, related, qualification_reference, context, ... )group_method2_best_estimate_sum( parent_best_estimate, related, qualification_reference, context, ... )
parent_best_estimate |
Parent best estimate. Reference type: |
related |
Related. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-be-empty") result <- do.call(group_method2_best_estimate_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-be-empty") result <- do.call(group_method2_best_estimate_sum, c(case$kwargs, list(context = context))) result$value
Participation values already represent the held direct/indirect investment: never apply share twice. External EOF adjustments must not duplicate those values or the full-subsidiary-deficit correction calculated here. Group availability, tiers, intra-group transactions and scope are not inferred. Future Article228 sectors are explicit, already weighted and disjoint; their holding values are deducted once, not passed through insurer deficits.
group_method2_component_surplus( parent_own_funds, parent_scr, related, own_funds_adjustment, capital_addon, qualification_reference, sector_contributions = NULL, context, ... )group_method2_component_surplus( parent_own_funds, parent_scr, related, own_funds_adjustment, capital_addon, qualification_reference, sector_contributions = NULL, context, ... )
parent_own_funds |
Parent own funds. Reference type: |
parent_scr |
Parent scr. Reference type: |
related |
Related. Reference type: |
own_funds_adjustment |
Own funds adjustment. Reference type: |
capital_addon |
Capital addon. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
sector_contributions |
Sector contributions. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-method2-negative") result <- do.call(group_method2_component_surplus, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-method2-negative") result <- do.call(group_method2_component_surplus, c(case$kwargs, list(context = context))) result$value
Both own-funds inputs exclude intra-group subordinated liabilities and ancillary own funds. The other-nonavailable input also excludes paragraph4 items. A negative formula result is NOT an automatic own-funds credit.
group_minority_excess_2027( eligible_own_funds_net, other_nonavailable_own_funds_net, scr_contribution, parent_subscribed_capital_share, qualification_reference, context, ... )group_minority_excess_2027( eligible_own_funds_net, other_nonavailable_own_funds_net, scr_contribution, parent_subscribed_capital_share, qualification_reference, context, ... )
eligible_own_funds_net |
Eligible own funds net. Reference type: |
other_nonavailable_own_funds_net |
Other nonavailable own funds net. Reference type: |
scr_contribution |
Scr contribution. Reference type: |
parent_subscribed_capital_share |
Parent subscribed capital share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-availability-future-minority-zero") result <- do.call(group_minority_excess_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-availability-future-minority-zero") result <- do.call(group_minority_excess_2027, c(case$kwargs, list(context = context))) result$value
The full declared entity set is checked before selecting one contribution. A1e-12 numerical sum tolerance is not regulatory materiality. Percentages are never renormalised, and neither ownership weights nor the future6a standard-formula cap are applied to this separate6b branch.
group_model_scr_contribution( entity, model_outputs, complete_scope_confirmed, model_reference, qualification_reference, context, ... )group_model_scr_contribution( entity, model_outputs, complete_scope_confirmed, model_reference, qualification_reference, context, ... )
entity |
Entity. Reference type: |
model_outputs |
Model outputs. Reference type: |
complete_scope_confirmed |
Complete scope confirmed. Reference type: |
model_reference |
Model reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-model-baseline-zero-share") result <- do.call(group_model_scr_contribution, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-model-baseline-zero-share") result <- do.call(group_model_scr_contribution, c(case$kwargs, list(context = context))) result$value
No consent is inferred from availability of a group document. Subsidiary Article45 duties persist. The future profile separately includes material non-insurance activities and actual/potential risks/interdependencies.
group_orsa_evidence_check( evidence, method1_applied, single_document, qualification_reference, assessment_reference, context, ... )group_orsa_evidence_check( evidence, method1_applied, single_document, qualification_reference, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
method1_applied |
Method1 applied. Reference type: |
single_document |
Single document. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-orsa-baseline-missing-conditional") result <- do.call(group_orsa_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-orsa-baseline-missing-conditional") result <- do.call(group_orsa_evidence_check, c(case$kwargs, list(context = context))) result$value
The externally qualified perimeter must match Article246(4), method1, valuation date and currency. This arithmetic is not the required substantive explanation of the difference, nor a release of diversification benefits.
group_orsa_method1_scr_difference( related_scrs, consolidated_scr, qualification_reference, context, ... )group_orsa_method1_scr_difference( related_scrs, consolidated_scr, qualification_reference, context, ... )
related_scrs |
Related scrs. Reference type: |
consolidated_scr |
Consolidated scr. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-orsa-baseline-zero") result <- do.call(group_orsa_method1_scr_difference, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-orsa-baseline-zero") result <- do.call(group_orsa_method1_scr_difference, c(case$kwargs, list(context = context))) result$value
Check only the declared nine-month horizon, not effective availability.
group_own_funds_transfer_timing_screen( months_to_availability, qualification_reference, context, ... )group_own_funds_transfer_timing_screen( months_to_availability, qualification_reference, context, ... )
months_to_availability |
Months to availability. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-availability-baseline-timing-zero") result <- do.call(group_own_funds_transfer_timing_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-availability-baseline-timing-zero") result <- do.call(group_own_funds_transfer_timing_screen, c(case$kwargs, list(context = context))) result$value
The elapsed FINANCIAL-year measure is externally qualified. This screen does not rewrite MCR, assign a tier, or waive other own-funds conditions. Three YEARS of group supervision and the prescribed forward ORSA evidence are additional mandatory gates. Insurers use331/332's solo-SCR definition; qualified intermediate holdings/ancillary subsidiaries instead use333(4)'s temporary disapplication of333(2)(a). These are not interchangeable effects.
group_pre_acquisition_scr_exception_2027( related_financial_years, issued_before_joining, included_in_group_calculation, qualification_reference, context, group_supervision_years = NULL, orsa_support_confirmed = NULL, issuer_type = "eu_insurer", ... )group_pre_acquisition_scr_exception_2027( related_financial_years, issued_before_joining, included_in_group_calculation, qualification_reference, context, group_supervision_years = NULL, orsa_support_confirmed = NULL, issuer_type = "eu_insurer", ... )
related_financial_years |
Related financial years. Reference type: |
issued_before_joining |
Issued before joining. Reference type: |
included_in_group_calculation |
Included in group calculation. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
group_supervision_years |
Group supervision years. Reference type: |
orsa_support_confirmed |
Orsa support confirmed. Reference type: |
issuer_type |
Issuer type. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-availability-future-pre-acquisition-zero") result <- do.call(group_pre_acquisition_scr_exception_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-availability-future-pre-acquisition-zero") result <- do.call(group_pre_acquisition_scr_exception_2027, c(case$kwargs, list(context = context))) result$value
Entity gross BE and recoverables must include the supplied disjoint internal transactions, but already exclude all OTHER required intragroup adjustments. Assumed obligation PV and ceded recoverable need not agree: valuation bases and shares can differ. Neither side is inferred from the other or floored. This is a two-sided ledger adjustment, not a projection or legal approval.
group_reinsurance_elimination( entities, transactions, parent_id, measure, other_intragroup_adjustments_complete, qualification_reference, context, ... )group_reinsurance_elimination( entities, transactions, parent_id, measure, other_intragroup_adjustments_complete, qualification_reference, context, ... )
entities |
Entities. Reference type: |
transactions |
Transactions. Reference type: |
parent_id |
Parent id. Reference type: |
measure |
Measure. Reference type: |
other_intragroup_adjustments_complete |
Other intragroup adjustments complete. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-reinsurance-baseline-recoverables") result <- do.call(group_reinsurance_elimination, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-reinsurance-baseline-recoverables") result <- do.call(group_reinsurance_elimination, c(case$kwargs, list(context = context))) result$value
Full subsidiary deficit unless an explicit externally approved exception applies.
group_required_shortfall( eligible_own_funds, scr, share, is_subsidiary, proportionate_deficit_approved, approval_reference = NULL, qualification_reference, context, ... )group_required_shortfall( eligible_own_funds, scr, share, is_subsidiary, proportionate_deficit_approved, approval_reference = NULL, qualification_reference, context, ... )
eligible_own_funds |
Eligible own funds. Reference type: |
scr |
Scr. Reference type: |
share |
Share. Reference type: |
is_subsidiary |
Is subsidiary. Reference type: |
proportionate_deficit_approved |
Proportionate deficit approved. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-shortfall-full") result <- do.call(group_required_shortfall, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-shortfall-full") result <- do.call(group_required_shortfall, c(case$kwargs, list(context = context))) result$value
Bank inputs include applicable buffers/add-ons, not just Pillar1 minima. Pension inputs cover both the required margin and national requirement. This component implements no CRR, IFR, IORP or third-country valuation.
group_sector_capital_requirement_2027( sector, requirements, qualification_reference, context, ... )group_sector_capital_requirement_2027( sector, requirements, qualification_reference, context, ... )
sector |
Sector. Reference type: |
requirements |
Requirements. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-sector-bank-zero") result <- do.call(group_sector_capital_requirement_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-sector-bank-zero") result <- do.call(group_sector_capital_requirement_2027, c(case$kwargs, list(context = context))) result$value
Eligible own funds must already reflect Article228 availability exclusions. Subgroup inclusion, exclusion of its individual members and supervisory decisions are externally qualified. Signed own funds are not floored.
group_sector_contribution_2027( entities, measure, qualification_reference, context, ... )group_sector_contribution_2027( entities, measure, qualification_reference, context, ... )
entities |
Entities. Reference type: |
measure |
Measure. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-sector-empty-eligible_own_funds") result <- do.call(group_sector_contribution_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-sector-empty-eligible_own_funds") result <- do.call(group_sector_contribution_2027, c(case$kwargs, list(context = context))) result$value
Latest applicable accounts, currency, host-market life/nonlife scope and branch perimeter are externally qualified. No college invitation or broad materiality judgement follows automatically from this numeric indicator.
group_significant_branch_screen( branch_gross_premiums, group_gross_premiums, host_market_gross_premiums, qualification_reference, context, ... )group_significant_branch_screen( branch_gross_premiums, group_gross_premiums, host_market_gross_premiums, qualification_reference, context, ... )
branch_gross_premiums |
Branch gross premiums. Reference type: |
group_gross_premiums |
Group gross premiums. Reference type: |
host_market_gross_premiums |
Host market gross premiums. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-report-close-baseline-branch-host") result <- do.call(group_significant_branch_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-report-close-baseline-branch-host") result <- do.call(group_significant_branch_screen, c(case$kwargs, list(context = context))) result$value
Article228 entities are outside scope. Third-country capital information must be supplied, never replaced with zero when unavailable.
group_simplified_participation_scr_2027( participation_risk, entity_type, capital_requirement = NULL, approval_reference, qualification_reference, context, ... )group_simplified_participation_scr_2027( participation_risk, entity_type, capital_requirement = NULL, approval_reference, qualification_reference, context, ... )
participation_risk |
Participation risk. Reference type: |
entity_type |
Entity type. Reference type: |
capital_requirement |
Capital requirement. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-simplified-other") result <- do.call(group_simplified_participation_scr_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-simplified-other") result <- do.call(group_simplified_participation_scr_2027, c(case$kwargs, list(context = context))) result$value
Numerator uses the entity's proportional SCR; denominator is the sum of the supplied SCRs, without applying shares a second time. No internal-model allocation is inferred. Scaling preserves the formula at large magnitudes.
group_standard_scr_contribution( entity, share, diversified_component, component_scrs, qualification_reference, context, ... )group_standard_scr_contribution( entity, share, diversified_component, component_scrs, qualification_reference, context, ... )
entity |
Entity. Reference type: |
share |
Share. Reference type: |
diversified_component |
Diversified component. Reference type: |
component_scrs |
Component scrs. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-contribution-full") result <- do.call(group_standard_scr_contribution, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-group-contribution-full") result <- do.call(group_standard_scr_contribution, c(case$kwargs, list(context = context))) result$value
The 2027 text no longer separately names STS; CRR243 compliance remains required and externally qualified, not inferred from a non-STS declaration. Paragraph10a requires external pre-2019 issue and exact 2018-rule assessment, not a current type label or an engine-generated historical classification.
guaranteed_sts_securitisation_spread_stress( conditions, qualification_reference, transition = NULL, context, ... )guaranteed_sts_securitisation_spread_stress( conditions, qualification_reference, transition = NULL, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
transition |
Transition. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("spread-zero-baseline-transition-eligible") result <- do.call(guaranteed_sts_securitisation_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("spread-zero-baseline-transition-eligible") result <- do.call(guaranteed_sts_securitisation_spread_stress, c(case$kwargs, list(context = context))) result$value
The denominator is event-specific Ne, not the whole building count Cc. Empty event populations require review, never an invented zero mean.
health_accident_benefit_mean( benefits, valuation_reference, context, group_counts = NULL, grouping_reference = NULL, ... )health_accident_benefit_mean( benefits, valuation_reference, context, group_counts = NULL, grouping_reference = NULL, ... )
benefits |
Benefits. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
group_counts |
Group counts. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-benefit-mean") result <- do.call(health_accident_benefit_mean, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-benefit-mean") result <- do.call(health_accident_benefit_mean, c(case$kwargs, list(context = context))) result$value
Sum externally qualified event benefits of resident insured persons.
health_accident_benefit_sum( benefits, valuation_reference, context, group_counts = NULL, grouping_reference = NULL, ... )health_accident_benefit_sum( benefits, valuation_reference, context, group_counts = NULL, grouping_reference = NULL, ... )
benefits |
Benefits. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
group_counts |
Group counts. Reference type: |
grouping_reference |
Grouping reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-accident-benefit-empty") result <- do.call(health_accident_benefit_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-accident-benefit-empty") result <- do.call(health_accident_benefit_sum, c(case$kwargs, list(context = context))) result$value
Use the externally identified largest qualified building population, not largest loss.
health_accident_concentration_loss( persons, mean_benefits, concentration_reference, context, ... )health_accident_concentration_loss( persons, mean_benefits, concentration_reference, context, ... )
persons |
Persons. Reference type: |
mean_benefits |
Mean benefits. Reference type: |
concentration_reference |
Concentration reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-concentration-loss") result <- do.call(health_accident_concentration_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-concentration-loss") result <- do.call(health_accident_concentration_loss, c(case$kwargs, list(context = context))) result$value
Root-sum-square of already valued country BOF charges, never of gross claims.
health_accident_country_aggregation( country_charges, peril, scope_reference, context, ... )health_accident_country_aggregation( country_charges, peril, scope_reference, context, ... )
country_charges |
Country charges. Reference type: |
peril |
Peril. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-accident-concentration-empty") result <- do.call(health_accident_country_aggregation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-accident-concentration-empty") result <- do.call(health_accident_country_aggregation, c(case$kwargs, list(context = context))) result$value
Do not add multiple covers automatically or substitute the discounted claims volume for the source-defined nominal net best estimate.
health_adc_recovery_2027( segment, nominal_net_best_estimate, attachment_point, cover_size, qualification_reference, context, ... )health_adc_recovery_2027( segment, nominal_net_best_estimate, attachment_point, cover_size, qualification_reference, context, ... )
segment |
Segment. Reference type: |
nominal_net_best_estimate |
Nominal net best estimate. Reference type: |
attachment_point |
Attachment point. Reference type: |
cover_size |
Cover size. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-adc-recovery-uncapped") result <- do.call(health_adc_recovery_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-adc-recovery-uncapped") result <- do.call(health_adc_recovery_2027, c(case$kwargs, list(context = context))) result$value
Recovery is the paragraph5 indemnity before applying cession and prudence. Additional premium is supplied before its prescribed zero floor. A zero denominator needs review, not an implicit no-adjustment factor.
health_adc_reserve_factor_2027( segment, nominal_net_best_estimate, recovery, cession_share, additional_premium, qualification_reference, context, ... )health_adc_reserve_factor_2027( segment, nominal_net_best_estimate, recovery, cession_share, additional_premium, qualification_reference, context, ... )
segment |
Segment. Reference type: |
nominal_net_best_estimate |
Nominal net best estimate. Reference type: |
recovery |
Recovery. Reference type: |
cession_share |
Cession share. Reference type: |
additional_premium |
Additional premium. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-adc-factor-zero-floor") result <- do.call(health_adc_reserve_factor_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-adc-factor-zero-floor") result <- do.call(health_adc_reserve_factor_2027, c(case$kwargs, list(context = context))) result$value
Under reinsurance, units represent underlying insurance, not treaty TP. The result counts valuation units, never infers the number of contracts.
health_biometric_selection( shock, valuations, valuation_basis, grouping_mode, grouping_qualified = NULL, valuation_reference, context, ... )health_biometric_selection( shock, valuations, valuation_basis, grouping_mode, grouping_qualified = NULL, valuation_reference, context, ... )
shock |
Shock. Reference type: |
valuations |
Valuations. Reference type: |
valuation_basis |
Valuation basis. Reference type: |
grouping_mode |
Grouping mode. Reference type: |
grouping_qualified |
Grouping qualified. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: selection_units.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-selection-baseline-mortality-qualified-aggregate") result <- do.call(health_biometric_selection, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-selection-baseline-mortality-qualified-aggregate") result <- do.call(health_biometric_selection, c(case$kwargs, list(context = context))) result$value
Selection, permitted grouping and underlying reinsurance contracts remain external. Probability and intensity bases are never silently interconverted.
health_biometric_stress( rate, shock, rate_basis, selected, selection_reference, context, ... )health_biometric_stress( rate, shock, rate_basis, selected, selection_reference, context, ... )
rate |
Rate. Reference type: |
shock |
Shock. Reference type: |
rate_basis |
Rate basis. Reference type: |
selected |
Selected. Reference type: |
selection_reference |
Selection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-biometric-intensity") result <- do.call(health_biometric_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-biometric-intensity") result <- do.call(health_biometric_stress, c(case$kwargs, list(context = context))) result$value
Sum disjoint SLT medical/income charges; no diversification or classification inference.
health_disability_risk( medical_charge, income_protection_charge, classification_reference, context, ... )health_disability_risk( medical_charge, income_protection_charge, classification_reference, context, ... )
medical_charge |
Medical charge. Reference type: |
income_protection_charge |
Income protection charge. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-disability-sum") result <- do.call(health_disability_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-disability-sum") result <- do.call(health_disability_risk, c(case$kwargs, list(context = context))) result$value
Add the expense inflation shock without choosing a projection convention.
health_expense_inflation_stress(inflation_rate, context, ...)health_expense_inflation_stress(inflation_rate, context, ...)
inflation_rate |
Inflation rate. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-inflation") result <- do.call(health_expense_inflation_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-inflation") result <- do.call(health_expense_inflation_stress, c(case$kwargs, list(context = context))) result$value
Stress eligible own/cedent costs jointly with inflation in external projection.
health_expense_level_stress(expense, context, ...)health_expense_level_stress(expense, context, ...)
expense |
Expense. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-expense-zero") result <- do.call(health_expense_level_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-expense-zero") result <- do.call(health_expense_level_stress, c(case$kwargs, list(context = context))) result$value
Bounds are reported independently instead of silently changing a supplied external parameter. Optional qualification additionally rejects declared ineligibility or bound contradictions; omission stays explicitly unchecked. This component is not the complete HRES risk module.
health_hres_mixed_sigma( segment, risk, non_hres_volume, hres_volume, hres_sigma, parameter_reference, qualification = NULL, context, ... )health_hres_mixed_sigma( segment, risk, non_hres_volume, hres_volume, hres_sigma, parameter_reference, qualification = NULL, context, ... )
segment |
Segment. Reference type: |
risk |
Risk. Reference type: |
non_hres_volume |
Non hres volume. Reference type: |
hres_volume |
Hres volume. Reference type: |
hres_sigma |
Hres sigma. Reference type: |
parameter_reference |
Parameter reference. Reference type: |
qualification |
Qualification. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-hres-premium-mixed") result <- do.call(health_hres_mixed_sigma, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-hres-premium-mixed") result <- do.call(health_hres_mixed_sigma, c(case$kwargs, list(context = context))) result$value
Bound an external representative estimate; this does not determine an official HRES sigma.
health_hres_sigma_bound(segment, risk, representative_sigma, context, ...)health_hres_sigma_bound(segment, risk, representative_sigma, context, ...)
segment |
Segment. Reference type: |
risk |
Risk. Reference type: |
representative_sigma |
Representative sigma. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-hres-premium-floor") result <- do.call(health_hres_sigma_bound, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-hres-premium-floor") result <- do.call(health_hres_sigma_bound, c(case$kwargs, list(context = context))) result$value
Stress incidence for an explicitly assigned period; jointly project all156 changes.
health_income_incidence_stress(rate, period, rate_basis, context, ...)health_income_incidence_stress(rate, period, rate_basis, context, ...)
rate |
Rate. Reference type: |
period |
Period. Reference type: |
rate_basis |
Rate basis. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-income-later_years-intensity") result <- do.call(health_income_incidence_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-income-later_years-intensity") result <- do.call(health_income_incidence_stress, c(case$kwargs, list(context = context))) result$value
No complementary transition is inferred or reconstructed. The supplied valuation model must define coherent state transitions and joint projection.
health_income_transition_stress(rate, transition, context, ...)health_income_transition_stress(rate, transition, context, ...)
rate |
Rate. Reference type: |
transition |
Transition. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-income-recovery-0") result <- do.call(health_income_transition_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-income-recovery-0") result <- do.call(health_income_transition_stress, c(case$kwargs, list(context = context))) result$value
Stress relevant exercise/non-exercise probability with health-specific parameters.
health_lapse_option_stress( exercise_rate, direction, option_kind, selected, selection_reference, context, ... )health_lapse_option_stress( exercise_rate, direction, option_kind, selected, selection_reference, context, ... )
exercise_rate |
Exercise rate. Reference type: |
direction |
Direction. Reference type: |
option_kind |
Option kind. Reference type: |
selected |
Selected. Reference type: |
selection_reference |
Selection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-extension-up") result <- do.call(health_lapse_option_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-extension-up") result <- do.call(health_lapse_option_stress, c(case$kwargs, list(context = context))) result$value
Select the gross SLT health lapse charge corresponding to maximum net loss.
health_lapse_risk( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )health_lapse_risk( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-lapse-selection") result <- do.call(health_lapse_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-lapse-selection") result <- do.call(health_lapse_risk, c(case$kwargs, list(context = context))) result$value
Gross claim for one printed AnnexXVI segment, before reinsurance and BOF revaluation.
health_mass_accident_loss( segment, event_exposures, exposure_reference, context, ... )health_mass_accident_loss( segment, event_exposures, exposure_reference, context, ... )
segment |
Segment. Reference type: |
event_exposures |
Event exposures. Reference type: |
exposure_reference |
Exposure reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-region-AT") result <- do.call(health_mass_accident_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-region-AT") result <- do.call(health_mass_accident_loss, c(case$kwargs, list(context = context))) result$value
Uniform joint events, underlying reinsurance contracts and the worst termination form require external qualification in either reference profile.
health_mass_lapse_factor(category, qualification_reference, context, ...)health_mass_lapse_factor(category, qualification_reference, context, ...)
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-mass-future_159_6_b") result <- do.call(health_mass_lapse_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-mass-future_159_6_b") result <- do.call(health_mass_lapse_factor, c(case$kwargs, list(context = context))) result$value
Add/subtract percentage points without inventing a compounding model.
health_medical_inflation_stress(inflation_rate, direction, context, ...)health_medical_inflation_stress(inflation_rate, direction, context, ...)
inflation_rate |
Inflation rate. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-medical-inflation-up") result <- do.call(health_medical_inflation_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-medical-inflation-up") result <- do.call(health_medical_inflation_stress, c(case$kwargs, list(context = context))) result$value
Stress payments jointly with inflation in the external permanent projection.
health_medical_payment_stress(payment, direction, context, ...)health_medical_payment_stress(payment, direction, context, ...)
payment |
Payment. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-medical-payment-zero") result <- do.call(health_medical_payment_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-medical-payment-zero") result <- do.call(health_medical_payment_stress, c(case$kwargs, list(context = context))) result$value
Maximum of two joint-scenario charges; no extra net-selection rule is inferred.
health_medical_risk(up_charge, down_charge, valuation_reference, context, ...)health_medical_risk(up_charge, down_charge, valuation_reference, context, ...)
up_charge |
Up charge. Reference type: |
down_charge |
Down charge. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-medical-maximum") result <- do.call(health_medical_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-medical-maximum") result <- do.call(health_medical_risk, c(case$kwargs, list(context = context))) result$value
Both NSLT and SLT health obligations enter the health catastrophe scope. This does not qualify any individual accident/pandemic scenario or amount. Zero means outside this module's LOB scope, never zero insurer capital.
health_module_scope(lob, module, classification_reference, context, ...)health_module_scope(lob, module, classification_reference, context, ...)
lob |
Lob. Reference type: |
module |
Module. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-scope-baseline-1-health") result <- do.call(health_module_scope, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-scope-baseline-1-health") result <- do.call(health_module_scope, c(case$kwargs, list(context = context))) result$value
NSLT health event share; do not apply SLT's three-scenario selection here.
health_nslt_lapse_factor(category, qualification_reference, context, ...)health_nslt_lapse_factor(category, qualification_reference, context, ...)
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-lapse-termination") result <- do.call(health_nslt_lapse_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-nslt-2027-lapse-termination") result <- do.call(health_nslt_lapse_factor, c(case$kwargs, list(context = context))) result$value
Occupational accident obligations are excluded by external classification; recurring benefits require externally supplied best estimates, not face sums.
health_pandemic_income_exposure(benefits, valuation_reference, context, ...)health_pandemic_income_exposure(benefits, valuation_reference, context, ...)
benefits |
Benefits. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-pandemic-income-empty") result <- do.call(health_pandemic_income_exposure, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-pandemic-income-empty") result <- do.call(health_pandemic_income_exposure, c(case$kwargs, list(context = context))) result$value
Gross sudden scenario claim before reinsurance; country residence/scope external.
health_pandemic_loss( income_exposure, countries, exposure_reference, context, ... )health_pandemic_loss( income_exposure, countries, exposure_reference, context, ... )
income_exposure |
Income exposure. Reference type: |
countries |
Countries. Reference type: |
exposure_reference |
Exposure reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-pandemic-zero") result <- do.call(health_pandemic_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-pandemic-zero") result <- do.call(health_pandemic_loss, c(case$kwargs, list(context = context))) result$value
Weight all three externally valued care types; never silently normalise overrides.
health_pandemic_medical_cost(costs, valuation_reference, context, ...)health_pandemic_medical_cost(costs, valuation_reference, context, ...)
costs |
Costs. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-care-hospital") result <- do.call(health_pandemic_medical_cost, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-cat-2027-care-hospital") result <- do.call(health_pandemic_medical_cost, c(case$kwargs, list(context = context))) result$value
Health-NSLT claims volume; recoverables exclude208(2) finite/similar RI.
health_reserve_volume( claims_best_estimate, eligible_recoverables, context, ... )health_reserve_volume( claims_best_estimate, eligible_recoverables, context, ... )
claims_best_estimate |
Claims best estimate. Reference type: |
eligible_recoverables |
Eligible recoverables. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-reserve-net") result <- do.call(health_reserve_volume, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("health-reserve-net") result <- do.call(health_reserve_volume, c(case$kwargs, list(context = context))) result$value
Stress externally selected inflation/legal/health revision-exposed annuities.
health_revision_stress( annuity_benefit, revision_exposed, qualification_reference, context, ... )health_revision_stress( annuity_benefit, revision_exposed, qualification_reference, context, ... )
annuity_benefit |
Annuity benefit. Reference type: |
revision_exposed |
Revision exposed. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-revision-true") result <- do.call(health_revision_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("health-2027-revision-true") result <- do.call(health_revision_stress, c(case$kwargs, list(context = context))) result$value
The caller qualifies the infrastructure majority, EEA/OECD location, revenue pattern and (where needed) offtaker. No percentage for a 'clear majority' or numeric interpretation of Article164a(2)biii is invented. Corporate CQS0..3 in Article164b(7) is distinct and explicit.
infrastructure_corporate_eligibility_screen( conditions, instrument, revenue_route, many_users, rating_available, qualification_reference, credit_quality_step = NULL, operating_years = NULL, history_basis = NULL, context, ... )infrastructure_corporate_eligibility_screen( conditions, instrument, revenue_route, many_users, rating_available, qualification_reference, credit_quality_step = NULL, operating_years = NULL, history_basis = NULL, context, ... )
conditions |
Conditions. Reference type: |
instrument |
Instrument. Reference type: |
revenue_route |
Revenue route. Reference type: |
many_users |
Many users. Reference type: |
rating_available |
Rating available. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
operating_years |
Operating years. Reference type: |
history_basis |
History basis. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("infrastructure-corporate-baseline-cqs-0") result <- do.call(infrastructure_corporate_eligibility_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("infrastructure-corporate-baseline-cqs-0") result <- do.call(infrastructure_corporate_eligibility_screen, c(case$kwargs, list(context = context))) result$value
Equity and unrated debt carry the additional paragraph1(f) criteria. Instrument rating availability is externally qualified, not inferred from a corporate rating. Revenue/offtaker/stress/financial assessments remain external; a successful screen does not select a reduced capital factor.
infrastructure_project_eligibility_screen( conditions, investment_kind, revenue_route, many_users, qualification_reference, security_route = NULL, alternative_security_mechanisms = NULL, in_construction = NULL, construction_risk = NULL, material_operational_risk = NULL, context, ... )infrastructure_project_eligibility_screen( conditions, investment_kind, revenue_route, many_users, qualification_reference, security_route = NULL, alternative_security_mechanisms = NULL, in_construction = NULL, construction_risk = NULL, material_operational_risk = NULL, context, ... )
conditions |
Conditions. Reference type: |
investment_kind |
Investment kind. Reference type: |
revenue_route |
Revenue route. Reference type: |
many_users |
Many users. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
security_route |
Security route. Reference type: |
alternative_security_mechanisms |
Alternative security mechanisms. Reference type: |
in_construction |
In construction. Reference type: |
construction_risk |
Construction risk. Reference type: |
material_operational_risk |
Material operational risk. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("infrastructure-project-baseline-rated-debt") result <- do.call(infrastructure_project_eligibility_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("infrastructure-project-baseline-rated-debt") result <- do.call(infrastructure_project_eligibility_screen, c(case$kwargs, list(context = context))) result$value
Deposit guarantee concentration gi only; no default/spread risk exemption.
insured_deposit_concentration_factor( conditions, qualification_reference, context, ... )insured_deposit_concentration_factor( conditions, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-deposit-zero-qualified") result <- do.call(insured_deposit_concentration_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-deposit-zero-qualified") result <- do.call(insured_deposit_concentration_factor, c(case$kwargs, list(context = context))) result$value
Duplicate published 75% knots share CQS5_6. MCR/SFCR eligibility is external.
insurer_solvency_spread_stress( modified_duration, solvency_ratio, qualification_reference, context, ... )insurer_solvency_spread_stress( modified_duration, solvency_ratio, qualification_reference, context, ... )
modified_duration |
Modified duration. Reference type: |
solvency_ratio |
Solvency ratio. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-insurer-solvency-spread-1-0") result <- do.call(insurer_solvency_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-insurer-solvency-spread-1-0") result <- do.call(insurer_solvency_spread_stress, c(case$kwargs, list(context = context))) result$value
Charge on intangible value already recognised under Article 12.
intangible_risk(recognised_value, context, ...)intangible_risk(recognised_value, context, ...)
recognised_value |
Recognised value. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-intangible-0") result <- do.call(intangible_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-intangible-0") result <- do.call(intangible_risk, c(case$kwargs, list(context = context))) result$value
Return the nonnegative b magnitude; its application sign belongs to the scenario.
interest_additive_shift_2027(maturity, direction, context, ...)interest_additive_shift_2027(maturity, direction, context, ...)
maturity |
Maturity. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-original-row-up-1-interest_additive_shift_2027") result <- do.call(interest_additive_shift_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-original-row-up-1-interest_additive_shift_2027") result <- do.call(interest_additive_shift_2027, c(case$kwargs, list(context = context))) result$value
Published floor from1year; subannual ambiguity is not filled by extrapolation.
interest_down_floor_2027(maturity, context, ...)interest_down_floor_2027(maturity, context, ...)
maturity |
Maturity. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-floor-2027-1") result <- do.call(interest_down_floor_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-floor-2027-1") result <- do.call(interest_down_floor_2027, c(case$kwargs, list(context = context))) result$value
Literal downward stress only at/before an externally qualified first smoothing point.
interest_down_stress_2027( rate, maturity, first_smoothing_point, qualification_reference, context, ... )interest_down_stress_2027( rate, maturity, first_smoothing_point, qualification_reference, context, ... )
rate |
Rate. Reference type: |
maturity |
Maturity. Reference type: |
first_smoothing_point |
First smoothing point. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-down-2027-rate-1") result <- do.call(interest_down_stress_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-down-2027-rate-1") result <- do.call(interest_down_stress_2027, c(case$kwargs, list(context = context))) result$value
Signed BOF deltas are externally valued for one up/down scenario and one consistent gross/net-FDB basis. Apply before full currency-scenario losses, never subtract the result from an already floored SCR. No pricing or legal deduction qualification is inferred. The arithmetic is shared with188(6).
interest_participation_bof_change( participations, direction, qualification_reference, context, ... )interest_participation_bof_change( participations, direction, qualification_reference, context, ... )
participations |
Participations. Reference type: |
direction |
Direction. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("interest-participation-baseline-up-empty") result <- do.call(interest_participation_bof_change, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("interest-participation-baseline-up-empty") result <- do.call(interest_participation_bof_change, c(case$kwargs, list(context = context))) result$value
Interpolate s using its own90year tail, not the additive60year tail.
interest_relative_factor_2027(maturity, direction, context, ...)interest_relative_factor_2027(maturity, direction, context, ...)
maturity |
Maturity. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-original-row-up-1-interest_relative_factor_2027") result <- do.call(interest_relative_factor_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-original-row-up-1-interest_relative_factor_2027") result <- do.call(interest_relative_factor_2027, c(case$kwargs, list(context = context))) result$value
Future EUR/peg joint scenarios must already be qualified and grouped externally, with no duplicate exposure. Currency/group keys never trigger automatic merging.
interest_scenario_charge( gross_by_currency, net_by_currency, valuation_reference, tie_break = NULL, context, ... )interest_scenario_charge( gross_by_currency, net_by_currency, valuation_reference, tie_break = NULL, context, ... )
gross_by_currency |
Gross by currency. Reference type: |
net_by_currency |
Net by currency. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("interest-sum-net-down") result <- do.call(interest_scenario_charge, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("interest-sum-net-down") result <- do.call(interest_scenario_charge, c(case$kwargs, list(context = context))) result$value
Stress a basic annual spot rate; linear factor interpolation including endpoints.
interest_stress(rate, maturity, direction, context, ...)interest_stress(rate, maturity, direction, context, ...)
rate |
Rate. Reference type: |
maturity |
Maturity. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rate-interpolation") result <- do.call(interest_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rate-interpolation") result <- do.call(interest_stress, c(case$kwargs, list(context = context))) result$value
Shift an externally supplied UFR, without constructing a stressed extrapolation.
interest_ufr_stress_2027(ufr, direction, context, ...)interest_ufr_stress_2027(ufr, direction, context, ...)
ufr |
Ufr. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-ufr-2027-up") result <- do.call(interest_ufr_stress_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("interest-ufr-2027-up") result <- do.call(interest_ufr_stress_2027, c(case$kwargs, list(context = context))) result$value
A nonempty evidence reference records the caller's basis for increased DTA; it does not substantively establish future profits or legal recoverability.
lac_dt( base_dta, base_dtl, stressed_dta, stressed_dtl, recoverability_reference = NULL, context, ... )lac_dt( base_dta, base_dtl, stressed_dta, stressed_dtl, recoverability_reference = NULL, context, ... )
base_dta |
Base dta. Reference type: |
base_dtl |
Base dtl. Reference type: |
stressed_dta |
Stressed dta. Reference type: |
stressed_dtl |
Stressed dtl. Reference type: |
recoverability_reference |
Recoverability reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("tax-2027-positive-zeroed") result <- do.call(lac_dt, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("tax-2027-positive-zeroed") result <- do.call(lac_dt, c(case$kwargs, list(context = context))) result$value
Five years bounds new-business revenue assumptions, not all future profits. A longer profit forecast activates the haircut condition, without inventing its amount. Lower-than-forward returns require review of the literal source rather than treating conservative assumptions as automatically unlawful.
lac_dt_profit_assumptions_check( projection, conditions, management_actions_assumed, qualification_reference, context, ... )lac_dt_profit_assumptions_check( projection, conditions, management_actions_assumed, qualification_reference, context, ... )
projection |
Projection. Reference type: |
conditions |
Conditions. Reference type: |
management_actions_assumed |
Management actions assumed. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lac-dt-profit-baseline-boundary-five") result <- do.call(lac_dt_profit_assumptions_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lac-dt-profit-baseline-boundary-five") result <- do.call(lac_dt_profit_assumptions_check, c(case$kwargs, list(context = context))) result$value
Loss for the external tax revaluation, before (not after) the tax adjustment.
lac_dt_stress_amount(bscr, operational, adjustment_tp, context, ...)lac_dt_stress_amount(bscr, operational, adjustment_tp, context, ...)
bscr |
Bscr. Reference type: |
operational |
Operational. Reference type: |
adjustment_tp |
Adjustment tp. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("tax-stress-2027-zero") result <- do.call(lac_dt_stress_amount, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("tax-stress-2027-zero") result <- do.call(lac_dt_stress_amount, c(case$kwargs, list(context = context))) result$value
Signed (nonpositive) loss-absorbing adjustment for technical provisions.
lac_tp(bscr, net_bscr, future_discretionary_benefits, context, ...)lac_tp(bscr, net_bscr, future_discretionary_benefits, context, ...)
bscr |
Bscr. Reference type: |
net_bscr |
Net bscr. Reference type: |
future_discretionary_benefits |
Future discretionary benefits. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-lac-tp-3") result <- do.call(lac_tp, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-lac-tp-3") result <- do.call(lac_tp, c(case$kwargs, list(context = context))) result$value
Stress the relevant option-exercise rate after the required contract selection.
lapse_stress(rate, direction, context, ...)lapse_stress(rate, direction, context, ...)
rate |
Rate. Reference type: |
direction |
Direction. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-lapse-up-cap") result <- do.call(lapse_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-lapse-up-cap") result <- do.call(lapse_stress, c(case$kwargs, list(context = context))) result$value
Fraction arithmetic on decimal representations preserves exact boundaries such as 115/(1.15*100)=1; ceil would be wrong there. Representative loss allocation across those claims and reinsurance response remain external.
liability_cat_claim_count( loss, unlimited, largest_limit = NULL, qualification_reference, context, ... )liability_cat_claim_count( loss, unlimited, largest_limit = NULL, qualification_reference, context, ... )
loss |
Loss. Reference type: |
unlimited |
Unlimited. Reference type: |
largest_limit |
Largest limit. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: count.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-unlimited") result <- do.call(liability_cat_claim_count, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-unlimited") result <- do.call(liability_cat_claim_count, c(case$kwargs, list(context = context))) result$value
AnnexXI classifications and exclusions are external, including the group4 exclusions for groups1–3, private households and specified craftsmen.
liability_cat_loss(group, gross_premium, qualification_reference, context, ...)liability_cat_loss(group, gross_premium, qualification_reference, context, ...)
group |
Group. Reference type: |
gross_premium |
Gross premium. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-liability-group1") result <- do.call(liability_cat_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("liability-credit-2027-liability-group1") result <- do.call(liability_cat_loss, c(case$kwargs, list(context = context))) result$value
Direct/underlying basis, grouping and external TP valuation requirements are unchanged; the shared private helper does not contribute health sources.
life_biometric_selection( shock, valuations, valuation_basis, grouping_mode, grouping_qualified = NULL, valuation_reference, context, ... )life_biometric_selection( shock, valuations, valuation_basis, grouping_mode, grouping_qualified = NULL, valuation_reference, context, ... )
shock |
Shock. Reference type: |
valuations |
Valuations. Reference type: |
valuation_basis |
Valuation basis. Reference type: |
grouping_mode |
Grouping mode. Reference type: |
grouping_qualified |
Grouping qualified. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: selection_units.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-selection-baseline-mortality-qualified-aggregate") result <- do.call(life_biometric_selection, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-selection-baseline-mortality-qualified-aggregate") result <- do.call(life_biometric_selection, c(case$kwargs, list(context = context))) result$value
Disability incidence/recovery stresses must be projected jointly. Contract selection and time-period assignment are external, not inferred from rate.
life_biometric_stress(rate, shock, rate_basis, context, ...)life_biometric_stress(rate, shock, rate_basis, context, ...)
rate |
Rate. Reference type: |
shock |
Shock. Reference type: |
rate_basis |
Rate basis. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-rate-intensity") result <- do.call(life_biometric_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-rate-intensity") result <- do.call(life_biometric_stress, c(case$kwargs, list(context = context))) result$value
Individual-contract projection is the default. The insurer assesses undue burden, risk similarity, faithful expenses/risks and comparable best estimates including guarantees/options. No quantitative materiality cutoff is invented.
life_cashflow_grouping_conditions( conditions, qualification_reference, context, ... )life_cashflow_grouping_conditions( conditions, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-grouping-baseline-combination-15") result <- do.call(life_cashflow_grouping_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-grouping-baseline-combination-15") result <- do.call(life_cashflow_grouping_conditions, c(case$kwargs, list(context = context))) result$value
The input is a mortality probability for the next twelve months, not an intensity. No lifetime extrapolation, contract selection or BOF valuation is inferred; article 143 specifies no probability cap.
life_catastrophe_rate_stress(rate, selected, selection_reference, context, ...)life_catastrophe_rate_stress(rate, selected, selection_reference, context, ...)
rate |
Rate. Reference type: |
selected |
Selected. Reference type: |
selection_reference |
Selection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-cat-true") result <- do.call(life_catastrophe_rate_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-cat-true") result <- do.call(life_catastrophe_rate_stress, c(case$kwargs, list(context = context))) result$value
Add the prescribed percentage-point shock without choosing a compounding model.
life_expense_inflation_stress(inflation_rate, context, ...)life_expense_inflation_stress(inflation_rate, context, ...)
inflation_rate |
Inflation rate. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-expense-inflation") result <- do.call(life_expense_inflation_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-expense-inflation") result <- do.call(life_expense_inflation_stress, c(case$kwargs, list(context = context))) result$value
Stress eligible costs; combine with inflation stress in the external projection.
life_expense_level_stress(expense, context, ...)life_expense_level_stress(expense, context, ...)
expense |
Expense. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-expense-zero") result <- do.call(life_expense_level_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-expense-zero") result <- do.call(life_expense_level_stress, c(case$kwargs, list(context = context))) result$value
Selection depends on the relevant technical-provision effect, not merely the option label. Underlying/reinsurance rights are classified externally.
life_lapse_option_stress( exercise_rate, direction, option_kind, selected, selection_reference, context, ... )life_lapse_option_stress( exercise_rate, direction, option_kind, selected, selection_reference, context, ... )
exercise_rate |
Exercise rate. Reference type: |
direction |
Direction. Reference type: |
option_kind |
Option kind. Reference type: |
selected |
Selected. Reference type: |
selection_reference |
Selection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-extension-up") result <- do.call(life_lapse_option_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-extension-up") result <- do.call(life_lapse_option_stress, c(case$kwargs, list(context = context))) result$value
Select gross capital using all three externally valued net scenarios.
life_lapse_risk( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )life_lapse_risk( gross_losses, net_losses, valuation_reference, tie_break = NULL, context, ... )
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-lapse-net-selection") result <- do.call(life_lapse_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-lapse-net-selection") result <- do.call(life_lapse_risk, c(case$kwargs, list(context = context))) result$value
Categories a/b are disjoint and a/b/c apply jointly where relevant. Special category qualification and worst termination form remain external. In2027, uniform application to affected contracts and application to the underlying insurance contracts for reinsurance a/b must also be qualified.
life_mass_lapse_factor(category, qualification_reference, context, ...)life_mass_lapse_factor(category, qualification_reference, context, ...)
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-mass-future_142_6_c") result <- do.call(life_mass_lapse_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("life-mass-future_142_6_c") result <- do.call(life_mass_lapse_factor, c(case$kwargs, list(context = context))) result$value
Related beneficiaries are excluded independently of count. The20-person limit belongs to the separate estate/inheritance-purpose exclusion only. Underlying reinsurance scope and worst termination valuation remain external.
life_mass_lapse_special_eligibility( policyholder_type, conditions, beneficiary_count = NULL, qualification_reference, context, ... )life_mass_lapse_special_eligibility( policyholder_type, conditions, beneficiary_count = NULL, qualification_reference, context, ... )
policyholder_type |
Policyholder type. Reference type: |
conditions |
Conditions. Reference type: |
beneficiary_count |
Beneficiary count. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mass-lapse-special-baseline-non-natural-consent-true") result <- do.call(life_mass_lapse_special_eligibility, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mass-lapse-special-baseline-non-natural-consent-true") result <- do.call(life_mass_lapse_special_eligibility, c(case$kwargs, list(context = context))) result$value
Increase only externally qualified revision-exposed annuity benefits.
life_revision_stress(annuity_benefit, revision_exposed, context, ...)life_revision_stress(annuity_benefit, revision_exposed, context, ...)
annuity_benefit |
Annuity benefit. Reference type: |
revision_exposed |
Revision exposed. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-revision-true") result <- do.call(life_revision_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("life-2027-revision-true") result <- do.call(life_revision_stress, c(case$kwargs, list(context = context))) result$value
Import a user-supplied local discount curve
load_discount_curve_json(path) load_discount_curve_csv( path, curve_id, as_of, currency, curve_kind, source_reference )load_discount_curve_json(path) load_discount_curve_csv( path, curve_id, as_of, currency, curve_kind, source_reference )
path |
Local file path; URLs, including |
curve_id, as_of, currency, curve_kind, source_reference
|
Explicit CSV metadata;
see |
JSON must be UTF-8 with unique object keys. CSV must have exactly
date,discount_factor columns, comma separators and decimal points.
Neither adapter accesses the Internet or guesses units.
A validated DiscountCurve().
path <- tempfile(fileext = ".csv") writeLines(c("date,discount_factor", "2026-01-17,0.97"), path) curve <- load_discount_curve_csv(path, "example", "2025-01-17", "EUR", "custom", "synthetic example") discount_curve_factor(curve, "2026-01-17") unlink(path)path <- tempfile(fileext = ".csv") writeLines(c("date,discount_factor", "2026-01-17,0.97"), path) curve <- load_discount_curve_csv(path, "example", "2025-01-17", "EUR", "custom", "synthetic example") discount_curve_factor(curve, "2026-01-17") unlink(path)
Factors are supplied linear multipliers, NOT inferred ownership fractions. Signed/leverage inputs remain externally qualified; no normalisation, NAV solving, asset classification, fallback completion or risk-charge netting. Kahn traversal avoids recursion limits and exponential path enumeration.
lookthrough_exposure_amount( funds, holdings, exposure_id, complete_scope, basis_reference, context, ... )lookthrough_exposure_amount( funds, holdings, exposure_id, complete_scope, basis_reference, context, ... )
funds |
Funds. Reference type: |
holdings |
Holdings. Reference type: |
exposure_id |
Exposure id. Reference type: |
complete_scope |
Complete scope. Reference type: |
basis_reference |
Basis reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-exposure-baseline-known-zero-position") result <- do.call(lookthrough_exposure_amount, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-exposure-baseline-known-zero-position") result <- do.call(lookthrough_exposure_amount, c(case$kwargs, list(context = context))) result$value
Only externally qualified collective/fund-form investments are in scope. Prudence and any data-grouping cap must be checked separately.
lookthrough_fallback_conditions( conditions, allocation_basis, qualification_reference, context, ... )lookthrough_fallback_conditions( conditions, allocation_basis, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
allocation_basis |
Allocation basis. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-baseline-target") result <- do.call(lookthrough_fallback_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-baseline-target") result <- do.call(lookthrough_fallback_conditions, c(case$kwargs, list(context = context))) result$value
Article84(3a) exclusion/classification and prudent risk grouping are external; zero/zero means only the inequality holds, not that a method is approved.
lookthrough_grouping_limit( grouped_assets_in_scope, total_assets_in_scope, article84_3a_scope_qualified, prudent_grouping, qualification_reference, context, ... )lookthrough_grouping_limit( grouped_assets_in_scope, total_assets_in_scope, article84_3a_scope_qualified, prudent_grouping, qualification_reference, context, ... )
grouped_assets_in_scope |
Grouped assets in scope. Reference type: |
total_assets_in_scope |
Total assets in scope. Reference type: |
article84_3a_scope_qualified |
Article84 3a scope qualified. Reference type: |
prudent_grouping |
Prudent grouping. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-baseline-group-zero") result <- do.call(lookthrough_grouping_limit, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("lookthrough-baseline-group-zero") result <- do.call(lookthrough_grouping_limit, c(case$kwargs, list(context = context))) result$value
Fire inputs are complete, externally qualified building groups, not isolated points. Components are after qualified recovery/fallback; never deduct twice. Empty eligible populations return explicitly documented conventional zero. This is not the hypothetical Article196(a) capital calculation; its2027 object-selection requirements need separate qualification.
manmade_concentration_loss( exposures, peril, qualification_reference, context, ... )manmade_concentration_loss( exposures, peril, qualification_reference, context, ... )
exposures |
Exposures. Reference type: |
peril |
Peril. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("concentration-2027-empty") result <- do.call(manmade_concentration_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("concentration-2027-empty") result <- do.call(manmade_concentration_loss, c(case$kwargs, list(context = context))) result$value
Keys identify externally qualified stress currencies/groups; all monetary inputs are already in context currency. This function neither values instruments nor certifies completeness. The selected profile supplies its own matrices, including the2027 interest/spread B coefficient.
market_risk_from_interest_scenarios( other_components, gross_by_currency, net_by_currency, valuation_reference, tie_break = NULL, context, ... )market_risk_from_interest_scenarios( other_components, gross_by_currency, net_by_currency, valuation_reference, tie_break = NULL, context, ... )
other_components |
Other components. Reference type: |
gross_by_currency |
Gross by currency. Reference type: |
net_by_currency |
Net by currency. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("market-zero") result <- do.call(market_risk_from_interest_scenarios, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("market-zero") result <- do.call(market_risk_from_interest_scenarios, c(case$kwargs, list(context = context))) result$value
Use actual modified duration here, not the floor used to determine the separately supplied asset shock. The last paragraph overrides CQS3 for qualified infrastructure investments and infrastructure corporate assets.
matching_fundamental_spread_increase( asset_stress, modified_duration, category, qualification_reference, credit_quality_step = NULL, context, ... )matching_fundamental_spread_increase( asset_stress, modified_duration, category, qualification_reference, credit_quality_step = NULL, context, ... )
asset_stress |
Asset stress. Reference type: |
modified_duration |
Modified duration. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: annual_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-matching-spread-increase-7") result <- do.call(matching_fundamental_spread_increase, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-matching-spread-increase-7") result <- do.call(matching_fundamental_spread_increase, c(case$kwargs, list(context = context))) result$value
The half-floor is not a half-SCR or half-MCR multiplier. Pass it as the absolute floor into the ordinary branch-activity MCR calculation. Deposit, asset location, authorisation and Article167 relief remain separate.
mcr_absolute_floor( undertaking_type, covers_nonlife_classes_10_to_15 = NULL, context, third_country_branch = FALSE, qualification_reference = NULL, mixed_premiums = NULL, ... )mcr_absolute_floor( undertaking_type, covers_nonlife_classes_10_to_15 = NULL, context, third_country_branch = FALSE, qualification_reference = NULL, mixed_premiums = NULL, ... )
undertaking_type |
Undertaking type. Reference type: |
covers_nonlife_classes_10_to_15 |
Covers nonlife classes 10 to 15. Reference type: |
context |
Explicit |
third_country_branch |
Third country branch. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
mixed_premiums |
Mixed premiums. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-amcr-life") result <- do.call(mcr_absolute_floor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-amcr-life") result <- do.call(mcr_absolute_floor, c(case$kwargs, list(context = context))) result$value
Article251 contract-level floors; external benefit/BE qualification unchanged.
mcr_capital_at_risk(contracts, qualification_reference, context, ...)mcr_capital_at_risk(contracts, qualification_reference, context, ...)
contracts |
Contracts. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-car-baseline-empty") result <- do.call(mcr_capital_at_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-car-baseline-empty") result <- do.call(mcr_capital_at_risk, c(case$kwargs, list(context = context))) result$value
Combined MCR including an explicitly supplied applicable absolute floor.
mcr_combined(linear, scr, absolute_floor, context, ...)mcr_combined(linear, scr, absolute_floor, context, ...)
linear |
Linear. Reference type: |
scr |
Scr. Reference type: |
absolute_floor |
Absolute floor. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-combined-floor") result <- do.call(mcr_combined, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-combined-floor") result <- do.call(mcr_combined, c(case$kwargs, list(context = context))) result$value
Linear life MCR; no premature floor on the signed linear total.
mcr_life(components, context, ...)mcr_life(components, context, ...)
components |
Components. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-life-guaranteed") result <- do.call(mcr_life, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-life-guaranteed") result <- do.call(mcr_life, c(case$kwargs, list(context = context))) result$value
Add the separately determined Art.250/251 parts; life may be signed.
mcr_linear(nonlife, life, context, ...)mcr_linear(nonlife, life, context, ...)
nonlife |
Nonlife. Reference type: |
life |
Life. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-linear-zero") result <- do.call(mcr_linear, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-linear-zero") result <- do.call(mcr_linear, c(case$kwargs, list(context = context))) result$value
Linear nonlife/health MCR using all 16 annex-XIX segments, including explicit zeros.
mcr_nonlife(segments, context, ...)mcr_nonlife(segments, context, ...)
segments |
Segments. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-tp-1") result <- do.call(mcr_nonlife, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-tp-1") result <- do.call(mcr_nonlife, c(case$kwargs, list(context = context))) result$value
Preserve the printed min(max(...),...) ordering even for signed inputs. The applicable absolute floor and activity delimitation remain external. This is not a total-company MCR or an automatic Article253 decision.
mcr_notional_requirement( linear, notional_scr, capital_addon, absolute_floor, qualification_reference, context, ... )mcr_notional_requirement( linear, notional_scr, capital_addon, absolute_floor, qualification_reference, context, ... )
linear |
Linear. Reference type: |
notional_scr |
Notional scr. Reference type: |
capital_addon |
Capital addon. Reference type: |
absolute_floor |
Absolute floor. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-notional-low") result <- do.call(mcr_notional_requirement, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mcr-notional-low") result <- do.call(mcr_notional_requirement, c(case$kwargs, list(context = context))) result$value
Signed linear components are not silently floored. A zero denominator has no specified allocation here and requires review. Supervisory add-ons are allocated separately by the supervisor, not by this ratio.
mcr_notional_scr( nonlife_linear, life_linear, scr_excluding_addon, activity, qualification_reference, context, ... )mcr_notional_scr( nonlife_linear, life_linear, scr_excluding_addon, activity, qualification_reference, context, ... )
nonlife_linear |
Nonlife linear. Reference type: |
life_linear |
Life linear. Reference type: |
scr_excluding_addon |
Scr excluding addon. Reference type: |
activity |
Activity. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-notional-life") result <- do.call(mcr_notional_scr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mcr-2027-notional-life") result <- do.call(mcr_notional_scr, c(case$kwargs, list(context = context))) result$value
Check declared method conditions and two external SCR floors, not raise SCR.
model_va_scr_floor_2027( model_scr, standard_va_scr, own_portfolio_va_scr, permitted_by_member_state, excludes_company_adjustment, excludes_macro_va, qualification_reference, context, ... )model_va_scr_floor_2027( model_scr, standard_va_scr, own_portfolio_va_scr, permitted_by_member_state, excludes_company_adjustment, excludes_macro_va, qualification_reference, context, ... )
model_scr |
Model scr. Reference type: |
standard_va_scr |
Standard va scr. Reference type: |
own_portfolio_va_scr |
Own portfolio va scr. Reference type: |
permitted_by_member_state |
Permitted by member state. Reference type: |
excludes_company_adjustment |
Excludes company adjustment. Reference type: |
excludes_macro_va |
Excludes macro va. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("model-va-future-equal") result <- do.call(model_va_scr_floor_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("model-va-future-equal") result <- do.call(model_va_scr_floor_2027, c(case$kwargs, list(context = context))) result$value
Debt is explicitly EUR and includes overdue/connected-party/group creditor amounts. Context.currency causes no implicit FX conversion. A <=3-year age does not waive more frequent monitoring under material market changes. The future CRR alternative is an external qualification, not a CRR calculator.
mortgage_type2_eligibility_screen( conditions, total_debt_eur, years_since_value_monitoring, repayment_route, qualification_reference, context, ... )mortgage_type2_eligibility_screen( conditions, total_debt_eur, years_since_value_monitoring, repayment_route, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
total_debt_eur |
Total debt eur. Reference type: |
years_since_value_monitoring |
Years since value monitoring. Reference type: |
repayment_route |
Repayment route. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mortgage-eligibility-future-crr124-zero") result <- do.call(mortgage_type2_eligibility_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mortgage-eligibility-future-crr124-zero") result <- do.call(mortgage_type2_eligibility_screen, c(case$kwargs, list(context = context))) result$value
Externally choose total, absent-total property/personal, or per-victim basis.
motor_assumed_limit(amounts, basis, qualification_reference, context, ...)motor_assumed_limit(amounts, basis, qualification_reference, context, ...)
amounts |
Amounts. Reference type: |
basis |
Basis. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("motor-count-2027-total-limit") result <- do.call(motor_assumed_limit, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("motor-count-2027-total-limit") result <- do.call(motor_assumed_limit, c(case$kwargs, list(context = context))) result$value
Counts are already proportionally weighted. Whether this submodule applies to the undertaking is external; this API does not invent a zero-book waiver.
motor_cat_loss(high_count, low_count, qualification_reference, context, ...)motor_cat_loss(high_count, low_count, qualification_reference, context, ...)
high_count |
High count. Reference type: |
low_count |
Low count. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("motor-floor") result <- do.call(motor_cat_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("motor-floor") result <- do.call(motor_cat_loss, c(case$kwargs, list(context = context))) result$value
Vehicle counts are whole numbers before weighting; the resulting count can be fractional. Each group must have a single assumed coverage limit/share.
motor_vehicle_count(vehicles, category, qualification_reference, context, ...)motor_vehicle_count(vehicles, category, qualification_reference, context, ...)
vehicles |
Vehicles. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: count.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("motor-count-2027-empty") result <- do.call(motor_vehicle_count, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("motor-count-2027-empty") result <- do.call(motor_vehicle_count, c(case$kwargs, list(context = context))) result$value
Article126 independence, no new mitigation between events, and realistic existing reinstatements must be reflected in external sequence valuation.
natural_cat_event_loss( prescribed_loss, peril, scenario, event, qualification_reference, context, ... )natural_cat_event_loss( prescribed_loss, peril, scenario, event, qualification_reference, context, ... )
prescribed_loss |
Prescribed loss. Reference type: |
peril |
Peril. Reference type: |
scenario |
Scenario. Reference type: |
event |
Event. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-event-hail-0") result <- do.call(natural_cat_event_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-event-hail-0") result <- do.call(natural_cat_event_loss, c(case$kwargs, list(context = context))) result$value
Classify LOB7/19 property, LOB6/18 onshore property and LOB5/17 motor externally. Subsidence covers eligible residential property; its region scope is France historically, Annex VIIIA regions in the 2027 profile.
natural_cat_insured_sum( peril, components, qualification_reference, context, ... )natural_cat_insured_sum( peril, components, qualification_reference, context, ... )
peril |
Peril. Reference type: |
components |
Components. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-si-subsidence") result <- do.call(natural_cat_insured_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-si-subsidence") result <- do.call(natural_cat_insured_sum, c(case$kwargs, list(context = context))) result$value
All amounts must use the externally qualified peril, gross-premium basis, period, currency/unit and risk-location classification. These region IDs are AnnexIII macroregions, not NatCat risk-zone IDs. No reserve amounts, premium/reserve segment exceptions, USP override or implicit default enter this CAT-only calculation. Zero total is undefined, not an assumed one.
natural_cat_other_diversification( peril, regional_premiums, qualification_reference, context, ... )natural_cat_other_diversification( peril, regional_premiums, qualification_reference, context, ... )
peril |
Peril. Reference type: |
regional_premiums |
Regional premiums. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("natural-cat-div-baseline-hail-all-equal") result <- do.call(natural_cat_other_diversification, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("natural-cat-div-baseline-hail-all-equal") result <- do.call(natural_cat_other_diversification, c(case$kwargs, list(context = context))) result$value
DIV uses the prescribed premium basis for AnnexIII regions5–18, not generic premium/reserve volumes. Geographic membership is not inferred here.
natural_cat_other_loss( peril, gross_premium, diversification, qualification_reference, context, ... )natural_cat_other_loss( peril, gross_premium, diversification, qualification_reference, context, ... )
peril |
Peril. Reference type: |
gross_premium |
Gross premium. Reference type: |
diversification |
Diversification. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-other-hail") result <- do.call(natural_cat_other_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-other-hail") result <- do.call(natural_cat_other_loss, c(case$kwargs, list(context = context))) result$value
Maximum of externally valued A/B sequence capital, not sum of event losses.
natural_cat_scenario_risk( peril, scenario_charges, qualification_reference, context, ... )natural_cat_scenario_risk( peril, scenario_charges, qualification_reference, context, ... )
peril |
Peril. Reference type: |
scenario_charges |
Scenario charges. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-selection-hail") result <- do.call(natural_cat_scenario_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-selection-hail") result <- do.call(natural_cat_scenario_risk, c(case$kwargs, list(context = context))) result$value
Optional externally justified lower WSI, never a reinsurance-net amount.
natural_cat_weighted_cap( weighted_sum, peril, use_alternative, potential_gross_loss = NULL, qualification_reference, context, ... )natural_cat_weighted_cap( weighted_sum, peril, use_alternative, potential_gross_loss = NULL, qualification_reference, context, ... )
weighted_sum |
Weighted sum. Reference type: |
peril |
Peril. Reference type: |
use_alternative |
Use alternative. Reference type: |
potential_gross_loss |
Potential gross loss. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-primary-hail") result <- do.call(natural_cat_weighted_cap, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-natural-primary-hail") result <- do.call(natural_cat_weighted_cap, c(case$kwargs, list(context = context))) result$value
A declared low-risk supervisory exception applies ONLY to size condition c, never to all governance/ORSA/liquidity or actual approval requirements. The existing327f prudent-deterministic screen is separate and unchanged.
non_snc_proportionality_size_screen_2027( measure, undertaking_type, life_gross_tp, total_gross_tp, nonlife_gwp, total_gwp, market_shares, size_exception_confirmed, exception_reference = NULL, qualification_reference, context, ... )non_snc_proportionality_size_screen_2027( measure, undertaking_type, life_gross_tp, total_gross_tp, nonlife_gwp, total_gwp, market_shares, size_exception_confirmed, exception_reference = NULL, qualification_reference, context, ... )
measure |
Measure. Reference type: |
undertaking_type |
Undertaking type. Reference type: |
life_gross_tp |
Life gross tp. Reference type: |
total_gross_tp |
Total gross tp. Reference type: |
nonlife_gwp |
Nonlife gwp. Reference type: |
total_gwp |
Total gwp. Reference type: |
market_shares |
Market shares. Reference type: |
size_exception_confirmed |
Size exception confirmed. Reference type: |
exception_reference |
Exception reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-non-snc-rsr") result <- do.call(non_snc_proportionality_size_screen_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-non-snc-rsr") result <- do.call(non_snc_proportionality_size_screen_2027, c(case$kwargs, list(context = context))) result$value
Contract group, distinct tranche and source-defined nominal net valuation remain externally qualified. This is not discounted claims capital or an automatic aggregation of several overlapping covers.
nonlife_adc_recovery_2027( segment, nominal_net_best_estimate, attachment_point, cover_size, qualification_reference, context, ... )nonlife_adc_recovery_2027( segment, nominal_net_best_estimate, attachment_point, cover_size, qualification_reference, context, ... )
segment |
Segment. Reference type: |
nominal_net_best_estimate |
Nominal net best estimate. Reference type: |
attachment_point |
Attachment point. Reference type: |
cover_size |
Cover size. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-adc-recovery-cover-cap") result <- do.call(nonlife_adc_recovery_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-adc-recovery-cover-cap") result <- do.call(nonlife_adc_recovery_2027, c(case$kwargs, list(context = context))) result$value
Recovery is before cession; supplied additional premium is floored at zero exactly once. No eligibility approval is inferred from the reference string.
nonlife_adc_reserve_factor_2027( segment, nominal_net_best_estimate, recovery, cession_share, additional_premium, qualification_reference, context, ... )nonlife_adc_reserve_factor_2027( segment, nominal_net_best_estimate, recovery, cession_share, additional_premium, qualification_reference, context, ... )
segment |
Segment. Reference type: |
nominal_net_best_estimate |
Nominal net best estimate. Reference type: |
recovery |
Recovery. Reference type: |
cession_share |
Cession share. Reference type: |
additional_premium |
Additional premium. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-adc-factor-no-upper-cap") result <- do.call(nonlife_adc_reserve_factor_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-adc-factor-no-upper-cap") result <- do.call(nonlife_adc_reserve_factor_2027, c(case$kwargs, list(context = context))) result$value
Article90a permits contract-group selection for118(1)(a) only with88 and 35(a-c) grouping qualification. The external reference must evidence this if used; it does not change the event share or remove joint valuation.
nonlife_lapse_factor(category, qualification_reference, context, ...)nonlife_lapse_factor(category, qualification_reference, context, ...)
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-lapse-termination") result <- do.call(nonlife_lapse_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("nonlife-2027-lapse-termination") result <- do.call(nonlife_lapse_factor, c(case$kwargs, list(context = context))) result$value
Net claims BE; eligible recoverables must exclude208(2) finite/similar RI.
nonlife_reserve_volume( claims_best_estimate, eligible_recoverables, context, ... )nonlife_reserve_volume( claims_best_estimate, eligible_recoverables, context, ... )
claims_best_estimate |
Claims best estimate. Reference type: |
eligible_recoverables |
Eligible recoverables. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("nl-reserve-zero") result <- do.call(nonlife_reserve_volume, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("nl-reserve-zero") result <- do.call(nonlife_reserve_volume, c(case$kwargs, list(context = context))) result$value
Exclude nonproportional obligations relating to LOB9/21. DIV is based on earned premiums, not the premium/reserve volume measure. Qualification and DIV derivation remain external; the reference is not regulatory approval.
nonprop_property_cat_loss( gross_premium, diversification, qualification_reference, context, ... )nonprop_property_cat_loss( gross_premium, diversification, qualification_reference, context, ... )
gross_premium |
Gross premium. Reference type: |
diversification |
Diversification. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("cat-premium-2027-property-zero") result <- do.call(nonprop_property_cat_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("cat-premium-2027-property-zero") result <- do.call(nonprop_property_cat_loss, c(case$kwargs, list(context = context))) result$value
Load an explicit analyst-override batch
numeric_overrides_from_dict(payload) load_numeric_overrides_json(path)numeric_overrides_from_dict(payload) load_numeric_overrides_json(path)
payload |
Named list with |
path |
Local UTF-8 JSON file; URLs are rejected. |
Paths retain zero-based JSON array indices. Parsing does not change installed data; the selected context validates parameter applicability.
A list of NumericOverride() entries for Context().
numeric_overrides_from_dict(list(schema_version = 1L, overrides = list()))numeric_overrides_from_dict(list(schema_version = 1L, overrides = list()))
A traceable numeric analyst override
NumericOverride(resource, path, value, reason)NumericOverride(resource, path, value, reason)
resource |
Logical resource name, for example |
path |
List of JSON keys and zero-based integer array indices. |
value |
Finite numeric replacement. |
reason |
Nonempty explanation recorded with the result. |
Symmetric matrix entries are mirrored; supply only one side. Overrides never remove applicability or unsupported-source guards.
A NumericOverride list, to include in Context()'s overrides.
change <- NumericOverride("profile.json", list("scalars", "intangible", "value"), 0.7, "Synthetic sensitivity") context <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1", overrides = list(change)) intangible_risk(100, context = context)$valuechange <- NumericOverride("profile.json", list("scalars", "intangible", "value"), 0.7, "Synthetic sensitivity") context <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1", overrides = list(change)) intangible_risk(100, context = context)$value
A terminated policy can retain claims obligations. The supplied status must concern the specific obligation assessed, and remains externally unverified.
obligation_derecognition_condition( obligation_status, evidence_reference, context, ... )obligation_derecognition_condition( obligation_status, evidence_reference, context, ... )
obligation_status |
Obligation status. Reference type: |
evidence_reference |
Evidence reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("derecognition-baseline-active") result <- do.call(obligation_derecognition_condition, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("derecognition-baseline-active") result <- do.call(obligation_derecognition_condition, c(case$kwargs, list(context = context))) result$value
Gross premium/provision calculation; provisions exclude the risk margin.
operational_risk( bscr, earned_life, earned_life_ul, earned_nonlife, previous_life, previous_life_ul, previous_nonlife, tp_life, tp_life_ul, tp_nonlife, expenses_ul, context, ... )operational_risk( bscr, earned_life, earned_life_ul, earned_nonlife, previous_life, previous_life_ul, previous_nonlife, tp_life, tp_life_ul, tp_nonlife, expenses_ul, context, ... )
bscr |
Bscr. Reference type: |
earned_life |
Earned life. Reference type: |
earned_life_ul |
Earned life ul. Reference type: |
earned_nonlife |
Earned nonlife. Reference type: |
previous_life |
Previous life. Reference type: |
previous_life_ul |
Previous life ul. Reference type: |
previous_nonlife |
Previous nonlife. Reference type: |
tp_life |
Tp life. Reference type: |
tp_life_ul |
Tp life ul. Reference type: |
tp_nonlife |
Tp nonlife. Reference type: |
expenses_ul |
Expenses ul. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-op-zero") result <- do.call(operational_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("capital-2027-op-zero") result <- do.call(operational_risk, c(case$kwargs, list(context = context))) result$value
Group-level analysis is not an automatic exemption: the supervisor must consider it under paragraph9. Approval/request/classification are external.
orsa_additional_macro_analysis_required_2027( reasoned_supervisory_request, small_non_complex, prior_article29d_approval, qualification_reference, context, ... )orsa_additional_macro_analysis_required_2027( reasoned_supervisory_request, small_non_complex, prior_article29d_approval, qualification_reference, context, ... )
reasoned_supervisory_request |
Reasoned supervisory request. Reference type: |
small_non_complex |
Small non complex. Reference type: |
prior_article29d_approval |
Prior article29d approval. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-macro-true-true-true") result <- do.call(orsa_additional_macro_analysis_required_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-macro-true-true-true") result <- do.call(orsa_additional_macro_analysis_required_2027, c(case$kwargs, list(context = context))) result$value
Permitted insureds/beneficiaries are group legal persons or natural persons eligible under group insurance contracts. Their TP share must be STRICTLY below5%. Qualification of persons/contracts and TP allocation is external.
orsa_biennial_captive_conditions_2027( is_captive, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, qualification_reference, context, ... )orsa_biennial_captive_conditions_2027( is_captive, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, qualification_reference, context, ... )
is_captive |
Is captive. Reference type: |
permitted_policyholders |
Permitted policyholders. Reference type: |
natural_person_tp_share |
Natural person tp share. Reference type: |
no_compulsory_liability |
No compulsory liability. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-frequency-captive-boundary") result <- do.call(orsa_biennial_captive_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-frequency-captive-boundary") result <- do.call(orsa_biennial_captive_conditions_2027, c(case$kwargs, list(context = context))) result$value
Zero exempts no undertaking from the paragraph1 materiality assessment. This is a requirement selector, not a finding that scenarios exist.
orsa_climate_scenario_requirement_2027( material_climate_risk, small_non_complex, qualification_reference, context, ... )orsa_climate_scenario_requirement_2027( material_climate_risk, small_non_complex, qualification_reference, context, ... )
material_climate_risk |
Material climate risk. Reference type: |
small_non_complex |
Small non complex. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: count.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-climate-required-true-true") result <- do.call(orsa_climate_scenario_requirement_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-climate-required-true-true") result <- do.call(orsa_climate_scenario_requirement_2027, c(case$kwargs, list(context = context))) result$value
'Significantly above' has no invented numeric cutoff: both >2 degrees and an explicit external qualification are required. Additional scenarios can remain in the external assessment; this input describes the two roles. Intervals are declared years, not dates or an automatic scheduling service.
orsa_climate_scenario_structure_2027( scenarios, impact_analysis_interval_years, scenario_review_interval_years, assessment_reference, context, ... )orsa_climate_scenario_structure_2027( scenarios, impact_analysis_interval_years, scenario_review_interval_years, assessment_reference, context, ... )
scenarios |
Scenarios. Reference type: |
impact_analysis_interval_years |
Impact analysis interval years. Reference type: |
scenario_review_interval_years |
Scenario review interval years. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-climate-low-boundary") result <- do.call(orsa_climate_scenario_structure_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-climate-low-boundary") result <- do.call(orsa_climate_scenario_structure_2027, c(case$kwargs, list(context = context))) result$value
The phase-in flag means a comparison remains required after externally qualified currency exemptions. Its false value is not inferred from missing data. Comparability evidence is technical traceability, not a prescribed projection method or an isolated-scenario requirement.
orsa_conditional_evidence_check( adjustments, uses_internal_model, evidence, qualification_reference, assessment_reference, context, ... )orsa_conditional_evidence_check( adjustments, uses_internal_model, evidence, qualification_reference, assessment_reference, context, ... )
adjustments |
Adjustments. Reference type: |
uses_internal_model |
Uses internal model. Reference type: |
evidence |
Evidence. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-conditional-baseline-ma-missing") result <- do.call(orsa_conditional_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-conditional-baseline-ma-missing") result <- do.call(orsa_conditional_evidence_check, c(case$kwargs, list(context = context))) result$value
AVAILABLE means the caller supplies a reference; content is not inspected. A value of1 certifies neither ORSA completeness nor a capital requirement. Conditional comparisons, timing, recalibration and climate scenarios remain separate. The 2027 table adds mandatory macro/liquidity/materiality topics.
orsa_core_evidence_check(evidence, assessment_reference, context, ...)orsa_core_evidence_check(evidence, assessment_reference, context, ...)
evidence |
Evidence. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-evidence-baseline-empty") result <- do.call(orsa_core_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-evidence-baseline-empty") result <- do.call(orsa_core_evidence_check, c(case$kwargs, list(context = context))) result$value
Group/entity applicability and conditional needs are externally qualified. Incompatible scope flags are rejected. The future table explicitly excludes archived blanket annual frequency. Future frequency and expanded group scope are handled by separate APIs, not approved by this inventory.
orsa_guidance_evidence_check( evidence, conditions, qualification_reference, assessment_reference, context, ... )orsa_guidance_evidence_check( evidence, conditions, qualification_reference, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-guidance-future-ordinary-empty") result <- do.call(orsa_guidance_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-guidance-future-ordinary-empty") result <- do.call(orsa_guidance_evidence_check, c(case$kwargs, list(context = context))) result$value
The reference must cover classifications AND supervisory directions. None declares no additional shorter supervisory interval, not ignorance. No calendar deadline, timely completion or supervisory approval is inferred. A separate29d/327e non-SNC approval can enable the reduced maximum; classification remains false and the approval is not inferred from size.
orsa_max_assessment_interval_2027( small_non_complex, qualifying_captive, supervisory_interval_years = NULL, non_snc_approval_reference = NULL, qualification_reference, context, ... )orsa_max_assessment_interval_2027( small_non_complex, qualifying_captive, supervisory_interval_years = NULL, non_snc_approval_reference = NULL, qualification_reference, context, ... )
small_non_complex |
Small non complex. Reference type: |
qualifying_captive |
Qualifying captive. Reference type: |
supervisory_interval_years |
Supervisory interval years. Reference type: |
non_snc_approval_reference |
Non snc approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: years.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-frequency-interval-true-true") result <- do.call(orsa_max_assessment_interval_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-frequency-interval-true-true") result <- do.call(orsa_max_assessment_interval_2027, c(case$kwargs, list(context = context))) result$value
Both denominators are ALL future cashflows. Do not substitute cashflows in this currency for the denominator of the extrapolated-share test. Signed raw cashflows need externally qualified aggregation, not abs/netting guessed by the engine. No exemption for MA, VA or other transition tests.
orsa_phase_in_currency_exemption_2027( currency_cashflows, extrapolated_currency_cashflows, total_cashflows, qualification_reference, context, ... )orsa_phase_in_currency_exemption_2027( currency_cashflows, extrapolated_currency_cashflows, total_cashflows, qualification_reference, context, ... )
currency_cashflows |
Currency cashflows. Reference type: |
extrapolated_currency_cashflows |
Extrapolated currency cashflows. Reference type: |
total_cashflows |
Total cashflows. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-phase-in-five") result <- do.call(orsa_phase_in_currency_exemption_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("orsa-phase-in-five") result <- do.call(orsa_phase_in_currency_exemption_2027, c(case$kwargs, list(context = context))) result$value
Quantification of non-reflected risks is conditional on externally assessed significance. Future electronic form also requires machine readability and searchable text/figures. No format inspection, filing or deadline approval.
orsa_report_evidence_check( evidence, significant_uncovered_risk_deviation, qualification_reference, assessment_reference, context, ... )orsa_report_evidence_check( evidence, significant_uncovered_risk_deviation, qualification_reference, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
significant_uncovered_risk_deviation |
Significant uncovered risk deviation. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-report-baseline-submission-missing") result <- do.call(orsa_report_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("orsa-report-baseline-submission-missing") result <- do.call(orsa_report_evidence_check, c(case$kwargs, list(context = context))) result$value
Classify obligations and exclusions externally, including the conditional extended-warranty exclusion in group3. Groups1/2 combine before squaring.
other_nonlife_cat_loss(group_premiums, classification_reference, context, ...)other_nonlife_cat_loss(group_premiums, classification_reference, context, ...)
group_premiums |
Group premiums. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("cat-premium-2027-joint") result <- do.call(other_nonlife_cat_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("cat-premium-2027-joint") result <- do.call(other_nonlife_cat_loss, c(case$kwargs, list(context = context))) result$value
Excess must still include own shares; using an already adjusted surplus here would double-deduct them. This is not eligible own funds or Tier1.
own_funds_basic_before_adjustments( excess_assets_over_liabilities, subordinated_liabilities, own_shares, qualification_reference, context, ... )own_funds_basic_before_adjustments( excess_assets_over_liabilities, subordinated_liabilities, own_shares, qualification_reference, context, ... )
excess_assets_over_liabilities |
Excess assets over liabilities. Reference type: |
subordinated_liabilities |
Subordinated liabilities. Reference type: |
own_shares |
Own shares. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-of-basic-zero") result <- do.call(own_funds_basic_before_adjustments, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-of-basic-zero") result <- do.call(own_funds_basic_before_adjustments, c(case$kwargs, list(context = context))) result$value
References identify the applicable instrument/subparagraph, justified non-applicability and any approved exception. Periods describe those routes; they are not unconditional maturity tests or permission to repay. Tier1 quality in excess of its cap may follow73(1)(j), not ordinary Tier2 terms. Values for subsequent allocation remain independently qualified inputs.
own_funds_classification_evidence_check( evidence, tier, own_funds_kind, unlisted, assessment_reference, context, ... )own_funds_classification_evidence_check( evidence, tier, own_funds_kind, unlisted, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
tier |
Tier. Reference type: |
own_funds_kind |
Own funds kind. Reference type: |
unlisted |
Unlisted. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-class-close-baseline-basic-tier1-listed-missing") result <- do.call(own_funds_classification_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-class-close-baseline-basic-tier1-listed-missing") result <- do.call(own_funds_classification_evidence_check, c(case$kwargs, list(context = context))) result$value
Select a qualified annual payout amount, in the context reporting currency.
own_funds_distribution_policy_amount( policy_usable, qualification_reference, context, policy_lower = NULL, policy_upper = NULL, historical_values = NULL, public_announcements = NULL, ... )own_funds_distribution_policy_amount( policy_usable, qualification_reference, context, policy_lower = NULL, policy_upper = NULL, historical_values = NULL, public_announcements = NULL, ... )
policy_usable |
Policy usable. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
policy_lower |
Policy lower. Reference type: |
policy_upper |
Policy upper. Reference type: |
historical_values |
Historical values. Reference type: |
public_announcements |
Public announcements. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-amount-policy") result <- do.call(own_funds_distribution_policy_amount, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-amount-policy") result <- do.call(own_funds_distribution_policy_amount, c(case$kwargs, list(context = context))) result$value
Select a qualified payout ratio; no invented cap at 100 percent.
own_funds_distribution_policy_ratio( policy_usable, qualification_reference, context, policy_lower = NULL, policy_upper = NULL, historical_values = NULL, public_announcements = NULL, ... )own_funds_distribution_policy_ratio( policy_usable, qualification_reference, context, policy_lower = NULL, policy_upper = NULL, historical_values = NULL, public_announcements = NULL, ... )
policy_usable |
Policy usable. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
policy_lower |
Policy lower. Reference type: |
policy_upper |
Policy upper. Reference type: |
historical_values |
Historical values. Reference type: |
public_announcements |
Public announcements. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-ratio-policy-3") result <- do.call(own_funds_distribution_policy_ratio, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-ratio-policy-3") result <- do.call(own_funds_distribution_policy_ratio, c(case$kwargs, list(context = context))) result$value
Both input valuations exclude risk margin. No transfer of the premium-only grouping clause to fees, and no automatic addition of fee profit to EPIFP.
own_funds_expected_future_fee_profit_2027( with_future_fees, without_future_fees, qualification_reference, context, ... )own_funds_expected_future_fee_profit_2027( with_future_fees, without_future_fees, qualification_reference, context, ... )
with_future_fees |
With future fees. Reference type: |
without_future_fees |
Without future fees. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-profit-future-fee-zero") result <- do.call(own_funds_expected_future_fee_profit_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-profit-future-fee-zero") result <- do.call(own_funds_expected_future_fee_profit_2027, c(case$kwargs, list(context = context))) result$value
All available amounts precede Article68 deductions. The deduction amounts already reflect version-specific exemption/approval decisions. This does not classify instruments, grant exemptions or calculate eligible own funds.
own_funds_financial_deduction_tier( tier, available, deductions, qualification_reference, context, ... )own_funds_financial_deduction_tier( tier, available, deductions, qualification_reference, context, ... )
tier |
Tier. Reference type: |
available |
Available. Reference type: |
deductions |
Deductions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-financial-tier-base-7-tier2") result <- do.call(own_funds_financial_deduction_tier, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-financial-tier-base-7-tier2") result <- do.call(own_funds_financial_deduction_tier, c(case$kwargs, list(context = context))) result$value
Unknown necessary facts block the decision. A proved alternative can settle an OR without inventing facts. The 2027 branch separately requires declared actual supervisory permission; evidence remains externally qualified.
own_funds_financial_exemption_screen( facts, qualification_reference, context, approval_reference = NULL, ... )own_funds_financial_exemption_screen( facts, qualification_reference, context, approval_reference = NULL, ... )
facts |
Facts. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
approval_reference |
Approval reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-exemption-base-unknown-alternative") result <- do.call(own_funds_financial_exemption_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-exemption-base-unknown-alternative") result <- do.call(own_funds_financial_exemption_screen, c(case$kwargs, list(context = context))) result$value
Each input is a complete participation, not an arbitrary instrument slice. Article68(3) exemptions and direct/indirect ownership are qualified before calling. SRC-0135 Guideline5 / SRC-0067 paragraph26 require the basis BEFORE Article68 deductions; exemptions are not inherited across versions. Deduction amounts here are not yet allocated to own-funds tiers.
own_funds_financial_participation_deduction( participations, threshold_basis, qualification_reference, context, ... )own_funds_financial_participation_deduction( participations, threshold_basis, qualification_reference, context, ... )
participations |
Participations. Reference type: |
threshold_basis |
Threshold basis. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-financial-zero-basis") result <- do.call(own_funds_financial_participation_deduction, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-financial-zero-basis") result <- do.call(own_funds_financial_participation_deduction, c(case$kwargs, list(context = context))) result$value
Formal decisions/proposals, accounting profit and fiscal-year fraction are qualified externally. No internal profit model or day-count is invented. Fees under Article70(1)(b) are separate, not calculated by this function.
own_funds_foreseeable_distributions_2027( method, qualification_reference, context, formal_amount = NULL, prior_year_distributions = NULL, payout_ratio = NULL, cumulative_interim_profit = NULL, estimated_annual_distribution = NULL, elapsed_year_fraction = NULL, ... )own_funds_foreseeable_distributions_2027( method, qualification_reference, context, formal_amount = NULL, prior_year_distributions = NULL, payout_ratio = NULL, cumulative_interim_profit = NULL, estimated_annual_distribution = NULL, elapsed_year_fraction = NULL, ... )
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
formal_amount |
Formal amount. Reference type: |
prior_year_distributions |
Prior year distributions. Reference type: |
payout_ratio |
Payout ratio. Reference type: |
cumulative_interim_profit |
Cumulative interim profit. Reference type: |
estimated_annual_distribution |
Estimated annual distribution. Reference type: |
elapsed_year_fraction |
Elapsed year fraction. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-foreseeable-formal0") result <- do.call(own_funds_foreseeable_distributions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("distribution-foreseeable-formal0") result <- do.call(own_funds_foreseeable_distributions_2027, c(case$kwargs, list(context = context))) result$value
Validate one proposed full MCR-covering allocation of basic own funds.
own_funds_mcr_allocation( mcr, basic_tier1, restricted_tier1, basic_tier2, context, ... )own_funds_mcr_allocation( mcr, basic_tier1, restricted_tier1, basic_tier2, context, ... )
mcr |
Mcr. Reference type: |
basic_tier1 |
Basic tier1. Reference type: |
restricted_tier1 |
Restricted tier1. Reference type: |
basic_tier2 |
Basic tier2. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("of-2027-mcr-limits") result <- do.call(own_funds_mcr_allocation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("of-2027-mcr-limits") result <- do.call(own_funds_mcr_allocation, c(case$kwargs, list(context = context))) result$value
Future-premium expected profit is already in the supplied surplus, not an extra addition. A signed reserve is preserved; no Tier1 eligibility is inferred from this arithmetic. All deduction categories must be supplied.
own_funds_reconciliation_reserve( excess_assets_over_liabilities, deductions, qualification_reference, context, ... )own_funds_reconciliation_reserve( excess_assets_over_liabilities, deductions, qualification_reference, context, ... )
excess_assets_over_liabilities |
Excess assets over liabilities. Reference type: |
deductions |
Deductions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-reserve-negative-excess") result <- do.call(own_funds_reconciliation_reserve, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-reserve-negative-excess") result <- do.call(own_funds_reconciliation_reserve, c(case$kwargs, list(context = context))) result$value
Restricted funds already exclude future shareholder transfers. Materiality, portfolio classification and notional SCR are externally qualified; no internal model or arbitrary materiality threshold is supplied here.
own_funds_restricted_deduction( restricted_own_funds, portfolio_kind, immaterial_simplification, notional_scr = NULL, qualification_reference, context, ... )own_funds_restricted_deduction( restricted_own_funds, portfolio_kind, immaterial_simplification, notional_scr = NULL, qualification_reference, context, ... )
restricted_own_funds |
Restricted own funds. Reference type: |
portfolio_kind |
Portfolio kind. Reference type: |
immaterial_simplification |
Immaterial simplification. Reference type: |
notional_scr |
Notional scr. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("of-2027-restricted-immaterial") result <- do.call(own_funds_restricted_deduction, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("of-2027-restricted-immaterial") result <- do.call(own_funds_restricted_deduction, c(case$kwargs, list(context = context))) result$value
Validate one proposed full SCR-covering allocation of preclassified tiers.
own_funds_scr_allocation( scr, tier1, restricted_tier1, tier2, tier3, context, ... )own_funds_scr_allocation( scr, tier1, restricted_tier1, tier2, tier3, context, ... )
scr |
Scr. Reference type: |
tier1 |
Tier1. Reference type: |
restricted_tier1 |
Restricted tier1. Reference type: |
tier2 |
Tier2. Reference type: |
tier3 |
Tier3. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-scr-exact-half") result <- do.call(own_funds_scr_allocation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("of-scr-exact-half") result <- do.call(own_funds_scr_allocation, c(case$kwargs, list(context = context))) result$value
Decimal rate units:100bp=.01. The original-to-stepped-index swap spread is subtracted in BOTH branches; a negative limit is retained, never floored.
own_funds_step_up_limit( original_credit_spread, swap_spread, tier, one_off_coupon_increase_with_call_option, qualification_reference, context, ... )own_funds_step_up_limit( original_credit_spread, swap_spread, tier, one_off_coupon_increase_with_call_option, qualification_reference, context, ... )
original_credit_spread |
Original credit spread. Reference type: |
swap_spread |
Swap spread. Reference type: |
tier |
Tier. Reference type: |
one_off_coupon_increase_with_call_option |
One off coupon increase with call option. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-step-tier2-negative-limit") result <- do.call(own_funds_step_up_limit, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-step-tier2-negative-limit") result <- do.call(own_funds_step_up_limit, c(case$kwargs, list(context = context))) result$value
Use distinct SCR/MCR eligible funds. Equality at either threshold triggers. The three-month non-restoration history and any additional contractual event are externally established; a current recovery does not erase a past event. Article71(10) waiver may affect execution, never the fact of the event.
own_funds_tier1_loss_absorption_trigger( eligible_scr_own_funds, scr, eligible_mcr_own_funds, mcr, scr_not_restored_within_period, additional_contractual_trigger, qualification_reference, context, ... )own_funds_tier1_loss_absorption_trigger( eligible_scr_own_funds, scr, eligible_mcr_own_funds, mcr, scr_not_restored_within_period, additional_contractual_trigger, qualification_reference, context, ... )
eligible_scr_own_funds |
Eligible scr own funds. Reference type: |
scr |
Scr. Reference type: |
eligible_mcr_own_funds |
Eligible mcr own funds. Reference type: |
mcr |
Mcr. Reference type: |
scr_not_restored_within_period |
Scr not restored within period. Reference type: |
additional_contractual_trigger |
Additional contractual trigger. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tier1-trigger-baseline-decidable-or") result <- do.call(own_funds_tier1_loss_absorption_trigger, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tier1-trigger-baseline-decidable-or") result <- do.call(own_funds_tier1_loss_absorption_trigger, c(case$kwargs, list(context = context))) result$value
a/b requires full absorption. c permits partial restoration or at-least-linear absorption, unless the narrowly qualified supervisory exception is declared. Contract-only additional triggers have no universal execution rule here.
own_funds_tier1_mechanism_requirements( eligible_scr_own_funds, scr, eligible_mcr_own_funds, mcr, scr_not_restored_within_period, additional_contractual_trigger, mechanism, partial_restoration_sufficient, qualification_reference, context, waiver_conditions = NULL, waiver_reference = NULL, ... )own_funds_tier1_mechanism_requirements( eligible_scr_own_funds, scr, eligible_mcr_own_funds, mcr, scr_not_restored_within_period, additional_contractual_trigger, mechanism, partial_restoration_sufficient, qualification_reference, context, waiver_conditions = NULL, waiver_reference = NULL, ... )
eligible_scr_own_funds |
Eligible scr own funds. Reference type: |
scr |
Scr. Reference type: |
eligible_mcr_own_funds |
Eligible mcr own funds. Reference type: |
mcr |
Mcr. Reference type: |
scr_not_restored_within_period |
Scr not restored within period. Reference type: |
additional_contractual_trigger |
Additional contractual trigger. Reference type: |
mechanism |
Mechanism. Reference type: |
partial_restoration_sufficient |
Partial restoration sufficient. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
waiver_conditions |
Waiver conditions. Reference type: |
waiver_reference |
Waiver reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tier1-mechanism-baseline-write_down-partial") result <- do.call(own_funds_tier1_mechanism_requirements, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tier1-mechanism-baseline-write_down-partial") result <- do.call(own_funds_tier1_mechanism_requirements, c(case$kwargs, list(context = context))) result$value
Parameter value and its regulatory provenance
parameter(parameter_id, context)parameter(parameter_id, context)
parameter_id |
A slash-separated identifier, for example
|
context |
An explicit |
scalars, matrices and tables use the selected profile.
Catastrophe categories also expose matrices, regions, weights, links,
postcode groups, raw geography and administrative mappings. All
parameters are returned by value; edits do not change the installed package.
Named list with profile identifier/hash, value or table, regulatory sources and applicable numeric override audit.
ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") parameter("scalars/intangible", context = ctx)$value parameter("matrices/health_nslt", context = ctx)$labelsctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") parameter("scalars/intangible", context = ctx)$value parameter("matrices/health_nslt", context = ctx)$labels
Model charges and scalar module inputs are externally qualified. Nested inputs use the same technique, with no intangible charge below the outermost BSCR. Technique2 verifies a PSD dual certificate of constrained maximisation; it does not develop or run an insurer model or an optimisation solver.
partial_model_bscr( technique, inputs, intangible_charge, qualification_reference, context, ... )partial_model_bscr( technique, inputs, intangible_charge, qualification_reference, context, ... )
technique |
Technique. Reference type: |
inputs |
Inputs. Reference type: |
intangible_charge |
Intangible charge. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("partial-integration-baseline-3") result <- do.call(partial_model_bscr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("partial-integration-baseline-3") result <- do.call(partial_model_bscr, c(case$kwargs, list(context = context))) result$value
Nominal first-loss coverage and the externally determined guarantee value are distinct inputs. Pool allocation is chosen by the analyst, never here. Article215(f) payment coverage remains part of external qualification.
partial_public_guarantee_zero_amount_2027( positions, category, first_loss_cover, guarantee_value, conditions, qualification_reference, allocation_reference, context, ... )partial_public_guarantee_zero_amount_2027( positions, category, first_loss_cover, guarantee_value, conditions, qualification_reference, allocation_reference, context, ... )
positions |
Positions. Reference type: |
category |
Category. Reference type: |
first_loss_cover |
First loss cover. Reference type: |
guarantee_value |
Guarantee value. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
allocation_reference |
Allocation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("partial-public-guarantee-single") result <- do.call(partial_public_guarantee_zero_amount_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("partial-public-guarantee-single") result <- do.call(partial_public_guarantee_zero_amount_2027, c(case$kwargs, list(context = context))) result$value
Structured calculation result and provenance
## S3 method for class 'Result' print(x, ...) Result( value, unit, formula_id, sources, context, input_hash, profile_hash, details, status = "REFERENCE_COMPONENT" )## S3 method for class 'Result' print(x, ...) Result( value, unit, formula_id, sources, context, input_hash, profile_hash, details, status = "REFERENCE_COMPONENT" )
x |
A result to print. |
... |
Additional printing arguments (currently unused). |
value |
Calculated numeric value. |
unit |
Explicit value unit. |
formula_id |
Formula identifier. |
sources |
Source-reference list. |
context |
Explicit |
input_hash, profile_hash
|
Reproducible R input and profile fingerprints. |
details |
Formula-specific trace and qualification metadata. |
status |
Component/scenario status; default |
An ordinary R list with S3 class Result. Construction itself does not
validate or approve an external calculation. Use the formula APIs to calculate.
ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") intangible_risk(100, context = ctx)ctx <- Context("2025-01-17", "2026-09-23", "EUR", "EU-S2-DOCUMENTS-2024-2025-v0.1") intangible_risk(100, context = ctx)
Stress an externally identified property asset, not total BOF or property SCR.
property_value_stress(property_value, valuation_reference, context, ...)property_value_stress(property_value, valuation_reference, context, ...)
property_value |
Property value. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("property-value-0") result <- do.call(property_value_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("property-value-0") result <- do.call(property_value_stress, c(case$kwargs, list(context = context))) result$value
The qualification reference identifies the actual measure, classification, specific approval/conditions or pre-existing2025 transitional entitlement. Metadata exposes authority periods without calculating a decision deadline or manufacturing approval through silence. Fiscal-year counting is external.
proportionality_application_evidence_2027( evidence, route, measure_list_changed, measure_ceased, supervisory_restriction, qualification_reference, context, ... )proportionality_application_evidence_2027( evidence, route, measure_list_changed, measure_ceased, supervisory_restriction, qualification_reference, context, ... )
evidence |
Evidence. Reference type: |
route |
Route. Reference type: |
measure_list_changed |
Measure list changed. Reference type: |
measure_ceased |
Measure ceased. Reference type: |
supervisory_restriction |
Supervisory restriction. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-prop-snc-missing") result <- do.call(proportionality_application_evidence_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-prop-snc-missing") result <- do.call(proportionality_application_evidence_2027, c(case$kwargs, list(context = context))) result$value
The insurer supplies BE, SCR, scenario-based time value and the Article34a(3) SCR/LAC-TP treatment. No stress valuation or circular SCR solver is invented. Negative deterministic/net BE is preserved; no unsupported100% loading cap.
prudent_deterministic_best_estimate_2027( deterministic_best_estimate, time_value_options, undertaking_scr, conditions, route, scenario_reference, qualification_reference, alternative_loading = NULL, alternative_loading_demonstrated = NULL, alternative_loading_reference = NULL, context, approval_evidence = NULL, ... )prudent_deterministic_best_estimate_2027( deterministic_best_estimate, time_value_options, undertaking_scr, conditions, route, scenario_reference, qualification_reference, alternative_loading = NULL, alternative_loading_demonstrated = NULL, alternative_loading_reference = NULL, context, approval_evidence = NULL, ... )
deterministic_best_estimate |
Deterministic best estimate. Reference type: |
time_value_options |
Time value options. Reference type: |
undertaking_scr |
Undertaking scr. Reference type: |
conditions |
Conditions. Reference type: |
route |
Route. Reference type: |
scenario_reference |
Scenario reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
alternative_loading |
Alternative loading. Reference type: |
alternative_loading_demonstrated |
Alternative loading demonstrated. Reference type: |
alternative_loading_reference |
Alternative loading reference. Reference type: |
context |
Explicit |
approval_evidence |
Approval evidence. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-snc-negative-be") result <- do.call(prudent_deterministic_best_estimate_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-snc-negative-be") result <- do.call(prudent_deterministic_best_estimate_2027, c(case$kwargs, list(context = context))) result$value
SNC requires written method intention; non-SNC requires existing approval and current conditions instead. This never grants supervisory approval or computes option time value from an invented scenario set.
prudent_deterministic_eligibility_2027( time_value_options, undertaking_scr, conditions, route, scenario_reference, qualification_reference, context, approval_evidence = NULL, ... )prudent_deterministic_eligibility_2027( time_value_options, undertaking_scr, conditions, route, scenario_reference, qualification_reference, context, approval_evidence = NULL, ... )
time_value_options |
Time value options. Reference type: |
undertaking_scr |
Undertaking scr. Reference type: |
conditions |
Conditions. Reference type: |
route |
Route. Reference type: |
scenario_reference |
Scenario reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
approval_evidence |
Approval evidence. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-snc-boundary") result <- do.call(prudent_deterministic_eligibility_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-snc-boundary") result <- do.call(prudent_deterministic_eligibility_2027, c(case$kwargs, list(context = context))) result$value
Use EUR inputs for the absolute threshold. Market shares require the proper home-state denominators: life gross TP versus nonlife gross written premiums. Pure nonlife undertakings do not automatically face the life-size cap; mixed undertakings do only at or above20% life gross TP. Any waiver is an explicit external supervisory finding under paragraph3, never inferred here.
prudent_deterministic_non_snc_size_screen_2027( undertaking_type, life_gross_technical_provisions, total_gross_technical_provisions, market_shares, size_exception_approved, classification_reference, context, ... )prudent_deterministic_non_snc_size_screen_2027( undertaking_type, life_gross_technical_provisions, total_gross_technical_provisions, market_shares, size_exception_approved, classification_reference, context, ... )
undertaking_type |
Undertaking type. Reference type: |
life_gross_technical_provisions |
Life gross technical provisions. Reference type: |
total_gross_technical_provisions |
Total gross technical provisions. Reference type: |
market_shares |
Market shares. Reference type: |
size_exception_approved |
Size exception approved. Reference type: |
classification_reference |
Classification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-size-waived") result <- do.call(prudent_deterministic_non_snc_size_screen_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("prudent-size-waived") result <- do.call(prudent_deterministic_non_snc_size_screen_2027, c(case$kwargs, list(context = context))) result$value
Only the directness requirement is waived for the counter-guarantee; original guarantee requirements and all other counter-guarantee conditions remain. Any downstream Article180/192 treatment needs its own scope checks.
public_counter_guarantee_conditions_2027( conditions, qualification_reference, context, ... )public_counter_guarantee_conditions_2027( conditions, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-counter-all") result <- do.call(public_counter_guarantee_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-counter-all") result <- do.call(public_counter_guarantee_conditions_2027, c(case$kwargs, list(context = context))) result$value
Public-body/list classification and underlying guarantee assessment are external evidence, not conclusions drawn from these supplied booleans. The future-only308b(12) category concerns the position's inception, not merely the security's issue date; it does not extend public guarantees.
public_exposure_zero_factor( category, conditions, qualification_reference, context, ... )public_exposure_zero_factor( category, conditions, qualification_reference, context, ... )
category |
Category. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-public-zero-ecb") result <- do.call(public_exposure_zero_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-public-zero-ecb") result <- do.call(public_exposure_zero_factor, c(case$kwargs, list(context = context))) result$value
A single reference case by identifier
reference_case(id)reference_case(id)
id |
Exact reference-case identifier from |
The selected case, including its inputs, context changes and expected
outcome. An unknown identifier raises a structured MISSING_INPUT condition.
id <- reference_cases()$cases[[1]]$id identical(reference_case(id)$id, id)id <- reference_cases()$cases[[1]]$id identical(reference_case(id)$id, id)
Independent synthetic calculation references
reference_cases()reference_cases()
Regulatory constants are not synthetic; example portfolios and market inputs are. Accessing references does not run calculations.
A list with the fixed cases, including inputs, independently
specified expected values or error codes, and derivation notes.
reference_portfolios(), reference_case()
# Select by function when looking for an example: cases <- reference_cases()$cases head(vapply(cases, function(x) x$id, character(1)))# Select by function when looking for an example: cases <- reference_cases()$cases head(vapply(cases, function(x) x$id, character(1)))
Additional synthetic reporting reference datasets
reference_datasets() reference_dataset(name)reference_datasets() reference_dataset(name)
name |
Exact dataset filename from |
reference_datasets() returns dataset names. reference_dataset()
returns the selected hash-verified dataset as a list.
reference_datasets() names(reference_dataset(reference_datasets()[[1]]))reference_datasets() names(reference_dataset(reference_datasets()[[1]]))
Synthetic integration portfolios
reference_portfolios()reference_portfolios()
A list containing named dependency nodes, explicit contexts and independently specified expected values for the reference portfolios.
reference_cases(), rule_profiles()
length(reference_portfolios()$portfolios)length(reference_portfolios()$portfolios)
None explicitly declares no additional supervisory decision. Classification and authenticity of instructions/approval remain external qualifications. non_snc_approval_reference enables the separately approved29d/327b route; a size-screen result is never substituted for this supervisory decision.
regular_supervisory_report_interval( small_non_complex, supervisory_interval_years = NULL, supervisory_reference = NULL, non_snc_approval_reference = NULL, scope = "solo", qualification_reference, context, ... )regular_supervisory_report_interval( small_non_complex, supervisory_interval_years = NULL, supervisory_reference = NULL, non_snc_approval_reference = NULL, scope = "solo", qualification_reference, context, ... )
small_non_complex |
Small non complex. Reference type: |
supervisory_interval_years |
Supervisory interval years. Reference type: |
supervisory_reference |
Supervisory reference. Reference type: |
non_snc_approval_reference |
Non snc approval reference. Reference type: |
scope |
Scope. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: years.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-close-baseline-rsr-default") result <- do.call(regular_supervisory_report_interval, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-close-baseline-rsr-default") result <- do.call(regular_supervisory_report_interval, c(case$kwargs, list(context = context))) result$value
Review schedule, Eurostat aggregate, original base and last publication are qualified inputs. The output is a calculated proposal; it never changes the existing ruleset's MCR/scope parameters or asserts national adoption.
regulatory_euro_amount_indexation( base_amount, last_published_amount, cumulative_inflation, inflation_since_last_adjustment, review_due, qualification_reference, context, ... )regulatory_euro_amount_indexation( base_amount, last_published_amount, cumulative_inflation, inflation_since_last_adjustment, review_due, qualification_reference, context, ... )
base_amount |
Base amount. Reference type: |
last_published_amount |
Last published amount. Reference type: |
cumulative_inflation |
Cumulative inflation. Reference type: |
inflation_since_last_adjustment |
Inflation since last adjustment. Reference type: |
review_due |
Review due. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: EUR.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-close-baseline-index-exact-grid") result <- do.call(regulatory_euro_amount_indexation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("group-close-baseline-index-exact-grid") result <- do.call(regulatory_euro_amount_indexation, c(case$kwargs, list(context = context))) result$value
Values must already share counterparty/LoB/contract/provision scope, date, currency and qualified valuation basis. This does not compute PD, reapply an LGD floor, net gross TP, or choose a deposit/SPV-cap ordering. A signed negative result is not automatically a recognised asset.
reinsurance_adjusted_recoverable( recoverables_before_default, expected_default_adjustment, reconciliation_reference, context, ... )reinsurance_adjusted_recoverable( recoverables_before_default, expected_default_adjustment, reconciliation_reference, context, ... )
recoverables_before_default |
Recoverables before default. Reference type: |
expected_default_adjustment |
Expected default adjustment. Reference type: |
reconciliation_reference |
Reconciliation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ri-reconciliation-baseline-zero") result <- do.call(reinsurance_adjusted_recoverable, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ri-reconciliation-baseline-zero") result <- do.call(reinsurance_adjusted_recoverable, c(case$kwargs, list(context = context))) result$value
Coverage is SCR/local-equivalent solvency coverage for the insurer route, or assets/equivalent eligible amount divided by aggregate maximum SPV exposure. Solvency dates, equivalence, legal status and credible restoration evidence are external. Months are completed regulatory calendar periods; at the expiry of6/3months an unresolved shortfall receives zero recognition. Non-equivalent insurers use the separate CQS route, not an invented SCR.
reinsurance_counterparty_recognition_factor( counterparty_type, coverage_ratio, conditions, months_since_breach = NULL, credit_quality_step = NULL, qualification_reference, context, ... )reinsurance_counterparty_recognition_factor( counterparty_type, coverage_ratio, conditions, months_since_breach = NULL, credit_quality_step = NULL, qualification_reference, context, ... )
counterparty_type |
Counterparty type. Reference type: |
coverage_ratio |
Coverage ratio. Reference type: |
conditions |
Conditions. Reference type: |
months_since_breach |
Months since breach. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("counterparty-close-baseline-spv-two") result <- do.call(reinsurance_counterparty_recognition_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("counterparty-close-baseline-spv-two") result <- do.call(reinsurance_counterparty_recognition_factor, c(case$kwargs, list(context = context))) result$value
Payment-date differences may be negative (e.g. delayed receipts), but a negative total needs review. Default times, PD, litigation and collateral effects must already be in the external projection: never multiply PD twice.
reinsurance_default_adjustment( cashflows, partition, runoff_complete, projection_reference, curve_reference, noncollateral_mitigation_included, context, separate_noncollateral_mitigation = NULL, ... )reinsurance_default_adjustment( cashflows, partition, runoff_complete, projection_reference, curve_reference, noncollateral_mitigation_included, context, separate_noncollateral_mitigation = NULL, ... )
cashflows |
Cashflows. Reference type: |
partition |
Partition. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
projection_reference |
Projection reference. Reference type: |
curve_reference |
Curve reference. Reference type: |
noncollateral_mitigation_included |
Noncollateral mitigation included. Reference type: |
context |
Explicit |
separate_noncollateral_mitigation |
Separate noncollateral mitigation. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-adjustment-zero") result <- do.call(reinsurance_default_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-adjustment-zero") result <- do.call(reinsurance_default_adjustment, c(case$kwargs, list(context = context))) result$value
The minimum is not a point estimate and is not a probability of default. This result must not be used as the full expected default adjustment: its timing, probabilities and segmentation require a separate calculation.
reinsurance_default_loss( recoverables_before_adjustment, estimated_loss, method, valuation_reference = NULL, context, ... )reinsurance_default_loss( recoverables_before_adjustment, estimated_loss, method, valuation_reference = NULL, context, ... )
recoverables_before_adjustment |
Recoverables before adjustment. Reference type: |
estimated_loss |
Estimated loss. Reference type: |
method |
Method. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-loss-zero") result <- do.call(reinsurance_default_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-loss-zero") result <- do.call(reinsurance_default_loss, c(case$kwargs, list(context = context))) result$value
False means premium only after prior eligibility under Article 41: it is not permission to include settled claims, unrelated payments or deposits. Call separately for each date and homogeneous counterparty/LoB/type slice.
reinsurance_nonlife_allocation( payments, target_provision, eligibility_reference, context, ... )reinsurance_nonlife_allocation( payments, target_provision, eligibility_reference, context, ... )
payments |
Payments. Reference type: |
target_provision |
Target provision. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-allocation-zero") result <- do.call(reinsurance_nonlife_allocation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-allocation-zero") result <- do.call(reinsurance_nonlife_allocation, c(case$kwargs, list(context = context))) result$value
Signed values remain signed. No gross-claim date substitution, default adjustment, SPV cap or claim/deposit qualification is performed implicitly.
reinsurance_recoverable_cashflows( cashflows, partition, runoff_complete, projection_reference, curve_reference, context, ... )reinsurance_recoverable_cashflows( cashflows, partition, runoff_complete, projection_reference, curve_reference, context, ... )
cashflows |
Cashflows. Reference type: |
partition |
Partition. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
projection_reference |
Projection reference. Reference type: |
curve_reference |
Curve reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-cashflow-zero") result <- do.call(reinsurance_recoverable_cashflows, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-ri-cashflow-zero") result <- do.call(reinsurance_recoverable_cashflows, c(case$kwargs, list(context = context))) result$value
The externally qualified net BE is based on homogeneous groups, each with at most one treaty/SPV unless homogeneous risks are transferred. Both BEs share scope/date/basis. Neither supplied BE includes the counterparty loss adjustment; apply the separate default-adjustment component afterwards.
reinsurance_recoverables_from_net( gross_best_estimate, unadjusted_net_best_estimate, proportionality_satisfied, qualification_reference, context, ... )reinsurance_recoverables_from_net( gross_best_estimate, unadjusted_net_best_estimate, proportionality_satisfied, qualification_reference, context, ... )
gross_best_estimate |
Gross best estimate. Reference type: |
unadjusted_net_best_estimate |
Unadjusted net best estimate. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("net-recovery-close-baseline-zero") result <- do.call(reinsurance_recoverables_from_net, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("net-recovery-close-baseline-zero") result <- do.call(reinsurance_recoverables_from_net, c(case$kwargs, list(context = context))) result$value
Features concern the selected cashflows. References to all-scenario and market evidence are retained but their substantive adequacy is external.
replicated_cashflow_value( market_values, cashflow_features, replication_reference = NULL, market_reference = NULL, context, ... )replicated_cashflow_value( market_values, cashflow_features, replication_reference = NULL, market_reference = NULL, context, ... )
market_values |
Market values. Reference type: |
cashflow_features |
Cashflow features. Reference type: |
replication_reference |
Replication reference. Reference type: |
market_reference |
Market reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-replication-zero-value") result <- do.call(replicated_cashflow_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-replication-zero-value") result <- do.call(replicated_cashflow_value, c(case$kwargs, list(context = context))) result$value
Check an archived rule on explicitly bound facts
reporting_bound_rule_check( validation_code, bindings, technical_version, binding_reference )reporting_bound_rule_check( validation_code, bindings, technical_version, binding_reference )
validation_code |
Exact archived validation rule code. |
bindings |
Named list keyed by source variable IDs. Supply tagged scalar
facts, or |
technical_version |
Explicit archived technical release. |
binding_reference |
Nonempty external fact-selection/entity/period/unit qualification reference. It is recorded, not approved by this function. |
Missing facts are not zero. Every syntactic variable must be supplied, including inactive branches. Supported local filters are applied; unsupported global filters, joins and scopes fail explicitly. No full report is certified.
Boolean component result with selector, source and input provenance.
bindings <- list(v1 = list(value = 1000, decimals = 0), v2 = list(values = list(list(value = 1000, decimals = 0)))) reporting_bound_rule_check("BV1053-1", bindings, "2.10.0", "synthetic-example")$valuebindings <- list(v1 = list(value = 1000, decimals = 0), v2 = list(values = list(list(value = 1000, decimals = 0)))) reporting_bound_rule_check("BV1053-1", bindings, "2.10.0", "synthetic-example")$value
Policyholder/beneficiary scope and underlying reinsurance contracts must already be qualified. Neither ORSA eligibility nor a general waiver is inferred.
reporting_captive_itemised_exemption_2027( is_captive, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, reporting_interval_years, qualification_reference, context, ... )reporting_captive_itemised_exemption_2027( is_captive, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, reporting_interval_years, qualification_reference, context, ... )
is_captive |
Is captive. Reference type: |
permitted_policyholders |
Permitted policyholders. Reference type: |
natural_person_tp_share |
Natural person tp share. Reference type: |
no_compulsory_liability |
No compulsory liability. Reference type: |
reporting_interval_years |
Reporting interval years. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("reporting-captive-natural_person_tp_share-0") result <- do.call(reporting_captive_itemised_exemption_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("reporting-captive-natural_person_tp_share-0") result <- do.call(reporting_captive_itemised_exemption_2027, c(case$kwargs, list(context = context))) result$value
Archived reporting definitions for an explicit technical release
reporting_catalog(technical_version)reporting_catalog(technical_version)
technical_version |
One of |
These are definition lookups, not filing obligations, validation results or automatic taxonomy selection. Baseline and hotfix may share URIs.
Catalogue of modules, templates, tables and source-bound resources.
names(reporting_catalog("2.10.0")$tables)[1:3]names(reporting_catalog("2.10.0")$tables)[1:3]
Check a rule against explicit closed-table cell facts
reporting_closed_rule_check( validation_code, facts, technical_version, fact_context, binding_reference )reporting_closed_rule_check( validation_code, facts, technical_version, fact_context, binding_reference )
validation_code |
Exact archived validation code. |
facts |
Ordered list of explicit cell/context and tagged fact records. |
technical_version |
Explicit archived technical release. |
fact_context |
Named list containing explicit |
binding_reference |
External qualification reference. |
No XBRL import, automatic filing obligation, open-table expansion or full-report approval is performed.
Component check with cell bindings and source provenance; scoped rules include the individual coordinate checks. Missing cells never default to zero.
cases <- reference_dataset("reference_reporting_scope_cases.json")$cases case <- cases[[1]] reporting_closed_rule_check(case$validation_code, case$facts, case$technical_version, case$fact_context, case$binding_reference)$valuecases <- reference_dataset("reference_reporting_scope_cases.json")$cases case <- cases[[1]] reporting_closed_rule_check(case$validation_code, case$facts, case$technical_version, case$fact_context, case$binding_reference)$value
Load one reporting definition category
reporting_data(category, technical_version)reporting_data(category, technical_version)
category |
|
technical_version |
Explicit archived technical release. |
IsEnabled and IncludeInXBRL are archived definitions, not current
supervisory activation decisions. Only the selected category is decompressed.
Hash-verified data preserving raw DPM field names and flags.
names(reporting_data("structure", "2.10.0")$tables)names(reporting_data("structure", "2.10.0")$tables)
Assemble an offline XBRL draft from explicit DPM cell facts
reporting_instance( facts, technical_version, module, entity, instant, indicators, qualification_reference, validation_codes = NULL, filing_overrides = list() )reporting_instance( facts, technical_version, module, entity, instant, indicators, qualification_reference, validation_codes = NULL, filing_overrides = list() )
facts |
Ordered list of records containing |
technical_version |
Explicit archived technical release. |
module |
Exact reporting module code. |
entity |
Named list with explicit |
instant |
Canonical ISO reporting instant, |
indicators |
Named list of explicit Boolean filing indicators. |
qualification_reference |
External reporting-scope qualification reference. |
validation_codes |
Optional ordered rule-code list, or |
filing_overrides |
List of explicit |
This returns DRAFT_XBRL_INSTANCE, never submission approval. It makes
no network request, writes no files, invents no facts, and performs no rounding.
Native R serialization is deterministic; XML hashes bind the returned bytes,
not another language's serializer. XML schema validation remains separate.
XML text and SHA-256, cell reconciliation, selected rule checks, currency and precision findings, override audit and outstanding validation obligations.
names(reference_dataset("reference_reporting_portfolios.json"))names(reference_dataset("reference_reporting_portfolios.json"))
Check an explicit fact against an archived DPM metric
reporting_metric_value_check(metric_code, fact, technical_version)reporting_metric_value_check(metric_code, fact, technical_version)
metric_code |
Exact DPM metric MemberCode, preserving case. |
fact |
Tagged atom: |
technical_version |
Explicit archived technical release. |
Datatype and, where prescribed, enumeration-membership result with metric definition and provenance. This is not XML or full-report validation.
cases <- reference_dataset("reference_reporting_metric_cases.json")$cases names(cases[[1]])cases <- reference_dataset("reference_reporting_metric_cases.json")$cases names(cases[[1]])
Evaluate an archived filing-indicator precondition
reporting_rule_precondition( validation_code, indicators, technical_version, module )reporting_rule_precondition( validation_code, indicators, technical_version, module )
validation_code |
Exact archived rule code. |
indicators |
Named list of explicit logical declarations for all referenced
template indicators. Missing declarations do not mean |
technical_version |
Explicit archived technical release. |
module |
Exact archived module code. |
This evaluates only the archived Boolean indicator condition, not legal applicability, current activation or the reported numeric facts.
Boolean precondition result plus archived source hashes and limits.
# Use explicit declarations from a qualified reporting input set. names(reporting_catalog("2.8.2")$modules)[1:3]# Use explicit declarations from a qualified reporting input set. names(reporting_catalog("2.8.2")$modules)[1:3]
Definitions and axes for one reporting table
reporting_table(table_code, technical_version)reporting_table(table_code, technical_version)
table_code |
Exact table code in the selected catalogue. |
technical_version |
Explicit archived technical release. |
Table, cells, axes, ordinates, positions, categorisations and open-axis restrictions. Open axes are not expanded and shaded cells are not zero inputs.
code <- names(reporting_catalog("2.10.0")$tables)[[1]] reporting_table(code, "2.10.0")$statuscode <- names(reporting_catalog("2.10.0")$tables)[[1]] reporting_table(code, "2.10.0")$status
Archived module-specific validation status
reporting_validation_status(validation_code, technical_version, module)reporting_validation_status(validation_code, technical_version, module)
validation_code |
Exact archived rule code. |
technical_version |
Explicit archived technical release. |
module |
Exact archived module code, for example |
This is not a current supervisory clearance or an activation history. Non-XBRL checks are not automatically inactive. No online lookup occurs.
Source rows, snapshot date, severity, implementation channel and
activation evidence. Ambiguous or conflicting evidence is REVIEW_REQUIRED.
reporting_validation_status("BV1053-1", "2.8.2", "ars")$reasonreporting_validation_status("BV1053-1", "2.8.2", "ars")$reason
Nested losses are portfolio -> scenario -> signed BOF loss, already adjusted for217(5) profit participation. A gain is negative and offsets losses when selecting the whole-undertaking scenario, never after independent choices. net includes qualified FDB absorption; gross and net retain the same scenario.
restricted_portfolio_scenario_charge( portfolio_kinds, gross_losses, net_losses, target_portfolio, article217_scope_confirmed, qualification_reference, context, view = "gross", tie_break = NULL, ... )restricted_portfolio_scenario_charge( portfolio_kinds, gross_losses, net_losses, target_portfolio, article217_scope_confirmed, qualification_reference, context, view = "gross", tie_break = NULL, ... )
portfolio_kinds |
Portfolio kinds. Reference type: |
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
target_portfolio |
Target portfolio. Reference type: |
article217_scope_confirmed |
Article217 scope confirmed. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
view |
View. Reference type: |
tie_break |
Tie break. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("restricted-portfolio-baseline-common") result <- do.call(restricted_portfolio_scenario_charge, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("restricted-portfolio-baseline-common") result <- do.call(restricted_portfolio_scenario_charge, c(case$kwargs, list(context = context))) result$value
Sum complete qualified notional SCRs, including remainder; no diversification.
restricted_portfolio_scr_sum( notional_scr, portfolio_kinds, article217_scope_confirmed, qualification_reference, context, ... )restricted_portfolio_scr_sum( notional_scr, portfolio_kinds, article217_scope_confirmed, qualification_reference, context, ... )
notional_scr |
Notional scr. Reference type: |
portfolio_kinds |
Portfolio kinds. Reference type: |
article217_scope_confirmed |
Article217 scope confirmed. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("restricted-portfolio-baseline-zero") result <- do.call(restricted_portfolio_scr_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("restricted-portfolio-baseline-zero") result <- do.call(restricted_portfolio_scr_sum, c(case$kwargs, list(context = context))) result$value
Read the default probability, NOT the similarly named PD credit spread.
rfr_archived_corporate_pd( series_id, sector, maturity_years, credit_quality_step, qualification_reference, context, market_data = NULL, ... )rfr_archived_corporate_pd( series_id, sector, maturity_years, credit_quality_step, qualification_reference, context, market_data = NULL, ... )
series_id |
Series id. Reference type: |
sector |
Sector. Reference type: |
maturity_years |
Maturity years. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
market_data |
Market data. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-pd-financial") result <- do.call(rfr_archived_corporate_pd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-pd-financial") result <- do.call(rfr_archived_corporate_pd, c(case$kwargs, list(context = context))) result$value
Exact published tenors only: no interpolation or automatic extension beyond year 30. Classification and applicability remain externally qualified.
rfr_archived_corporate_spread( series_id, sector, maturity_years, credit_quality_step, table, qualification_reference, context, market_data = NULL, ... )rfr_archived_corporate_spread( series_id, sector, maturity_years, credit_quality_step, table, qualification_reference, context, market_data = NULL, ... )
series_id |
Series id. Reference type: |
sector |
Sector. Reference type: |
maturity_years |
Maturity years. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
table |
Table. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
market_data |
Market data. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-pd_spread-financial") result <- do.call(rfr_archived_corporate_spread, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-pd_spread-financial") result <- do.call(rfr_archived_corporate_spread, c(case$kwargs, list(context = context))) result$value
Country is the published parameter axis, including the EUR aggregate; it is not a currency inference or automatic asset classification. Do not transfer spot-curve currency metadata blocks to this distinct government-table axis.
rfr_archived_government_spread( country_id, maturity_years, table, qualification_reference, context, market_data = NULL, ... )rfr_archived_government_spread( country_id, maturity_years, table, qualification_reference, context, market_data = NULL, ... )
country_id |
Country id. Reference type: |
maturity_years |
Maturity years. Reference type: |
table |
Table. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
market_data |
Market data. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-government-ltas") result <- do.call(rfr_archived_government_spread, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-government-ltas") result <- do.call(rfr_archived_government_spread, c(case$kwargs, list(context = context))) result$value
Corporate, country-relative basic-RFR and named-index axes are different; none is automatically assigned from context currency. The specific index scalar has no maturity axis. Qualification remains external.
rfr_archived_ltas( table, series_id, maturity_years = NULL, qualification_reference, context, market_data = NULL, ... )rfr_archived_ltas( table, series_id, maturity_years = NULL, qualification_reference, context, market_data = NULL, ... )
table |
Table. Reference type: |
series_id |
Series id. Reference type: |
maturity_years |
Maturity years. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
market_data |
Market data. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-specific_ltas") result <- do.call(rfr_archived_ltas, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-specific_ltas") result <- do.call(rfr_archived_ltas, c(case$kwargs, list(context = context))) result$value
Archive retrieval date is a conservative knowledge bound for this exact file revision, not an inferred original publication date. Raw currency matches are necessary but not sufficient qualification; known anomalies remain blocked.
rfr_archived_spot_rate( series_id, maturity_years, variant, qualification_reference, context, market_data = NULL, ... )rfr_archived_spot_rate( series_id, maturity_years, variant, qualification_reference, context, market_data = NULL, ... )
series_id |
Series id. Reference type: |
maturity_years |
Maturity years. Reference type: |
variant |
Variant. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
market_data |
Market data. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-spot-no_va") result <- do.call(rfr_archived_spot_rate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-31", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("synthetic-market-spot-no_va") result <- do.call(rfr_archived_spot_rate, c(case$kwargs, list(context = context))) result$value
The mean's observation calendar, market quality and maturity matching are external inputs. This component does not bootstrap or extrapolate a curve. Under the 2027 Article44 rule this arithmetic is only for qualified non-OIS swaps requiring adjustment; the external reference must establish that scope.
rfr_credit_risk_adjustment( annual_mean_spread, qualification_reference, context, ... )rfr_credit_risk_adjustment( annual_mean_spread, qualification_reference, context, ... )
annual_mean_spread |
Annual mean spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-cra-2") result <- do.call(rfr_credit_risk_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-cra-2") result <- do.call(rfr_credit_risk_adjustment, c(case$kwargs, list(context = context))) result$value
CSSR from separately qualified PVBP amounts, not their revaluation model.
rfr_credit_spread_sensitivity( asset_pvbp, liability_pvbp, qualification_reference, context, reuse = NULL, ... )rfr_credit_spread_sensitivity( asset_pvbp, liability_pvbp, qualification_reference, context, reuse = NULL, ... )
asset_pvbp |
Asset pvbp. Reference type: |
liability_pvbp |
Liability pvbp. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
reuse |
Reuse. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cssr-0") result <- do.call(rfr_credit_spread_sensitivity, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cssr-0") result <- do.call(rfr_credit_spread_sensitivity, c(case$kwargs, list(context = context))) result$value
EIOPA-BoS-24-533 8.3.2 / EIOPA-BoS-26-198 7.3.2. A company's formula result is NOT the uniform adjustment published for all undertakings. Qualification includes Article48(1), currency/date and input convention. In particular, lac_ratio is the source ratio, not a negative LAC amount.
rfr_currency_risk_adjustment( qualification_reference, context, calibration = NULL, ... )rfr_currency_risk_adjustment( qualification_reference, context, calibration = NULL, ... )
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
calibration |
Calibration. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "DKK", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-cura-baseline-published-dkk") result <- do.call(rfr_currency_risk_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "DKK", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-cura-baseline-published-dkk") result <- do.call(rfr_currency_risk_adjustment, c(case$kwargs, list(context = context))) result$value
Market rates are already CRA/CURA-adjusted and selected under external DLT, FSP/RVC and missing-data/previous-trading-day qualification. Keys are canonical positive integer years. VA is an annual decimal rate already rounded to whole basis points; its continuous equivalent enters LLFR. This is a numerical engine component, not an official publication.
rfr_curve_spot_2027( market_rates, first_smoothing_point, maturity, instrument_kind, coupon_frequency = NULL, average_notionals = NULL, ufr, phase_in, approval_reference = NULL, volatility_adjustment = NULL, matching_adjustment = NULL, interest_stress = NULL, output_maturities = list(), qualification_reference, context, ... )rfr_curve_spot_2027( market_rates, first_smoothing_point, maturity, instrument_kind, coupon_frequency = NULL, average_notionals = NULL, ufr, phase_in, approval_reference = NULL, volatility_adjustment = NULL, matching_adjustment = NULL, interest_stress = NULL, output_maturities = list(), qualification_reference, context, ... )
market_rates |
Market rates. Reference type: |
first_smoothing_point |
First smoothing point. Reference type: |
maturity |
Maturity. Reference type: |
instrument_kind |
Instrument kind. Reference type: |
coupon_frequency |
Coupon frequency. Reference type: |
average_notionals |
Average notionals. Reference type: |
ufr |
Ufr. Reference type: |
phase_in |
Phase in. Reference type: |
approval_reference |
Approval reference. Reference type: |
volatility_adjustment |
Volatility adjustment. Reference type: |
matching_adjustment |
Matching adjustment. Reference type: |
interest_stress |
Interest stress. Reference type: |
output_maturities |
Output maturities. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rfr-curve-2027-flat") result <- do.call(rfr_curve_spot_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rfr-curve-2027-flat") result <- do.call(rfr_curve_spot_2027, c(case$kwargs, list(context = context))) result$value
The probability must match this cashflow's horizon; it is not a credit spread. Do not apply this twice to already adjusted cashflows. This does not project cashflows, select eligible assets or authorize matching.
rfr_default_adjusted_cashflow( cashflow, default_probability, qualification_reference, context, ... )rfr_default_adjusted_cashflow( cashflow, default_probability, qualification_reference, context, ... )
cashflow |
Cashflow. Reference type: |
default_probability |
Default probability. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-derisk-zero-pd") result <- do.call(rfr_default_adjusted_cashflow, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-derisk-zero-pd") result <- do.call(rfr_default_adjusted_cashflow, c(case$kwargs, list(context = context))) result$value
Loss conditional on default under the fundamental-spread recovery assumption.
rfr_default_loss_on_market_value( market_value, qualification_reference, context, ... )rfr_default_loss_on_market_value( market_value, qualification_reference, context, ... )
market_value |
Market value. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-default-loss-2") result <- do.call(rfr_default_loss_on_market_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-default-loss-2") result <- do.call(rfr_default_loss_on_market_value, c(case$kwargs, list(context = context))) result$value
Distinct downgrade states share a horizon and valuation basis. Residual probability is no downgrade, with no downgrade loss; never renormalize. The result is a currency amount, NOT a spread or a market-value percentage.
rfr_downgrade_expected_loss(scenarios, qualification_reference, context, ...)rfr_downgrade_expected_loss(scenarios, qualification_reference, context, ...)
scenarios |
Scenarios. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-downgrade-baseline-zero") result <- do.call(rfr_downgrade_expected_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-downgrade-baseline-zero") result <- do.call(rfr_downgrade_expected_loss, c(case$kwargs, list(context = context))) result$value
Times are supplied year fractions, not an implicit day-count convention. Mixed signs need external review because uniqueness is not guaranteed. Numerical tolerances below are implementation choices, not legal parameters.
rfr_equivalent_annual_rate( cashflows, present_value, qualification_reference, context, ... )rfr_equivalent_annual_rate( cashflows, present_value, qualification_reference, context, ... )
cashflows |
Cashflows. Reference type: |
present_value |
Present value. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-rate-negative") result <- do.call(rfr_equivalent_annual_rate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-rate-negative") result <- do.call(rfr_equivalent_annual_rate, c(case$kwargs, list(context = context))) result$value
LLFR determination, UFR publication and VA treatment are external. Alpha comes from the profile, not an untracked arbitrary caller coefficient.
rfr_extrapolated_forward_2027( ufr, last_liquid_forward, time_after_fsp, phase_in, approval_reference = NULL, qualification_reference, context, ... )rfr_extrapolated_forward_2027( ufr, last_liquid_forward, time_after_fsp, phase_in, approval_reference = NULL, qualification_reference, context, ... )
ufr |
Ufr. Reference type: |
last_liquid_forward |
Last liquid forward. Reference type: |
time_after_fsp |
Time after fsp. Reference type: |
phase_in |
Phase in. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-forward-zero") result <- do.call(rfr_extrapolated_forward_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-forward-zero") result <- do.call(rfr_extrapolated_forward_2027, c(case$kwargs, list(context = context))) result$value
Scaled time weights avoid overflow. This API is strictly beyond FSP; it neither selects FSP nor adds VA/MA automatically.
rfr_extrapolated_spot_2027( fsp_years, spot_at_fsp, time_after_fsp, extrapolated_forward, qualification_reference, context, ... )rfr_extrapolated_spot_2027( fsp_years, spot_at_fsp, time_after_fsp, extrapolated_forward, qualification_reference, context, ... )
fsp_years |
Fsp years. Reference type: |
spot_at_fsp |
Spot at fsp. Reference type: |
time_after_fsp |
Time after fsp. Reference type: |
extrapolated_forward |
Extrapolated forward. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-spot-zero") result <- do.call(rfr_extrapolated_spot_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-spot-zero") result <- do.call(rfr_extrapolated_spot_2027, c(case$kwargs, list(context = context))) result$value
Own versioned alpha, with annual approved transition and no post-2032 trend.
rfr_extrapolation_alpha_2027( phase_in, approval_reference = NULL, qualification_reference, context, ... )rfr_extrapolation_alpha_2027( phase_in, approval_reference = NULL, qualification_reference, context, ... )
phase_in |
Phase in. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-alpha-EUR-final") result <- do.call(rfr_extrapolation_alpha_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-extrap-alpha-EUR-final") result <- do.call(rfr_extrapolation_alpha_2027, c(case$kwargs, list(context = context))) result$value
Initial EUR minimum is qualified at28Jan2025 for20years. A EUR source-change minimum is qualified at the first new-source date against the previous calendar-year FSP. A next-lower preserving value is externally identified; Article43a(2) does not justify inventing a market selection algorithm here. Other-currency initial LLP is qualified at29Jan2027, not today's maturity.
rfr_fsp_currency_percentage_2027( minimum_euro_share, calibration = "initial", last_liquid_maturity_2027 = NULL, rounded_preserves_fsp = NULL, lower_preserving_share = NULL, qualification_reference, context, ... )rfr_fsp_currency_percentage_2027( minimum_euro_share, calibration = "initial", last_liquid_maturity_2027 = NULL, rounded_preserves_fsp = NULL, lower_preserving_share = NULL, qualification_reference, context, ... )
minimum_euro_share |
Minimum euro share. Reference type: |
calibration |
Calibration. Reference type: |
last_liquid_maturity_2027 |
Last liquid maturity 2027. Reference type: |
rounded_preserves_fsp |
Rounded preserves fsp. Reference type: |
lower_preserving_share |
Lower preserving share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("closing-rules-fsp-zero") result <- do.call(rfr_fsp_currency_percentage_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("closing-rules-fsp-zero") result <- do.call(rfr_fsp_currency_percentage_2027, c(case$kwargs, list(context = context))) result$value
eu_central means EU member-state central governments/central banks, not all public-sector entities. Statistics and 30-year history qualification remain external; this does not derive PDs or downgrade replacement losses.
rfr_fundamental_spread( long_term_average_spread, asset_class, default_statistics_reliable, default_spread = NULL, downgrade_spread = NULL, qualification_reference, context, ... )rfr_fundamental_spread( long_term_average_spread, asset_class, default_statistics_reliable, default_spread = NULL, downgrade_spread = NULL, qualification_reference, context, ... )
long_term_average_spread |
Long term average spread. Reference type: |
asset_class |
Asset class. Reference type: |
default_statistics_reliable |
Default statistics reliable. Reference type: |
default_spread |
Default spread. Reference type: |
downgrade_spread |
Downgrade spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-fs-6") result <- do.call(rfr_fundamental_spread, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-fs-6") result <- do.call(rfr_fundamental_spread, c(case$kwargs, list(context = context))) result$value
Requires matching externally qualified sector/CQS/tenor inputs. Not an automatic residual selection for every possible matching portfolio.
rfr_fundamental_spread_other_than_pd( fundamental_spread, default_spread, downgrade_spread, qualification_reference, context, ... )rfr_fundamental_spread_other_than_pd( fundamental_spread, default_spread, downgrade_spread, qualification_reference, context, ... )
fundamental_spread |
Fundamental spread. Reference type: |
default_spread |
Default spread. Reference type: |
downgrade_spread |
Downgrade spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-rest-fs-zero") result <- do.call(rfr_fundamental_spread_other_than_pd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-rest-fs-zero") result <- do.call(rfr_fundamental_spread_other_than_pd, c(case$kwargs, list(context = context))) result$value
Component a is the one-year forward immediately preceding FSP in the SRC-0211 construction; components b run from FSP to later liquid maturities. Only a receives the explicit VA. Market selection, forward derivation and VA qualification are external. Here volatility_adjustment is a CONTINUOUS forward increment; the integrated rfr_curve_spot_2027 converts annual VA using log1p first.
rfr_last_liquid_forward_2027( fsp_forward, later_forwards, liquid_swaps_beyond_fsp, fsp_average_notional = NULL, apply_volatility_adjustment, volatility_adjustment = NULL, qualification_reference, context, ... )rfr_last_liquid_forward_2027( fsp_forward, later_forwards, liquid_swaps_beyond_fsp, fsp_average_notional = NULL, apply_volatility_adjustment, volatility_adjustment = NULL, qualification_reference, context, ... )
fsp_forward |
Fsp forward. Reference type: |
later_forwards |
Later forwards. Reference type: |
liquid_swaps_beyond_fsp |
Liquid swaps beyond fsp. Reference type: |
fsp_average_notional |
Fsp average notional. Reference type: |
apply_volatility_adjustment |
Apply volatility adjustment. Reference type: |
volatility_adjustment |
Volatility adjustment. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-llfr-fallback") result <- do.call(rfr_last_liquid_forward_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-llfr-fallback") result <- do.call(rfr_last_liquid_forward_2027, c(case$kwargs, list(context = context))) result$value
Country debt/all-assets share, not an insurer's own portfolio weight.
rfr_macro_country_factor( country_risk_corrected_spread, debt_asset_share, qualification_reference, context, ... )rfr_macro_country_factor( country_risk_corrected_spread, debt_asset_share, qualification_reference, context, ... )
country_risk_corrected_spread |
Country risk corrected spread. Reference type: |
debt_asset_share |
Debt asset share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-country-factor-3") result <- do.call(rfr_macro_country_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-country-factor-3") result <- do.call(rfr_macro_country_factor, c(case$kwargs, list(context = context))) result$value
Euro macro add-on; explicitly incompatible with undertaking-specific adjustment.
rfr_macro_volatility_adjustment( country_risk_corrected_spread, euro_risk_corrected_spread, credit_spread_sensitivity, country_factor, undertaking_specific_adjustment_applies, qualification_reference, context, ... )rfr_macro_volatility_adjustment( country_risk_corrected_spread, euro_risk_corrected_spread, credit_spread_sensitivity, country_factor, undertaking_specific_adjustment_applies, qualification_reference, context, ... )
country_risk_corrected_spread |
Country risk corrected spread. Reference type: |
euro_risk_corrected_spread |
Euro risk corrected spread. Reference type: |
credit_spread_sensitivity |
Credit spread sensitivity. Reference type: |
country_factor |
Country factor. Reference type: |
undertaking_specific_adjustment_applies |
Undertaking specific adjustment applies. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-macro-va-2") result <- do.call(rfr_macro_volatility_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-macro-va-2") result <- do.call(rfr_macro_volatility_adjustment, c(case$kwargs, list(context = context))) result$value
Positive CRA is subtracted; nonpositive CURA is added. No zero floor. Inputs must refer to the same qualified market instrument/tenor/date; this is not a shift to an already extrapolated curve or a VA/MA operation.
rfr_market_rate_adjustment( market_rate, credit_adjustment, currency_adjustment, qualification_reference, context, ... )rfr_market_rate_adjustment( market_rate, credit_adjustment, currency_adjustment, qualification_reference, context, ... )
market_rate |
Market rate. Reference type: |
credit_adjustment |
Credit adjustment. Reference type: |
currency_adjustment |
Currency adjustment. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "DKK", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-cura-baseline-market-no-adjustments") result <- do.call(rfr_market_rate_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "DKK", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-cura-baseline-market-no-adjustments") result <- do.call(rfr_market_rate_adjustment, c(case$kwargs, list(context = context))) result$value
The asset-equivalent rate matches their PV to eligible assigned asset value; the liability-equivalent rate matches their PV to the basic-curve BE. The residual FS excludes any part already included in asset cashflow adjustment. Optional declared application/asset comparisons add controlled eligibility and FS limits; without them these aspects stay NOT_ASSESSED. No asset coupon substitution, automatic rating, permission or curve application.
rfr_matching_adjustment( asset_equivalent_rate, liability_equivalent_rate, residual_fundamental_spread, qualification_reference, context, application = NULL, restructured_assets = NULL, subinvestment_grade_comparison = NULL, ... )rfr_matching_adjustment( asset_equivalent_rate, liability_equivalent_rate, residual_fundamental_spread, qualification_reference, context, application = NULL, restructured_assets = NULL, subinvestment_grade_comparison = NULL, ... )
asset_equivalent_rate |
Asset equivalent rate. Reference type: |
liability_equivalent_rate |
Liability equivalent rate. Reference type: |
residual_fundamental_spread |
Residual fundamental spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
application |
Application. Reference type: |
restructured_assets |
Restructured assets. Reference type: |
subinvestment_grade_comparison |
Subinvestment grade comparison. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-5") result <- do.call(rfr_matching_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-5") result <- do.call(rfr_matching_adjustment, c(case$kwargs, list(context = context))) result$value
Nonnegative means this numerical condition passes, not overall MA eligibility. Nonpositive base BE is deliberately referred for review, not reinterpreted.
rfr_matching_mortality_headroom( base_best_estimate, stressed_best_estimate, qualification_reference, context, ... )rfr_matching_mortality_headroom( base_best_estimate, stressed_best_estimate, qualification_reference, context, ... )
base_best_estimate |
Base best estimate. Reference type: |
stressed_best_estimate |
Stressed best estimate. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-headroom-1") result <- do.call(rfr_matching_mortality_headroom, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-headroom-1") result <- do.call(rfr_matching_mortality_headroom, c(case$kwargs, list(context = context))) result$value
Scenario valuations must share a base and currency. Equal BOF with distinct BE values requires explicit selection among the ties; there is no legal worst-BE tie rule invented here. Valuation and overall eligibility stay external.
rfr_matching_mortality_selected_be( scenarios, selected_scenario = NULL, qualification_reference, context, contract_selection = NULL, ... )rfr_matching_mortality_selected_be( scenarios, selected_scenario = NULL, qualification_reference, context, contract_selection = NULL, ... )
scenarios |
Scenarios. Reference type: |
selected_scenario |
Selected scenario. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
contract_selection |
Contract selection. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-selection-6") result <- do.call(rfr_matching_mortality_selected_be, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-selection-6") result <- do.call(rfr_matching_mortality_selected_be, c(case$kwargs, list(context = context))) result$value
MA qualification stress assumption, not life SCR or automatic scenario selection.
rfr_matching_mortality_stress( rate, scenario, rate_basis, selected, qualification_reference, context, ... )rfr_matching_mortality_stress( rate, scenario, rate_basis, selected, qualification_reference, context, ... )
rate |
Rate. Reference type: |
scenario |
Scenario. Reference type: |
rate_basis |
Rate basis. Reference type: |
selected |
Selected. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-mortality-6") result <- do.call(rfr_matching_mortality_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rfr-ma-mortality-6") result <- do.call(rfr_matching_mortality_stress, c(case$kwargs, list(context = context))) result$value
Synthetic market-data template
rfr_monthly_data()rfr_monthly_data()
A fresh-by-value list with an explicit SYNTHETIC_DEMO status, recipe
and illustrative dated tables. These are not production market inputs.
rfr_monthly_data()$statusrfr_monthly_data()$status
Peg eligibility and use of the adjusted euro curve under Article48 are external. The currency identifier alone is not evidence of their validity.
rfr_pegged_credit_spread_sensitivity( asset_pvbp, liability_pvbp, pegged_currency, qualification_reference, context, ... )rfr_pegged_credit_spread_sensitivity( asset_pvbp, liability_pvbp, pegged_currency, qualification_reference, context, ... )
asset_pvbp |
Asset pvbp. Reference type: |
liability_pvbp |
Liability pvbp. Reference type: |
pegged_currency |
Pegged currency. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cssr-pegged-3") result <- do.call(rfr_pegged_credit_spread_sensitivity, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-cssr-pegged-3") result <- do.call(rfr_pegged_credit_spread_sensitivity, c(case$kwargs, list(context = context))) result$value
Weights refer to the whole reference portfolio, not just bonds. Category corrections and classifications remain externally qualified inputs. This published positive-part formula is distinct from calibrating each input.
rfr_portfolio_risk_correction( government_weight, corporate_weight, government_risk_correction, corporate_risk_correction, qualification_reference, context, fundamental_spread_inputs = NULL, ... )rfr_portfolio_risk_correction( government_weight, corporate_weight, government_risk_correction, corporate_risk_correction, qualification_reference, context, fundamental_spread_inputs = NULL, ... )
government_weight |
Government weight. Reference type: |
corporate_weight |
Corporate weight. Reference type: |
government_risk_correction |
Government risk correction. Reference type: |
corporate_risk_correction |
Corporate risk correction. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
fundamental_spread_inputs |
Fundamental spread inputs. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-portfolio-rc-4") result <- do.call(rfr_portfolio_risk_correction, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-portfolio-rc-4") result <- do.call(rfr_portfolio_risk_correction, c(case$kwargs, list(context = context))) result$value
Whole-portfolio weights: do not renormalize the two bond categories.
rfr_reference_portfolio_spread( government_weight, corporate_weight, government_spread, corporate_spread, qualification_reference, context, ... )rfr_reference_portfolio_spread( government_weight, corporate_weight, government_spread, corporate_spread, qualification_reference, context, ... )
government_weight |
Government weight. Reference type: |
corporate_weight |
Corporate weight. Reference type: |
government_spread |
Government spread. Reference type: |
corporate_spread |
Corporate spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-refspread-4") result <- do.call(rfr_reference_portfolio_spread, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-refspread-4") result <- do.call(rfr_reference_portfolio_spread, c(case$kwargs, list(context = context))) result$value
Subtract an externally qualified risk correction without an output floor.
rfr_risk_corrected_spread( spread, risk_correction, qualification_reference, context, ... )rfr_risk_corrected_spread( spread, risk_correction, qualification_reference, context, ... )
spread |
Spread. Reference type: |
risk_correction |
Risk correction. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-riskspread-3") result <- do.call(rfr_risk_corrected_spread, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-riskspread-3") result <- do.call(rfr_risk_corrected_spread, c(case$kwargs, list(context = context))) result$value
EEA sovereign classification, matching duration/quality and 30-year LTAS estimation are external. This is not a choice of portfolio-weight denominator.
rfr_risk_correction_2027( spread, long_term_average_spread, asset_class, qualification_reference, context, ... )rfr_risk_correction_2027( spread, long_term_average_spread, asset_class, qualification_reference, context, ... )
spread |
Spread. Reference type: |
long_term_average_spread |
Long term average spread. Reference type: |
asset_class |
Asset class. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rc-other-0") result <- do.call(rfr_risk_correction_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-rc-other-0") result <- do.call(rfr_risk_correction_2027, c(case$kwargs, list(context = context))) result$value
Cashflow rows are payment dates, columns are instruments. Prices share their cashflows' nominal basis. Signed coupons are allowed (section9.15). The last payment time is the externally qualified LLP. Qualification includes DLT selection, input availability, dates, CRA and currency basis. Alpha search is the documented heuristic, not a global optimality proof. The technical search bound is explicit and is NOT a regulatory alpha cap.
rfr_smith_wilson_spot( payment_times, cashflows, prices, maturity, ufr, qualification_reference, output_maturities = list(), alpha_search_max = 2, volatility_adjustment = NULL, matching_adjustment = NULL, context, ... )rfr_smith_wilson_spot( payment_times, cashflows, prices, maturity, ufr, qualification_reference, output_maturities = list(), alpha_search_max = 2, volatility_adjustment = NULL, matching_adjustment = NULL, context, ... )
payment_times |
Payment times. Reference type: |
cashflows |
Cashflows. Reference type: |
prices |
Prices. Reference type: |
maturity |
Maturity. Reference type: |
ufr |
Ufr. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
output_maturities |
Output maturities. Reference type: |
alpha_search_max |
Alpha search max. Reference type: |
volatility_adjustment |
Volatility adjustment. Reference type: |
matching_adjustment |
Matching adjustment. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-smith-wilson-flat-zero") result <- do.call(rfr_smith_wilson_spot, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-smith-wilson-flat-zero") result <- do.call(rfr_smith_wilson_spot, c(case$kwargs, list(context = context))) result$value
Year fractions and curve qualification are explicit external inputs; this performs no interpolation, day-count choice or VA/MA eligibility decision.
rfr_spot_discount_factor( spot_rate, time_years, qualification_reference, context, ... )rfr_spot_discount_factor( spot_rate, time_years, qualification_reference, context, ... )
spot_rate |
Spot rate. Reference type: |
time_years |
Time years. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rfr-discount-future-five-two") result <- do.call(rfr_spot_discount_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rfr-discount-future-five-two") result <- do.call(rfr_spot_discount_factor, c(case$kwargs, list(context = context))) result$value
The equivalent annual rate must value the eligible portfolio on the matching basis including applicable VA. Existing rfr_equivalent_annual_rate can solve nonnegative cashflows; mixed-sign portfolios need qualified external roots. Do not include eligible obligations in VA calculation or combine with MA/308d.
rfr_transitional_spot_rate( spot_rate, legacy_rate, equivalent_annual_rate, matching_adjustment_used, technical_provisions_transition_used, approval_reference, qualification_reference, context, ... )rfr_transitional_spot_rate( spot_rate, legacy_rate, equivalent_annual_rate, matching_adjustment_used, technical_provisions_transition_used, approval_reference, qualification_reference, context, ... )
spot_rate |
Spot rate. Reference type: |
legacy_rate |
Legacy rate. Reference type: |
equivalent_annual_rate |
Equivalent annual rate. Reference type: |
matching_adjustment_used |
Matching adjustment used. Reference type: |
technical_provisions_transition_used |
Technical provisions transition used. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ltg-transition-baseline-rate-2025-01-17") result <- do.call(rfr_transitional_spot_rate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ltg-transition-baseline-rate-2025-01-17") result <- do.call(rfr_transitional_spot_rate, c(case$kwargs, list(context = context))) result$value
Annual history ends one year before that calculation, hence two years before application. AMECO/OECD source qualification and any no-target ARMA projection remain external. No term premium is added. Fractions preserve decimal grid/threshold boundaries and never fill missing years.
rfr_ultimate_forward_rate( annual_rates, previous_real_rate, previous_ufr, inflation, qualification_reference, context, ... )rfr_ultimate_forward_rate( annual_rates, previous_real_rate, previous_ufr, inflation, qualification_reference, context, ... )
annual_rates |
Annual rates. Reference type: |
previous_real_rate |
Previous real rate. Reference type: |
previous_ufr |
Previous ufr. Reference type: |
inflation |
Inflation. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-ufr-complete-history-baseline") result <- do.call(rfr_ultimate_forward_rate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-ufr-complete-history-baseline") result <- do.call(rfr_ultimate_forward_rate, c(case$kwargs, list(context = context))) result$value
Qualified asset values exclude immaterial unit-linked spread exposure. Qualified BEL includes future discretionary benefits without feeding back the asset spread shock. Paired values are already in one reporting currency.
rfr_va_pvbp( unadjusted_value, adjusted_value, notional_va, valuation_kind, qualification_reference, context, pegged_currency = NULL, pegged_notional_va = NULL, ... )rfr_va_pvbp( unadjusted_value, adjusted_value, notional_va, valuation_kind, qualification_reference, context, pegged_currency = NULL, pegged_notional_va = NULL, ... )
unadjusted_value |
Unadjusted value. Reference type: |
adjusted_value |
Adjusted value. Reference type: |
notional_va |
Notional va. Reference type: |
valuation_kind |
Valuation kind. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
pegged_currency |
Pegged currency. Reference type: |
pegged_notional_va |
Pegged notional va. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: currency_per_rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pvbp-0") result <- do.call(rfr_va_pvbp, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-pvbp-0") result <- do.call(rfr_va_pvbp, c(case$kwargs, list(context = context))) result$value
Country uplift is added BEFORE the factor and requires both strict tests. Official data, MA exclusion and pre-extrapolation application remain external.
rfr_volatility_adjustment( currency_spread, country_applicable, country_spread = NULL, qualification_reference, context, ... )rfr_volatility_adjustment( currency_spread, country_applicable, country_spread = NULL, qualification_reference, context, ... )
currency_spread |
Currency spread. Reference type: |
country_applicable |
Country applicable. Reference type: |
country_spread |
Country spread. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-va-1") result <- do.call(rfr_volatility_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rfr-va-1") result <- do.call(rfr_volatility_adjustment, c(case$kwargs, list(context = context))) result$value
Currency VA only; no automatic macro addition or undertaking-specific approval.
rfr_volatility_adjustment_2027( risk_corrected_spread, credit_spread_sensitivity, qualification_reference, context, firm_adjustment = NULL, ... )rfr_volatility_adjustment_2027( risk_corrected_spread, credit_spread_sensitivity, qualification_reference, context, firm_adjustment = NULL, ... )
risk_corrected_spread |
Risk corrected spread. Reference type: |
credit_spread_sensitivity |
Credit spread sensitivity. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
firm_adjustment |
Firm adjustment. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: rate.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-va-2") result <- do.call(rfr_volatility_adjustment_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-va-2") result <- do.call(rfr_volatility_adjustment_2027, c(case$kwargs, list(context = context))) result$value
Discount SCR(t) of the Art.38 reference undertaking at basic rates t+1.
risk_margin(projected_scr, basic_rates, runoff_complete, context, ...)risk_margin(projected_scr, basic_rates, runoff_complete, context, ...)
projected_scr |
Projected scr. Reference type: |
basic_rates |
Basic rates. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("risk-margin-2027-one-year") result <- do.call(risk_margin, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("risk-margin-2027-one-year") result <- do.call(risk_margin, c(case$kwargs, list(context = context))) result$value
The supplied rate is the externally qualified IRR under the basic RFR term structure. Signed individual cashflows are allowed; whole-path BE suitability remains an external condition. Lambda is included in adjusted duration ONCE.
risk_margin_adjusted_duration_2027( initial_scr, cashflows, internal_rate, conditions, eligibility_reference, basis_reference, context, ... )risk_margin_adjusted_duration_2027( initial_scr, cashflows, internal_rate, conditions, eligibility_reference, basis_reference, context, ... )
initial_scr |
Initial scr. Reference type: |
cashflows |
Cashflows. Reference type: |
internal_rate |
Internal rate. Reference type: |
conditions |
Conditions. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
basis_reference |
Basis reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rm-duration-future-zero-scr") result <- do.call(risk_margin_adjusted_duration_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rm-duration-future-zero-scr") result <- do.call(risk_margin_adjusted_duration_2027, c(case$kwargs, list(context = context))) result$value
Duration and rate conventions are externally qualified. No curve fitting, runoff model or automatic suitability determination is performed.
risk_margin_duration( initial_scr, modified_duration, discount_rate, conditions, eligibility_reference, basis_reference, context, ... )risk_margin_duration( initial_scr, modified_duration, discount_rate, conditions, eligibility_reference, basis_reference, context, ... )
initial_scr |
Initial scr. Reference type: |
modified_duration |
Modified duration. Reference type: |
discount_rate |
Discount rate. Reference type: |
conditions |
Conditions. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
basis_reference |
Basis reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-duration-baseline-zero-scr") result <- do.call(risk_margin_duration, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-duration-baseline-zero-scr") result <- do.call(risk_margin_duration, c(case$kwargs, list(context = context))) result$value
A zero result does not approve another method. Suitability covers EVERY runoff time; no such finding is inferred from one successful valuation.
risk_margin_internal_model_required( uses_approved_internal_model, suitable_all_runoff_times, qualification_reference, context, ... )risk_margin_internal_model_required( uses_approved_internal_model, suitable_all_runoff_times, qualification_reference, context, ... )
uses_approved_internal_model |
Uses approved internal model. Reference type: |
suitable_all_runoff_times |
Suitable all runoff times. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-model-baseline-required") result <- do.call(risk_margin_internal_model_required, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-model-baseline-required") result <- do.call(risk_margin_internal_model_required, c(case$kwargs, list(context = context))) result$value
Shares cover the actual portfolio's LOBs. Omitted unused LOBs are permitted only with explicit full-scope confirmation. A1e-12 sum tolerance is numerical, not a regulatory materiality threshold; shares are never renormalised. Signed allocations are outside this component, not declared legally banned.
risk_margin_lob_allocation( total_risk_margin, allocation_shares, lob, lifetime_contributions_qualified, complete_scope_confirmed, allocation_reference, context, ... )risk_margin_lob_allocation( total_risk_margin, allocation_shares, lob, lifetime_contributions_qualified, complete_scope_confirmed, allocation_reference, context, ... )
total_risk_margin |
Total risk margin. Reference type: |
allocation_shares |
Allocation shares. Reference type: |
lob |
Lob. Reference type: |
lifetime_contributions_qualified |
Lifetime contributions qualified. Reference type: |
complete_scope_confirmed |
Complete scope confirmed. Reference type: |
allocation_reference |
Allocation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-allocation-baseline-lob-1") result <- do.call(risk_margin_lob_allocation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-allocation-baseline-lob-1") result <- do.call(risk_margin_lob_allocation, c(case$kwargs, list(context = context))) result$value
Percentage is a fraction (0.03 means3%). No unsupported100% cap is invented. Scope, calibration, hierarchy, future BE and options/guarantees restrictions are documented external qualifications, not inferred from the two numbers.
risk_margin_percentage( net_best_estimate, percentage, conditions, eligibility_reference, percentage_reference, context, ... )risk_margin_percentage( net_best_estimate, percentage, conditions, eligibility_reference, percentage_reference, context, ... )
net_best_estimate |
Net best estimate. Reference type: |
percentage |
Percentage. Reference type: |
conditions |
Conditions. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
percentage_reference |
Percentage reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-simple-baseline-m4-zero") result <- do.call(risk_margin_percentage, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-simple-baseline-m4-zero") result <- do.call(risk_margin_percentage, c(case$kwargs, list(context = context))) result$value
BE(t) is valued AT time t, not a time-zero discounted cashflow surrogate. Whole-path nonnegative BE and risk-profile assumptions are externally qualified. No BE forecast or automatic method selection is produced.
risk_margin_proportional_scr( initial_scr, initial_net_best_estimate, future_net_best_estimate, conditions, eligibility_reference, projection_reference, context, ... )risk_margin_proportional_scr( initial_scr, initial_net_best_estimate, future_net_best_estimate, conditions, eligibility_reference, projection_reference, context, ... )
initial_scr |
Initial scr. Reference type: |
initial_net_best_estimate |
Initial net best estimate. Reference type: |
future_net_best_estimate |
Future net best estimate. Reference type: |
conditions |
Conditions. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
projection_reference |
Projection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-simple-baseline-m2-zero") result <- do.call(risk_margin_proportional_scr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-simple-baseline-m2-zero") result <- do.call(risk_margin_proportional_scr, c(case$kwargs, list(context = context))) result$value
Preserve signs and disclose a negative implied balance. Qualification of values and a feasible market-risk-minimising portfolio remain external.
risk_margin_reference_asset_balance( reference_scr, technical_provisions, recoverables, qualification_reference, context, ... )risk_margin_reference_asset_balance( reference_scr, technical_provisions, recoverables, qualification_reference, context, ... )
reference_scr |
Reference scr. Reference type: |
technical_provisions |
Technical provisions. Reference type: |
recoverables |
Recoverables. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reference-baseline-negative") result <- do.call(risk_margin_reference_asset_balance, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reference-baseline-negative") result <- do.call(risk_margin_reference_asset_balance, c(case$kwargs, list(context = context))) result$value
Composite splitting and residual non-interest market risk have explicit externally assessed conditions. No quantitative materiality cutoff is invented; deferred-tax loss absorption must not be assumed.
risk_margin_reference_evidence_check( evidence, composite_undertaking, material_residual_market_risk, qualification_reference, assessment_reference, context, ... )risk_margin_reference_evidence_check( evidence, composite_undertaking, material_residual_market_risk, qualification_reference, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
composite_undertaking |
Composite undertaking. Reference type: |
material_residual_market_risk |
Material residual market risk. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reference-baseline-tax-missing") result <- do.call(risk_margin_reference_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reference-baseline-tax-missing") result <- do.call(risk_margin_reference_evidence_check, c(case$kwargs, list(context = context))) result$value
Zero premium volume must be externally justified; no materiality threshold is invented. Sigma and claims projections are external, including any USP or profile-specific reinsurance adjustments. No lambda is applied here.
risk_margin_reserve_scr( net_claims_best_estimate, aggregated_reserve_sigma, premium_volume, conditions, eligibility_reference, projection_reference, context, ... )risk_margin_reserve_scr( net_claims_best_estimate, aggregated_reserve_sigma, premium_volume, conditions, eligibility_reference, projection_reference, context, ... )
net_claims_best_estimate |
Net claims best estimate. Reference type: |
aggregated_reserve_sigma |
Aggregated reserve sigma. Reference type: |
premium_volume |
Premium volume. Reference type: |
conditions |
Conditions. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
projection_reference |
Projection reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reserve-baseline-zero") result <- do.call(risk_margin_reserve_scr, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rm-reserve-baseline-zero") result <- do.call(risk_margin_reserve_scr, c(case$kwargs, list(context = context))) result$value
Proportional_factor is required only for a qualified short contract without valid209(3) replacement. Its exposure-dependent time basis is external. Finite/similar arrangements are excluded from volume/USP even if209 passes. Scenario valuation must already reflect only the actually transferred risk; this factor is NOT applied blindly to recoverables, LGD or capital amounts. counterparty_factor may bind the separately calculated211 haircut. Default1 explicitly declares full counterparty recognition, never verifies it. Optional residential mortgage guarantee payment window implements only future215(c)(iii)/(d); all other guarantee criteria remain in qualification.
risk_mitigation_recognition_factor( remaining_months, conditions, purpose, instrument_kind, finite_or_similar, replacement = NULL, proportional_factor = NULL, counterparty_factor = 1, residential_guarantee_payment_months = NULL, qualification_reference, context, ... )risk_mitigation_recognition_factor( remaining_months, conditions, purpose, instrument_kind, finite_or_similar, replacement = NULL, proportional_factor = NULL, counterparty_factor = 1, residential_guarantee_payment_months = NULL, qualification_reference, context, ... )
remaining_months |
Remaining months. Reference type: |
conditions |
Conditions. Reference type: |
purpose |
Purpose. Reference type: |
instrument_kind |
Instrument kind. Reference type: |
finite_or_similar |
Finite or similar. Reference type: |
replacement |
Replacement. Reference type: |
proportional_factor |
Proportional factor. Reference type: |
counterparty_factor |
Counterparty factor. Reference type: |
residential_guarantee_payment_months |
Residential guarantee payment months. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("closing-rules-baseline-finite-usp") result <- do.call(risk_mitigation_recognition_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("closing-rules-baseline-finite-usp") result <- do.call(risk_mitigation_recognition_factor, c(case$kwargs, list(context = context))) result$value
Share is relative to ALL held assets, not the equity portfolio. The counterfactual SCR-compliance fact must already have been established. Exactly4% does not trigger the share branch. No general reporting waiver.
rsr_long_term_equity_extra_disclosure_2027( long_term_equity_asset_share, scr_compliant_without_treatment, qualification_reference, context, ... )rsr_long_term_equity_extra_disclosure_2027( long_term_equity_asset_share, scr_compliant_without_treatment, qualification_reference, context, ... )
long_term_equity_asset_share |
Long term equity asset share. Reference type: |
scr_compliant_without_treatment |
Scr compliant without treatment. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rsr-content-future-lte-0-true") result <- do.call(rsr_long_term_equity_extra_disclosure_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("rsr-content-future-lte-0-true") result <- do.call(rsr_long_term_equity_extra_disclosure_2027, c(case$kwargs, list(context = context))) result$value
Available dated rule profiles
rule_profiles()rule_profiles()
Profiles and their applicability guards are inherited from the published Python Golden Source. No latest profile is selected implicitly.
Named list of profile intervals, supported methods and resource aliases.
names(rule_profiles()$profiles)names(rule_profiles()$profiles)
Loss from external BOF; optional gross83 input checks are not a valuation model.
scenario_loss(base_bof, stressed_bof, context, assumption_checks = NULL, ...)scenario_loss(base_bof, stressed_bof, context, assumption_checks = NULL, ...)
base_bof |
Base bof. Reference type: |
stressed_bof |
Stressed bof. Reference type: |
context |
Explicit |
assumption_checks |
Assumption checks. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("scenario-2027-bof-0") result <- do.call(scenario_loss, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("scenario-2027-bof-0") result <- do.call(scenario_loss, c(case$kwargs, list(context = context))) result$value
Credit/surety remain prohibited. Legal expenses require the assistance main branch and the explicitly declared travel or sea-vessel exception; all base conditions still apply. This function does not grant or verify a licence.
scope_ancillary_risk_conditions( ancillary_branch, main_branch, main_risk_authorised, linked_to_main, same_object, same_contract, legal_expenses_exception = NULL, qualification_reference, context, ... )scope_ancillary_risk_conditions( ancillary_branch, main_branch, main_risk_authorised, linked_to_main, same_object, same_contract, legal_expenses_exception = NULL, qualification_reference, context, ... )
ancillary_branch |
Ancillary branch. Reference type: |
main_branch |
Main branch. Reference type: |
main_risk_authorised |
Main risk authorised. Reference type: |
linked_to_main |
Linked to main. Reference type: |
same_object |
Same object. Reference type: |
same_contract |
Same contract. Reference type: |
legal_expenses_exception |
Legal expenses exception. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-ancillary-baseline-ordinary") result <- do.call(scope_ancillary_risk_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-ancillary-baseline-ordinary") result <- do.call(scope_ancillary_risk_conditions, c(case$kwargs, list(context = context))) result$value
Inputs are externally qualified gross EUR amounts. No netting or zero floor is inferred. Article4(2-5) time rules, authorisation and cross-border business must be assessed separately; a result of1 is not a scope exemption.
scope_volume_conditions( gross_written_premiums, gross_technical_provisions, reinsurance_written_premiums, reinsurance_technical_provisions, part_of_group, group_gross_technical_provisions = NULL, has_disallowed_business, qualification_reference, context, ... )scope_volume_conditions( gross_written_premiums, gross_technical_provisions, reinsurance_written_premiums, reinsurance_technical_provisions, part_of_group, group_gross_technical_provisions = NULL, has_disallowed_business, qualification_reference, context, ... )
gross_written_premiums |
Gross written premiums. Reference type: |
gross_technical_provisions |
Gross technical provisions. Reference type: |
reinsurance_written_premiums |
Reinsurance written premiums. Reference type: |
reinsurance_technical_provisions |
Reinsurance technical provisions. Reference type: |
part_of_group |
Part of group. Reference type: |
group_gross_technical_provisions |
Group gross technical provisions. Reference type: |
has_disallowed_business |
Has disallowed business. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-volume-baseline-zero") result <- do.call(scope_volume_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-volume-baseline-zero") result <- do.call(scope_volume_conditions, c(case$kwargs, list(context = context))) result$value
Period consecutiveness and historically applicable thresholds are externally qualified. Different monetary criteria must not be mixed within a series. This component does not select an effective legal regime for the entity.
scope_volume_entry_trigger( annual_exceedance, qualification_reference, context, ... )scope_volume_entry_trigger( annual_exceedance, qualification_reference, context, ... )
annual_exceedance |
Annual exceedance. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-history-baseline-entry-all") result <- do.call(scope_volume_entry_trigger, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-history-baseline-entry-all") result <- do.call(scope_volume_entry_trigger, c(case$kwargs, list(context = context))) result$value
Forecasts are external. Cross-border activity, voluntary authorisation and supervisory satisfaction remain separate, even when this indicator is1.
scope_volume_release_history( past_any_exceedance, forecast_any_exceedance, qualification_reference, context, ... )scope_volume_release_history( past_any_exceedance, forecast_any_exceedance, qualification_reference, context, ... )
past_any_exceedance |
Past any exceedance. Reference type: |
forecast_any_exceedance |
Forecast any exceedance. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-history-baseline-release-breach-0") result <- do.call(scope_volume_release_history, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scope-history-baseline-release-breach-0") result <- do.call(scope_volume_release_history, c(case$kwargs, list(context = context))) result$value
Inputs exclude these add-ons already. For the risk_margin view only the governance Article37(1)c add-on is removed by37(5); all reference-undertaking selection underDR38 remains external, not inferred from this view switch.
scr_standard_formula( bscr, operational, adjustment_tp, adjustment_dt, context, capital_addons = NULL, purpose = "scr", ... )scr_standard_formula( bscr, operational, adjustment_tp, adjustment_dt, context, capital_addons = NULL, purpose = "scr", ... )
bscr |
Bscr. Reference type: |
operational |
Operational. Reference type: |
adjustment_tp |
Adjustment tp. Reference type: |
adjustment_dt |
Adjustment dt. Reference type: |
context |
Explicit |
capital_addons |
Capital addons. Reference type: |
purpose |
Purpose. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scr-standard-zero") result <- do.call(scr_standard_formula, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("scr-standard-zero") result <- do.call(scr_standard_formula, c(case$kwargs, list(context = context))) result$value
Full coverage is inclusive; equality to the unsecured post-stress value leaves the original shock unchanged. This does not value collateral.
secured_bond_spread_stress( unsecured_stress, asset_value, risk_adjusted_collateral, qualification_reference, context, ... )secured_bond_spread_stress( unsecured_stress, asset_value, risk_adjusted_collateral, qualification_reference, context, ... )
unsecured_stress |
Unsecured stress. Reference type: |
asset_value |
Asset value. Reference type: |
risk_adjusted_collateral |
Risk adjusted collateral. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-secured-spread-extreme-1") result <- do.call(secured_bond_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-secured-spread-extreme-1") result <- do.call(secured_bond_spread_stress, c(case$kwargs, list(context = context))) result$value
Paragraph6 literally uses the paragraph3 senior table at CQS5. The unusual source reference remains explicit, not silently redirected to paragraph4.
securitisation_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, transition = NULL, context, imposed_increase_fraction = NULL, supervisory_decision_reference = NULL, ... )securitisation_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, transition = NULL, context, imposed_increase_fraction = NULL, supervisory_decision_reference = NULL, ... )
modified_duration |
Modified duration. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
transition |
Transition. Reference type: |
context |
Explicit |
imposed_increase_fraction |
Imposed increase fraction. Reference type: |
supervisory_decision_reference |
Supervisory decision reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-securitisation-residual-na-0") result <- do.call(securitisation_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-securitisation-residual-na-0") result <- do.call(securitisation_spread_stress, c(case$kwargs, list(context = context))) result$value
Select the gross charge corresponding to the greatest net-of-FDB loss.
select_scenario(gross_losses, net_losses, tie_break = NULL, context, ...)select_scenario(gross_losses, net_losses, tie_break = NULL, context, ...)
gross_losses |
Gross losses. Reference type: |
net_losses |
Net losses. Reference type: |
tie_break |
Tie break. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("net-scenario-selection") result <- do.call(select_scenario, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("net-scenario-selection") result <- do.call(select_scenario, c(case$kwargs, list(context = context))) result$value
Captive classification is not conditional on Article51 disclosure relief. The caller must qualify national extensions explicitly; no default national rule, automatic legal research or audit-content approval is inferred.
sfcr_balance_sheet_audit_required_2027( small_non_complex, captive, national_extension_applies, qualification_reference, context, ... )sfcr_balance_sheet_audit_required_2027( small_non_complex, captive, national_extension_applies, qualification_reference, context, ... )
small_non_complex |
Small non complex. Reference type: |
captive |
Captive. Reference type: |
national_extension_applies |
National extension applies. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-audit-111") result <- do.call(sfcr_balance_sheet_audit_required_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-audit-111") result <- do.call(sfcr_balance_sheet_audit_required_2027, c(case$kwargs, list(context = context))) result$value
Captive status, beneficiary qualification, loan/cash-pool scope and the deterministic maximum-loss assessment are external. Reinsurance liability exclusion concerns the underlying insurance contracts, not only the treaty.
sfcr_captive_disclosure_conditions_2027( captive_type, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, group_loans_asset_share = NULL, maximum_loss_deterministic = NULL, qualification_reference, context, ... )sfcr_captive_disclosure_conditions_2027( captive_type, permitted_policyholders, natural_person_tp_share, no_compulsory_liability, group_loans_asset_share = NULL, maximum_loss_deterministic = NULL, qualification_reference, context, ... )
captive_type |
Captive type. Reference type: |
permitted_policyholders |
Permitted policyholders. Reference type: |
natural_person_tp_share |
Natural person tp share. Reference type: |
no_compulsory_liability |
No compulsory liability. Reference type: |
group_loans_asset_share |
Group loans asset share. Reference type: |
maximum_loss_deterministic |
Maximum loss deterministic. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-insurance-share-zero") result <- do.call(sfcr_captive_disclosure_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-insurance-share-zero") result <- do.call(sfcr_captive_disclosure_conditions_2027, c(case$kwargs, list(context = context))) result$value
A conditional paragraph needs either its content evidence or a qualified non-applicability assessment, never an unqualified silent omission. References are not retrieved or assessed. Quantitative-only relief reports require a different perimeter and are deliberately not certified here.
sfcr_content_evidence_check( evidence, report_part, full_narrative_scope, assessment_reference, scope_reference, context, structure_sections = NULL, structure_reference = NULL, de_materiality = NULL, reporting_scope = "solo", group_evidence = NULL, ... )sfcr_content_evidence_check( evidence, report_part, full_narrative_scope, assessment_reference, scope_reference, context, structure_sections = NULL, structure_reference = NULL, de_materiality = NULL, reporting_scope = "solo", group_evidence = NULL, ... )
evidence |
Evidence. Reference type: |
report_part |
Report part. Reference type: |
full_narrative_scope |
Full narrative scope. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
structure_sections |
Structure sections. Reference type: |
structure_reference |
Structure reference. Reference type: |
de_materiality |
De materiality. Reference type: |
reporting_scope |
Reporting scope. Reference type: |
group_evidence |
Group evidence. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("sfcr-content-baseline-sfcr-empty") result <- do.call(sfcr_content_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("sfcr-content-baseline-sfcr-empty") result <- do.call(sfcr_content_evidence_check, c(case$kwargs, list(context = context))) result$value
Every control needs evidence, including reasoned non-applicability when conditional. AVAILABLE merely records a reference. Elapsed months and historical deadline facts are externally qualified; no calendar guess. Missing optional screenings remain NOT_ASSESSED, never implicitly passed.
sfcr_publication_evidence_check( evidence, assessment_reference, context, publication_facts = NULL, capital_events = NULL, ... )sfcr_publication_evidence_check( evidence, assessment_reference, context, publication_facts = NULL, capital_events = NULL, ... )
evidence |
Evidence. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
publication_facts |
Publication facts. Reference type: |
capital_events |
Capital events. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-publication-future-missing") result <- do.call(sfcr_publication_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("sfcr-publication-future-missing") result <- do.call(sfcr_publication_evidence_check, c(case$kwargs, list(context = context))) result$value
The host authority's materiality decision is explicit, never inferred from market shares. SNC exclusion applies to both branches. This definition is not the different significant-branch screen in delegated Article354.
significant_cross_border_activity_2027( host_gross_premiums, small_non_complex, host_authority_significant, qualification_reference, context, ... )significant_cross_border_activity_2027( host_gross_premiums, small_non_complex, host_authority_significant, qualification_reference, context, ... )
host_gross_premiums |
Host gross premiums. Reference type: |
small_non_complex |
Small non complex. Reference type: |
host_authority_significant |
Host authority significant. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-cross-host") result <- do.call(significant_cross_border_activity_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-close-cross-host") result <- do.call(significant_cross_border_activity_2027, c(case$kwargs, list(context = context))) result$value
Do not create a quantitative materiality threshold. A comparison with the standard calculation is only requested where the exception is invoked; the result records supplied facts, not a substantive adequacy conclusion.
simplification_proportionality_conditions( conditions, simplified_scr_higher = NULL, qualification_reference, context, ... )simplification_proportionality_conditions( conditions, simplified_scr_higher = NULL, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
simplified_scr_higher |
Simplified scr higher. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("proportionality-baseline-ordinary") result <- do.call(simplification_proportionality_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("proportionality-baseline-ordinary") result <- do.call(simplification_proportionality_conditions, c(case$kwargs, list(context = context))) result$value
Amount weighting is algebraically identical to MV times portfolio shares. Fractions avoid unnecessary intermediate overflow and cancellation. No options/guarantee model, floor or general eligibility approval is inferred.
simplified_bond_spread_risk( buckets, liability_change, eligibility_reference, valuation_reference, context, ... )simplified_bond_spread_risk( buckets, liability_change, eligibility_reference, valuation_reference, context, ... )
buckets |
Buckets. Reference type: |
liability_change |
Liability change. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-empty-book") result <- do.call(simplified_bond_spread_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-empty-book") result <- do.call(simplified_bond_spread_risk, c(case$kwargs, list(context = context))) result$value
DR104 factor: rated values have no invented cap; only unrated is capped.
simplified_bond_spread_stress( modified_duration, credit_quality_step, eligibility_reference, context, ... )simplified_bond_spread_stress( modified_duration, credit_quality_step, eligibility_reference, context, ... )
modified_duration |
Modified duration. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-slope-0") result <- do.call(simplified_bond_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simplified-market-baseline-slope-0") result <- do.call(simplified_bond_spread_stress, c(case$kwargs, list(context = context))) result$value
Inputs refer to the year/event specified by the chosen article. A net portfolio difference is not a substitute for individually floored contracts.
simplified_capital_at_risk( contracts, kind, proportionality_satisfied, qualification_reference, context, ... )simplified_capital_at_risk( contracts, kind, proportionality_satisfied, qualification_reference, context, ... )
contracts |
Contracts. Reference type: |
kind |
Kind. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-car-health_income-negative-be") result <- do.call(simplified_capital_at_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-car-health_income-negative-be") result <- do.call(simplified_capital_at_risk, c(case$kwargs, list(context = context))) result$value
Conservative grouping PD, not LGD-weighted single-name PD under Article199.
simplified_default_group_pd( probabilities, eligibility_reference, valuation_reference, context, pool_rating_group = NULL, ... )simplified_default_group_pd( probabilities, eligibility_reference, valuation_reference, context, pool_rating_group = NULL, ... )
probabilities |
Probabilities. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
pool_rating_group |
Pool rating group. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: probability.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-zero-pd") result <- do.call(simplified_default_group_pd, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-zero-pd") result <- do.call(simplified_default_group_pd, c(case$kwargs, list(context = context))) result$value
Health Art100(d) has conflicting DE/EN d2 descriptions. The supplied d2 basis must be explicitly externally qualified; its numeric value is retained.
simplified_disability_risk( capital_at_risk_1, capital_at_risk_2, incidence_rate_1, incidence_rate_2, termination_rate, modified_duration, best_estimate, kind, proportionality_satisfied, qualification_reference, context, ... )simplified_disability_risk( capital_at_risk_1, capital_at_risk_2, incidence_rate_1, incidence_rate_2, termination_rate, modified_duration, best_estimate, kind, proportionality_satisfied, qualification_reference, context, ... )
capital_at_risk_1 |
Capital at risk 1. Reference type: |
capital_at_risk_2 |
Capital at risk 2. Reference type: |
incidence_rate_1 |
Incidence rate 1. Reference type: |
incidence_rate_2 |
Incidence rate 2. Reference type: |
termination_rate |
Termination rate. Reference type: |
modified_duration |
Modified duration. Reference type: |
best_estimate |
Best estimate. Reference type: |
kind |
Kind. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-disability-life-no-incidence") result <- do.call(simplified_disability_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-disability-life-no-incidence") result <- do.call(simplified_disability_risk, c(case$kwargs, list(context = context))) result$value
Reinsurance/securitisation EAD here is BE recoverables under107a(2), not automatically the BE-plus-debtors basis of107. Derivative/SPV EAD is external. A complete scoped portfolio and both hypothetical BSCR valuations are required.
simplified_ead_mitigation_2027( exposures, target_counterparty, bscr_without, bscr_with, default_module_zero_in_both, eligibility_reference, valuation_reference, context, ... )simplified_ead_mitigation_2027( exposures, target_counterparty, bscr_without, bscr_with, default_module_zero_in_both, eligibility_reference, valuation_reference, context, ... )
exposures |
Exposures. Reference type: |
target_counterparty |
Target counterparty. Reference type: |
bscr_without |
Bscr without. Reference type: |
bscr_with |
Bscr with. Reference type: |
default_module_zero_in_both |
Default module zero in both. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mitigation-future-ead-floor") result <- do.call(simplified_ead_mitigation_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("mitigation-future-ead-floor") result <- do.call(simplified_ead_mitigation_2027, c(case$kwargs, list(context = context))) result$value
G(r,n)=((1+r)**n-1)/r, continuously extended to G(0,n)=n. The amount is last-year expenses (life/health) or medical payments, NOT a projected BE. High-precision intermediates avoid cancellation around zero inflation.
simplified_expense_risk( previous_year_amount, modified_duration, inflation_rate, kind, proportionality_satisfied, qualification_reference, context, ... )simplified_expense_risk( previous_year_amount, modified_duration, inflation_rate, kind, proportionality_satisfied, qualification_reference, context, ... )
previous_year_amount |
Previous year amount. Reference type: |
modified_duration |
Modified duration. Reference type: |
inflation_rate |
Inflation rate. Reference type: |
kind |
Kind. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-simplified-baseline-life_expense-zero") result <- do.call(simplified_expense_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-simplified-baseline-life_expense-zero") result <- do.call(simplified_expense_risk, c(case$kwargs, list(context = context))) result$value
Each category explicitly supplies five ranked centre-neighbourhood sums; nonexistent centres are qualified zero entries. Actual building geometry, full/partial200m intersection, LoBs7/19, ranking by building-specific net insured sum and recoveries not contingent on unrelated claims are external. No point-distance proxy and no second deduction of reinsurance are used.
simplified_fire_risk( exposures, average_residential_sum, residential_market_shares, qualification_reference, context, ... )simplified_fire_risk( exposures, average_residential_sum, residential_market_shares, qualification_reference, context, ... )
exposures |
Exposures. Reference type: |
average_residential_sum |
Average residential sum. Reference type: |
residential_market_shares |
Residential market shares. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-fire-no-residential") result <- do.call(simplified_fire_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-fire-no-residential") result <- do.call(simplified_fire_risk, c(case$kwargs, list(context = context))) result$value
Eligibility under DIR109(2/3), reference calculation and suitability of the company-specific volume are externally established. A factor ratio in the details avoids overflow/underflow from an unnecessary intermediate float.
simplified_immaterial_risk_2027( base_scr, base_volume, current_volume, elapsed_years, is_market_risk, eligibility_reference, volume_reference, context, ... )simplified_immaterial_risk_2027( base_scr, base_volume, current_volume, elapsed_years, is_market_risk, eligibility_reference, volume_reference, context, ... )
base_scr |
Base scr. Reference type: |
base_volume |
Base volume. Reference type: |
current_volume |
Current volume. Reference type: |
elapsed_years |
Elapsed years. Reference type: |
is_market_risk |
Is market risk. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
volume_reference |
Volume reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("simplification-2027-zero-volume") result <- do.call(simplified_immaterial_risk_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("simplification-2027-zero-volume") result <- do.call(simplified_immaterial_risk_2027, c(case$kwargs, list(context = context))) result$value
Each contract provides termination_payment_net (after amounts recoverable from the policyholder/intermediary) and technical_provisions_excluding_rm. Negative strains never offset positive ones. Rate and period must describe the positive-strain population. The printed down formula has an unresolved sign issue and is deliberately not converted to positive capital.
simplified_lapse_risk( contracts, average_lapse_rate, runoff_period, kind, direction, proportionality_satisfied, qualification_reference, context, ... )simplified_lapse_risk( contracts, average_lapse_rate, runoff_period, kind, direction, proportionality_satisfied, qualification_reference, context, ... )
contracts |
Contracts. Reference type: |
average_lapse_rate |
Average lapse rate. Reference type: |
runoff_period |
Runoff period. Reference type: |
kind |
Kind. Reference type: |
direction |
Direction. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-lapse-baseline-life-empty") result <- do.call(simplified_lapse_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-lapse-baseline-life-empty") result <- do.call(simplified_lapse_risk, c(case$kwargs, list(context = context))) result$value
Art96 factor times the already contract-floored CAR sum, not death benefits.
simplified_life_catastrophe_risk( capital_at_risk, proportionality_satisfied, qualification_reference, context, ... )simplified_life_catastrophe_risk( capital_at_risk, proportionality_satisfied, qualification_reference, context, ... )
capital_at_risk |
Capital at risk. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-catastrophe-zero") result <- do.call(simplified_life_catastrophe_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-catastrophe-zero") result <- do.call(simplified_life_catastrophe_risk, c(case$kwargs, list(context = context))) result$value
q is the sum-assured weighted NEXT-twelve-month mortality rate. Fractional modified durations are retained; no invented rounding or contract selection.
simplified_longevity_risk( mortality_rate, modified_duration, best_estimate, kind, proportionality_satisfied, qualification_reference, context, ... )simplified_longevity_risk( mortality_rate, modified_duration, best_estimate, kind, proportionality_satisfied, qualification_reference, context, ... )
mortality_rate |
Mortality rate. Reference type: |
modified_duration |
Modified duration. Reference type: |
best_estimate |
Best estimate. Reference type: |
kind |
Kind. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-simplified-baseline-life-longevity-3") result <- do.call(simplified_longevity_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-simplified-baseline-life-longevity-3") result <- do.call(simplified_longevity_risk, c(case$kwargs, list(context = context))) result$value
q is the sum-assured weighted rate over all future years, unlike longevity. The printed upper index is modified duration: fractional values remain unqualified, never silently rounded, truncated or prorated.
simplified_mortality_risk( capital_at_risk, basic_spot_rates, mortality_rate, modified_duration, kind, proportionality_satisfied, qualification_reference, context, ... )simplified_mortality_risk( capital_at_risk, basic_spot_rates, mortality_rate, modified_duration, kind, proportionality_satisfied, qualification_reference, context, ... )
capital_at_risk |
Capital at risk. Reference type: |
basic_spot_rates |
Basic spot rates. Reference type: |
mortality_rate |
Mortality rate. Reference type: |
modified_duration |
Modified duration. Reference type: |
kind |
Kind. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-mortality-life-empty") result <- do.call(simplified_mortality_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("uw-biometric-baseline-mortality-life-empty") result <- do.call(simplified_mortality_risk, c(case$kwargs, list(context = context))) result$value
Scale externally qualified BECEP to whole-pool BECE, retaining its sign.
simplified_pool_external_best_estimate( ceded_best_estimate, undertaking_share, eligibility_reference, valuation_reference, context, ... )simplified_pool_external_best_estimate( ceded_best_estimate, undertaking_share, eligibility_reference, valuation_reference, context, ... )
ceded_best_estimate |
Ceded best estimate. Reference type: |
undertaking_share |
Undertaking share. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-external-zero") result <- do.call(simplified_pool_external_best_estimate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-external-zero") result <- do.call(simplified_pool_external_best_estimate, c(case$kwargs, list(context = context))) result$value
Allocate signed external pool contributions; no extra floor on individual contributions.
simplified_pool_external_mitigation( best_estimates, target_counterparty, total_external_contribution, eligibility_reference, valuation_reference, context, ... )simplified_pool_external_mitigation( best_estimates, target_counterparty, total_external_contribution, eligibility_reference, valuation_reference, context, ... )
best_estimates |
Best estimates. Reference type: |
target_counterparty |
Target counterparty. Reference type: |
total_external_contribution |
Total external contribution. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-contribution") result <- do.call(simplified_pool_external_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-contribution") result <- do.call(simplified_pool_external_mitigation, c(case$kwargs, list(context = context))) result$value
PC/PU times already externally netted BEU; do not net external recoveries twice.
simplified_pool_member_best_estimate( undertaking_best_estimate, undertaking_share, counterparty_share, eligibility_reference, valuation_reference, context, ... )simplified_pool_member_best_estimate( undertaking_best_estimate, undertaking_share, counterparty_share, eligibility_reference, valuation_reference, context, ... )
undertaking_best_estimate |
Undertaking best estimate. Reference type: |
undertaking_share |
Undertaking share. Reference type: |
counterparty_share |
Counterparty share. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-member-zero") result <- do.call(simplified_pool_member_best_estimate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("pool-simplified-baseline-member-zero") result <- do.call(simplified_pool_member_best_estimate, c(case$kwargs, list(context = context))) result$value
Article108 proportional-contract amount with the prescribed net-BE denominator.
simplified_proportional_mitigation( gross_best_estimate, recoverables, submodule_scr, target_counterparty, eligibility_reference, valuation_reference, context, ... )simplified_proportional_mitigation( gross_best_estimate, recoverables, submodule_scr, target_counterparty, eligibility_reference, valuation_reference, context, ... )
gross_best_estimate |
Gross best estimate. Reference type: |
recoverables |
Recoverables. Reference type: |
submodule_scr |
Submodule scr. Reference type: |
target_counterparty |
Target counterparty. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-proportional-zero") result <- do.call(simplified_proportional_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-proportional-zero") result <- do.call(simplified_proportional_mitigation, c(case$kwargs, list(context = context))) result$value
One counterparty/homogeneous group; PD is next12months, duration and BE refer to the same recoverables. Not a counterparty-default SCR or projection.
simplified_reinsurance_default_adjustment( probability_of_default, modified_duration, recoverables_best_estimate, proportionality_satisfied, qualification_reference, context, ... )simplified_reinsurance_default_adjustment( probability_of_default, modified_duration, recoverables_best_estimate, proportionality_satisfied, qualification_reference, context, ... )
probability_of_default |
Probability of default. Reference type: |
modified_duration |
Modified duration. Reference type: |
recoverables_best_estimate |
Recoverables best estimate. Reference type: |
proportionality_satisfied |
Proportionality satisfied. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-ri-zero-pd") result <- do.call(simplified_reinsurance_default_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-ri-zero-pd") result <- do.call(simplified_reinsurance_default_adjustment, c(case$kwargs, list(context = context))) result$value
Only the target's nonnegative condition is imposed on individual recoveries; other signed entries are not silently floored or the resulting share capped.
simplified_reinsurance_mitigation( recoverables, target_counterparty, scr_without, scr_with, eligibility_reference, valuation_reference, context, ... )simplified_reinsurance_mitigation( recoverables, target_counterparty, scr_without, scr_with, eligibility_reference, valuation_reference, context, ... )
recoverables |
Recoverables. Reference type: |
target_counterparty |
Target counterparty. Reference type: |
scr_without |
Scr without. Reference type: |
scr_with |
Scr with. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-negative-total-effect") result <- do.call(simplified_reinsurance_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-negative-total-effect") result <- do.call(simplified_reinsurance_mitigation, c(case$kwargs, list(context = context))) result$value
'hyp' is the scenario without the arrangement. Despite its source label, 'without' denotes the ordinary capital/volume defined in111a(b/e). Recoverables are the qualified best estimate plus corresponding receivables. Segment sigma follows117(3)/148(3), not total premium/reserve sigma.
simplified_single_segment_mitigation( cat_hyp, cat_without, premium_hyp, premium_without, sigma, recoverables, single_segment, eligibility_reference, valuation_reference, context, ... )simplified_single_segment_mitigation( cat_hyp, cat_without, premium_hyp, premium_without, sigma, recoverables, single_segment, eligibility_reference, valuation_reference, context, ... )
cat_hyp |
Cat hyp. Reference type: |
cat_without |
Cat without. Reference type: |
premium_hyp |
Premium hyp. Reference type: |
premium_without |
Premium without. Reference type: |
sigma |
Sigma. Reference type: |
recoverables |
Recoverables. Reference type: |
single_segment |
Single segment. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-mitigation-signed") result <- do.call(simplified_single_segment_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2026-10-05", known_at = "2026-10-06", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("simpl-close-baseline-mitigation-signed") result <- do.call(simplified_single_segment_mitigation, c(case$kwargs, list(context = context))) result$value
Floor the difference of submodule sums once, not each submodule separately.
simplified_submodule_mitigation( scr_without, scr_with, eligibility_reference, valuation_reference, context, ... )simplified_submodule_mitigation( scr_without, scr_with, eligibility_reference, valuation_reference, context, ... )
scr_without |
Scr without. Reference type: |
scr_with |
Scr with. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-sum-floor") result <- do.call(simplified_submodule_mitigation, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("mitigation-baseline-sum-floor") result <- do.call(simplified_submodule_mitigation, c(case$kwargs, list(context = context))) result$value
The three-year average NET combined ratio is externally qualified: the source does not prescribe a universal weighting method for its construction. investment_default_scr is only the listed investment exposures, not the whole default module. Intangible charge follows the existing Article203 API. Captive alternative never overrides the Article29a(3) absolute exclusions.
small_non_complex_annual_conditions_2027( undertaking_type, metrics, conditions, qualification_reference, context, ... )small_non_complex_annual_conditions_2027( undertaking_type, metrics, conditions, qualification_reference, context, ... )
undertaking_type |
Undertaking type. Reference type: |
metrics |
Metrics. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-parent-small-group") result <- do.call(small_non_complex_annual_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("proportionality-scope-parent-small-group") result <- do.call(small_non_complex_annual_conditions_2027, c(case$kwargs, list(context = context))) result$value
Group status/history and each method2 entity's SNC classification remain externally qualified. Group premium cap is TOTAL GWP; group surplus must be strictly positive. Two distinct foreign-premium criteria must both pass. Interest TP basis explicitly excludes method2 entities. Method2-only waives consolidated interest/investment tests, never the other group conditions.
small_non_complex_group_annual_conditions_2027( method, metrics, conditions, qualification_reference, context, ... )small_non_complex_group_annual_conditions_2027( method, metrics, conditions, qualification_reference, context, ... )
method |
Method. Reference type: |
metrics |
Metrics. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-close-fail-combined_ratio_three_year_average") result <- do.call(small_non_complex_group_annual_conditions_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("group-close-fail-combined_ratio_three_year_average") result <- do.call(small_non_complex_group_annual_conditions_2027, c(case$kwargs, list(context = context))) result$value
Published rounded discontinuities are retained. Insurer MCR breach requires external confirmation of the paragraph6 first-SFCR applicability condition.
specific_exposure_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, qualification = NULL, context, ... )specific_exposure_spread_stress( modified_duration, category, qualification_reference, credit_quality_step = NULL, qualification = NULL, context, ... )
modified_duration |
Modified duration. Reference type: |
category |
Category. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
credit_quality_step |
Credit quality step. Reference type: |
qualification |
Qualification. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-specific-spread-regional_local-none-12") result <- do.call(specific_exposure_spread_stress, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-specific-spread-regional_local-none-12") result <- do.call(specific_exposure_spread_stress, c(case$kwargs, list(context = context))) result$value
Sum three already valued/selected spread submodules; no missing-component defaults.
spread_risk(bonds, securitisation, credit_derivatives, context, ...)spread_risk(bonds, securitisation, credit_derivatives, context, ...)
bonds |
Bonds. Reference type: |
securitisation |
Securitisation. Reference type: |
credit_derivatives |
Credit derivatives. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-spread-sum-zero") result <- do.call(spread_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-spread-sum-zero") result <- do.call(spread_risk, c(case$kwargs, list(context = context))) result$value
Do not substitute collateral or sum unrelated counterparties here. Contract boundaries, basis risk and the exposure evidence remain external prerequisites.
spv_recoverable_cap( recoverable, aggregate_maximum_exposure, exposure_reference = NULL, context, ... )spv_recoverable_cap( recoverable, aggregate_maximum_exposure, exposure_reference = NULL, context, ... )
recoverable |
Recoverable. Reference type: |
aggregate_maximum_exposure |
Aggregate maximum exposure. Reference type: |
exposure_reference |
Exposure reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-spv-cap-zero-exposure") result <- do.call(spv_recoverable_cap, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("future-spv-cap-zero-exposure") result <- do.call(spv_recoverable_cap, c(case$kwargs, list(context = context))) result$value
Historical rows are post-transition. Future ORSA has no inherited two-week row. The returned length is not a legally determined calendar date. Explicit group scope uses separate254/256/256b or historical373 rules. Group sfcr/single_sfcr entries include public disclosure, not just filing. Optional304e extension requires an externally qualified delegated act; an extreme event alone never creates an extension. ORSA/SPV are excluded.
supervisory_reporting_deadline_weeks( report_kind, qualification_reference, scope = "solo", context, exceptional_extension_weeks = 0, delegated_act_reference = NULL, ... )supervisory_reporting_deadline_weeks( report_kind, qualification_reference, scope = "solo", context, exceptional_extension_weeks = 0, delegated_act_reference = NULL, ... )
report_kind |
Report kind. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
scope |
Scope. Reference type: |
context |
Explicit |
exceptional_extension_weeks |
Exceptional extension weeks. Reference type: |
delegated_act_reference |
Delegated act reference. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: weeks.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("reporting-timing-baseline-deadline-orsa") result <- do.call(supervisory_reporting_deadline_weeks, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("reporting-timing-baseline-deadline-orsa") result <- do.call(supervisory_reporting_deadline_weeks, c(case$kwargs, list(context = context))) result$value
Qualitative/quantitative, temporal and data-source alternatives remain alternatives: one reference documents the externally justified selection. No file inspection, content certification, board approval or filing occurs.
supervisory_reporting_evidence_check( evidence, assessment_reference, scope_reference, report_kind = "core", context, structure_sections = NULL, structure_reference = NULL, reporting_scope = "solo", group_evidence = NULL, ... )supervisory_reporting_evidence_check( evidence, assessment_reference, scope_reference, report_kind = "core", context, structure_sections = NULL, structure_reference = NULL, reporting_scope = "solo", group_evidence = NULL, ... )
evidence |
Evidence. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
report_kind |
Report kind. Reference type: |
context |
Explicit |
structure_sections |
Structure sections. Reference type: |
structure_reference |
Structure reference. Reference type: |
reporting_scope |
Reporting scope. Reference type: |
group_evidence |
Group evidence. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rsr-content-baseline-empty") result <- do.call(supervisory_reporting_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("rsr-content-baseline-empty") result <- do.call(supervisory_reporting_evidence_check, c(case$kwargs, list(context = context))) result$value
Use an externally qualified daily mean; the selected profile determines its window and cap.
symmetric_adjustment(current_index, average_index, context, ...)symmetric_adjustment(current_index, average_index, context, ...)
current_index |
Current index. Reference type: |
average_index |
Average index. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: ratio.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("market-2027-sa-50") result <- do.call(symmetric_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("market-2027-sa-50") result <- do.call(symmetric_adjustment, c(case$kwargs, list(context = context))) result$value
None declares that no index was determined that day; it is not permission to hide missing observations. Exact endpoint selection and completeness remain externally qualified. Never fetch or manufacture market data.
symmetric_adjustment_average( daily_indices, window_months, complete_window, index_qualified, qualification_reference, context, ... )symmetric_adjustment_average( daily_indices, window_months, complete_window, index_qualified, qualification_reference, context, ... )
daily_indices |
Daily indices. Reference type: |
window_months |
Window months. Reference type: |
complete_window |
Complete window. Reference type: |
index_qualified |
Index qualified. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: index_level.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("symmetric-average-baseline-single") result <- do.call(symmetric_adjustment_average, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("symmetric-average-baseline-single") result <- do.call(symmetric_adjustment_average, c(case$kwargs, list(context = context))) result$value
Financial models and insurer-specific behaviour remain external. Conditional evidence is selected from explicit qualified scope decisions. A fully declared inventory proves neither method appropriateness nor supervisory compliance.
technical_provision_assumptions_evidence_check( evidence, conditions, assessment_reference, scope_reference, context, ... )technical_provision_assumptions_evidence_check( evidence, conditions, assessment_reference, scope_reference, context, ... )
evidence |
Evidence. Reference type: |
conditions |
Conditions. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-assumptions-baseline-all-empty") result <- do.call(technical_provision_assumptions_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-assumptions-baseline-all-empty") result <- do.call(technical_provision_assumptions_evidence_check, c(case$kwargs, list(context = context))) result$value
External-data use and known deficiencies activate their own controls. The 2027 climate-history safeguard is unconditional, not a defect-only rule. AVAILABLE declares a reference, never verified content or legal compliance.
technical_provision_data_evidence_check( evidence, external_data_used, data_deficiencies_present, assessment_reference, context, ... )technical_provision_data_evidence_check( evidence, external_data_used, data_deficiencies_present, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
external_data_used |
External data used. Reference type: |
data_deficiencies_present |
Data deficiencies present. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-data-baseline-external-deficient-empty") result <- do.call(technical_provision_data_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-data-baseline-external-deficient-empty") result <- do.call(technical_provision_data_evidence_check, c(case$kwargs, list(context = context))) result$value
The 2027 expense basis reflects board decisions on new business; it does not silently inherit the baseline assumption of future new business. Category controls document relevance and appropriate inclusion, including reasoned absence. Currency separation and gross reinsurance expenses remain explicit.
technical_provision_projection_evidence_check( evidence, conditions, assessment_reference, scope_reference, context, ... )technical_provision_projection_evidence_check( evidence, conditions, assessment_reference, scope_reference, context, ... )
evidence |
Evidence. Reference type: |
conditions |
Conditions. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-projection-baseline-all-empty") result <- do.call(technical_provision_projection_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-projection-baseline-all-empty") result <- do.call(technical_provision_projection_evidence_check, c(case$kwargs, list(context = context))) result$value
The declared interval is not a calendar or proof of actual completion. Scope must identify all homogeneous groups and applicable segregated parts; references alone do not prove completeness, adequacy, or expert review.
technical_provision_validation_evidence_check( evidence, conditions, declared_interval_years, assessment_reference, scope_reference, context, ... )technical_provision_validation_evidence_check( evidence, conditions, declared_interval_years, assessment_reference, scope_reference, context, ... )
evidence |
Evidence. Reference type: |
conditions |
Conditions. Reference type: |
declared_interval_years |
Declared interval years. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
scope_reference |
Scope reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-validation-audit-baseline-empty-evidence") result <- do.call(technical_provision_validation_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-validation-audit-baseline-empty-evidence") result <- do.call(technical_provision_validation_evidence_check, c(case$kwargs, list(context = context))) result$value
Separate BE/RM method only; negative best estimates/total provisions are not floored.
technical_provisions_sum( best_estimate, risk_margin, replication_applies, context, ... )technical_provisions_sum( best_estimate, risk_margin, replication_applies, context, ... )
best_estimate |
Best estimate. Reference type: |
risk_margin |
Risk margin. Reference type: |
replication_applies |
Replication applies. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-sum") result <- do.call(technical_provisions_sum, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("tp-sum") result <- do.call(technical_provisions_sum, c(case$kwargs, list(context = context))) result$value
Base amounts are NET on the Article308d(2) date or approved recalibration; the current provision is gross, with current recoverables remaining separate. None limit explicitly means no supervisory cap was imposed, not unknown. A negative deduction is not silently floored or turned into relief.
technical_provisions_transitional_value( current_gross_provisions, base_solvency2_net_provisions, base_legacy_net_provisions, supervisory_deduction_limit, risk_free_transition_used, approval_reference, qualification_reference, context, ... )technical_provisions_transitional_value( current_gross_provisions, base_solvency2_net_provisions, base_legacy_net_provisions, supervisory_deduction_limit, risk_free_transition_used, approval_reference, qualification_reference, context, ... )
current_gross_provisions |
Current gross provisions. Reference type: |
base_solvency2_net_provisions |
Base solvency2 net provisions. Reference type: |
base_legacy_net_provisions |
Base legacy net provisions. Reference type: |
supervisory_deduction_limit |
Supervisory deduction limit. Reference type: |
risk_free_transition_used |
Risk free transition used. Reference type: |
approval_reference |
Approval reference. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ltg-transition-baseline-tp-cap-zero") result <- do.call(technical_provisions_transitional_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("ltg-transition-baseline-tp-cap-zero") result <- do.call(technical_provisions_transitional_value, c(case$kwargs, list(context = context))) result$value
The hypothetical charge is externally valued under simultaneous Art188. Multiple affected components need86(b)'s common capacity treatment, not independent repeated limits or an invented allocation of shared capacity.
underwriting_currency_basis_risk( capital_charge, joint_currency_stress_charge, single_component_only, eligibility_reference, valuation_reference, context, ... )underwriting_currency_basis_risk( capital_charge, joint_currency_stress_charge, single_component_only, eligibility_reference, valuation_reference, context, ... )
capital_charge |
Capital charge. Reference type: |
joint_currency_stress_charge |
Joint currency stress charge. Reference type: |
single_component_only |
Single component only. Reference type: |
eligibility_reference |
Eligibility reference. Reference type: |
valuation_reference |
Valuation reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-fx-zero") result <- do.call(underwriting_currency_basis_risk, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-10-05", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("final-numeric-baseline-fx-zero") result <- do.call(underwriting_currency_basis_risk, c(case$kwargs, list(context = context))) result$value
The archived DE definitions do not explicitly resolve that scaling. Means, accounting equity definition and formula-native units need external review. Debt/CFO is signed; no regulatory beta floor/cap is added.
unlisted_equity_beta( gross_margin_mean, debt, cashflow_mean, equity_return_mean, formula_units_qualified, input_basis_reference, context, ... )unlisted_equity_beta( gross_margin_mean, debt, cashflow_mean, equity_return_mean, formula_units_qualified, input_basis_reference, context, ... )
gross_margin_mean |
Gross margin mean. Reference type: |
debt |
Debt. Reference type: |
cashflow_mean |
Cashflow mean. Reference type: |
equity_return_mean |
Equity return mean. Reference type: |
formula_units_qualified |
Formula units qualified. Reference type: |
input_basis_reference |
Input basis reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: beta.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unlisted-equity-baseline-beta-intercept") result <- do.call(unlisted_equity_beta, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unlisted-equity-baseline-beta-intercept") result <- do.call(unlisted_equity_beta, c(case$kwargs, list(context = context))) result$value
Input completeness, company consolidation, fiscal periods, FX conversion and beta methodology are externally qualified. A failed condition yields0, an unresolved condition raises REVIEW_REQUIRED instead of being treated asFalse.
unlisted_equity_portfolio_screen( investments, qualification_reference, context, ... )unlisted_equity_portfolio_screen( investments, qualification_reference, context, ... )
investments |
Investments. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unlisted-equity-baseline-portfolio-negative-beta") result <- do.call(unlisted_equity_portfolio_screen, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("unlisted-equity-baseline-portfolio-negative-beta") result <- do.call(unlisted_equity_portfolio_screen, c(case$kwargs, list(context = context))) result$value
The portfolio denominator excludes Article180(2-16) positions. Classification against the referenced reporting definitions and liability cover is external; a missing rating field is never treated as evidence of an unrated bond.
unrated_bond_simplification_conditions( rated_share, conditions, qualification_reference, context, ... )unrated_bond_simplification_conditions( rated_share, conditions, qualification_reference, context, ... )
rated_share |
Rated share. Reference type: |
conditions |
Conditions. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("proportionality-baseline-bond-all-rated") result <- do.call(unrated_bond_simplification_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("proportionality-baseline-bond-all-rated") result <- do.call(unrated_bond_simplification_conditions, c(case$kwargs, list(context = context))) result$value
The year count is not evidence of data representativeness or required consecutive history. Revision has no nonlife segment. Terminal table rows apply to all later years; no interpolation or below-table extrapolation.
usp_credibility_factor( years, method, risk_module, segment = NULL, qualification_reference, context, ... )usp_credibility_factor( years, method, risk_module, segment = NULL, qualification_reference, context, ... )
years |
Years. Reference type: |
method |
Method. Reference type: |
risk_module |
Risk module. Reference type: |
segment |
Segment. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-credibility-baseline-life") result <- do.call(usp_credibility_factor, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-credibility-baseline-life") result <- do.call(usp_credibility_factor, c(case$kwargs, list(context = context))) result$value
Inventory active USP data references, never certify their content or quality.
usp_data_evidence_check( evidence, external_data_used, multiple_external_sources, assessment_reference, context, ... )usp_data_evidence_check( evidence, external_data_used, multiple_external_sources, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
external_data_used |
External data used. Reference type: |
multiple_external_sources |
Multiple external sources. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-evidence-empty-true-true") result <- do.call(usp_data_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-evidence-empty-true-true") result <- do.call(usp_data_evidence_check, c(case$kwargs, list(context = context))) result$value
F1 uses the second RAW moment, not variance. upper_limit is the
absolute upper loss threshold b2, not layer width. Data representativeness,
five reporting years, expense exclusion, gross/net basis, lognormal fit
and treaty eligibility need external qualification. No approval or automatic
standard-formula substitution follows from this component.
usp_excess_of_loss_estimate( ultimate_claims, retention, upper_limit = NULL, qualification_reference, context, ... )usp_excess_of_loss_estimate( ultimate_claims, retention, upper_limit = NULL, qualification_reference, context, ... )
ultimate_claims |
Ultimate claims. Reference type: |
retention |
Retention. Reference type: |
upper_limit |
Upper limit. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-f1-baseline-unlimited") result <- do.call(usp_excess_of_loss_estimate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-f1-baseline-unlimited") result <- do.call(usp_excess_of_loss_estimate, c(case$kwargs, list(context = context))) result$value
Same-segment homogeneity and Article116(3) volume measurement are not inferred from group labels. This is a weighted mean, not diversification, credibility weighting or permission to replace a standard parameter. F2 only supports weighting externally qualified estimates here; its printed estimator/moment anomalies are not repaired or evaluated. No inferred F2 cap.
usp_excess_of_loss_group_weighting( estimated_factors, premium_volumes, qualification_reference, method = "nonproportional_1", context, ... )usp_excess_of_loss_group_weighting( estimated_factors, premium_volumes, qualification_reference, method = "nonproportional_1", context, ... )
estimated_factors |
Estimated factors. Reference type: |
premium_volumes |
Premium volumes. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
method |
Method. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-f1-groups-baseline-single") result <- do.call(usp_excess_of_loss_group_weighting, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-f1-groups-baseline-single") result <- do.call(usp_excess_of_loss_group_weighting, c(case$kwargs, list(context = context))) result$value
csigma_hatsqrt((T+1)/(T-1)) + (1-c)*sigma_standard. This correction does not belong to F1/F2 or reserve method2. Appropriate standard sigma and fitted sigma qualification are explicit external inputs.
usp_lognormal_credibility_blend( estimated_sigma, standard_sigma, credibility, years, method, calibration_reference, context, ... )usp_lognormal_credibility_blend( estimated_sigma, standard_sigma, credibility, years, method, calibration_reference, context, ... )
estimated_sigma |
Estimated sigma. Reference type: |
standard_sigma |
Standard sigma. Reference type: |
credibility |
Credibility. Reference type: |
years |
Years. Reference type: |
method |
Method. Reference type: |
calibration_reference |
Calibration reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-lognormal-blend-baseline-premium-zero") result <- do.call(usp_lognormal_credibility_blend, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-lognormal-blend-baseline-premium-zero") result <- do.call(usp_lognormal_credibility_blend, c(case$kwargs, list(context = context))) result$value
Both boundary faces and deterministic interior starts are searched. Optional numerical controls are reported, never treated as regulatory parameters. Nonconvergence and constant log-ratios are REVIEW_REQUIRED, not zero sigma. Data assumptions, consecutive history and supervisory approval stay external.
usp_lognormal_fit( losses, volumes, method, qualification_reference, context, max_iterations = 1000, gradient_tolerance = 1e-07, ... )usp_lognormal_fit( losses, volumes, method, qualification_reference, context, max_iterations = 1000, gradient_tolerance = 1e-07, ... )
losses |
Losses. Reference type: |
volumes |
Volumes. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
max_iterations |
Max iterations. Reference type: |
gradient_tolerance |
Gradient tolerance. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-fit-baseline-premium-upper-boundary") result <- do.call(usp_lognormal_fit, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-fit-baseline-premium-upper-boundary") result <- do.call(usp_lognormal_fit, c(case$kwargs, list(context = context))) result$value
This does NOT claim the supplied pair minimizes the objective. B uses accident-year aggregated claims and earned premiums; C1 uses financial-year end reserves plus payments for opening claims, and opening reserves. Both include servicing expenses, unlike the F1 individual-claim estimator. Consecutiveness, adjustments, statistical assumptions and fitting need separate qualification. No automatic standard-formula replacement.
usp_lognormal_sigma( losses, volumes, mixing, log_coefficient, method, qualification_reference, context, ... )usp_lognormal_sigma( losses, volumes, mixing, log_coefficient, method, qualification_reference, context, ... )
losses |
Losses. Reference type: |
volumes |
Volumes. Reference type: |
mixing |
Mixing. Reference type: |
log_coefficient |
Log coefficient. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-lognormal-baseline-premium-delta0") result <- do.call(usp_lognormal_sigma, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-lognormal-baseline-premium-delta0") result <- do.call(usp_lognormal_sigma, c(case$kwargs, list(context = context))) result$value
B/C/D/E include servicing expenses; F1/F2 exclude them. A reference is never inspected or treated as verified data, calibration or approval. This inventory neither enables the blocked F2 estimator nor extends the square-triangle reserve2 calculator to rectangular development histories.
usp_method_data_evidence_check( evidence, method, data_basis, assessment_reference, context, ... )usp_method_data_evidence_check( evidence, method, data_basis, assessment_reference, context, ... )
evidence |
Evidence. Reference type: |
method |
Method. Reference type: |
data_basis |
Data basis. Reference type: |
assessment_reference |
Assessment reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-method-data-baseline-premium-net-empty") result <- do.call(usp_method_data_evidence_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-method-data-baseline-premium-net-empty") result <- do.call(usp_method_data_evidence_check, c(case$kwargs, list(context = context))) result$value
Input-factor qualification and their source-defined calibration are external. The engine neither estimates loss distributions here nor substitutes this result into a standard-formula calculation or grants approval.
usp_nonproportional_credibility_blend( estimated_factor, standard_factor, credibility, method, calibration_reference, context, ... )usp_nonproportional_credibility_blend( estimated_factor, standard_factor, credibility, method, calibration_reference, context, ... )
estimated_factor |
Estimated factor. Reference type: |
standard_factor |
Standard factor. Reference type: |
credibility |
Credibility. Reference type: |
method |
Method. Reference type: |
calibration_reference |
Calibration reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-blend-baseline-nonproportional_1-full") result <- do.call(usp_nonproportional_credibility_blend, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-blend-baseline-nonproportional_1-full") result <- do.call(usp_nonproportional_credibility_blend, c(case$kwargs, list(context = context))) result$value
Gross-premium sigma and the NP factor cannot both be replaced in one segment. Revision is available only absent material inflation risk; materiality follows decision relevance, not an invented numeric cutoff.
usp_parameter_scope_check( replacements, risk_module, segment = NULL, qualified_reinsurance = NULL, material_inflation_risk = NULL, qualification_reference, context, ... )usp_parameter_scope_check( replacements, risk_module, segment = NULL, qualified_reinsurance = NULL, material_inflation_risk = NULL, qualification_reference, context, ... )
replacements |
Replacements. Reference type: |
risk_module |
Risk module. Reference type: |
segment |
Segment. Reference type: |
qualified_reinsurance |
Qualified reinsurance. Reference type: |
material_inflation_risk |
Material inflation risk. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-segment-nonlife-1") result <- do.call(usp_parameter_scope_check, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-segment-nonlife-1") result <- do.call(usp_parameter_scope_check, c(case$kwargs, list(context = context))) result$value
For multiple contracts the coverage conditions apply collectively, whereas every individual contract must satisfy the cross-article requirements. Qualified equivalent SPV arrangements are included; equivalent transfer is externally assessed, never inferred from the name or number of contracts. Finite/similar transfers invalidate this submitted contract set for USP; omit none from the declaration (empty means all are qualified non-finite).
usp_reinsurance_contract_conditions( coverage_conditions, contract_requirements, contract_type, qualification_reference, finite_reinsurance_ids = list(), context, ... )usp_reinsurance_contract_conditions( coverage_conditions, contract_requirements, contract_type, qualification_reference, finite_reinsurance_ids = list(), context, ... )
coverage_conditions |
Coverage conditions. Reference type: |
contract_requirements |
Contract requirements. Reference type: |
contract_type |
Contract type. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
finite_reinsurance_ids |
Finite reinsurance ids. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-treaty-excess_of_loss-15") result <- do.call(usp_reinsurance_contract_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-treaty-excess_of_loss-15") result <- do.call(usp_reinsurance_contract_conditions, c(case$kwargs, list(context = context))) result$value
D(4) linear blend, WITHOUT the different B/C1 finite-history correction.
usp_reserve2_credibility_blend( estimated_sigma, standard_sigma, credibility, calibration_reference, context, ... )usp_reserve2_credibility_blend( estimated_sigma, standard_sigma, credibility, calibration_reference, context, ... )
estimated_sigma |
Estimated sigma. Reference type: |
standard_sigma |
Standard sigma. Reference type: |
credibility |
Credibility. Reference type: |
calibration_reference |
Calibration reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-reserve2-blend-baseline-large") result <- do.call(usp_reserve2_credibility_blend, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-reserve2-blend-baseline-large") result <- do.call(usp_reserve2_credibility_blend, c(case$kwargs, list(context = context))) result$value
Rows run oldest to newest accident year with lengths n,n-1,...,1. I>J is permitted by D(2)e but needs a separately qualified treatment of the printed formula's out-of-range diagonal indices; no silent padding. Consecutive years, expense inclusion, matching net reinsurance basis, negligible oldest-year tail and stochastic assumptions remain external.
usp_reserve2_estimate(cumulative_claims, qualification_reference, context, ...)usp_reserve2_estimate(cumulative_claims, qualification_reference, context, ...)
cumulative_claims |
Cumulative claims. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-reserve2-baseline-square") result <- do.call(usp_reserve2_estimate, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-reserve2-baseline-square") result <- do.call(usp_reserve2_estimate, c(case$kwargs, list(context = context))) result$value
Uses prescribed raw-data moments, not a Monte Carlo or internally chosen insurer model. The lower/upper severity-rounding order is mathematical; the floating-point guard is NOT formally certified interval arithmetic. Numerical controls, backend versions, bounds and clipping are disclosed. Nonconvergence or degenerate distribution fits require external review.
usp_revision_compound_quantile( annual_benefits, qualification_reference, context, relative_tolerance = 0.001, max_grid_power = 20, ... )usp_revision_compound_quantile( annual_benefits, qualification_reference, context, relative_tolerance = 0.001, max_grid_power = 20, ... )
annual_benefits |
Annual benefits. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
relative_tolerance |
Relative tolerance. Reference type: |
max_grid_power |
Max grid power. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-quantile-baseline-standard") result <- do.call(usp_revision_compound_quantile, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-quantile-baseline-standard") result <- do.call(usp_revision_compound_quantile, c(case$kwargs, list(context = context))) result$value
The quantile of the independent negative-binomial/lognormal compound sum is externally qualified, NOT generated here. Probability must match the active profile (including explicit analyst override). Credibility is supplied, not inferred from the ambiguous printed E(4)a 'section7' cross-reference.
usp_revision_credibility_blend( mean_increase, quantile_increase, credibility, quantile_probability, risk_module, calibration_reference, context, ... )usp_revision_credibility_blend( mean_increase, quantile_increase, credibility, quantile_probability, risk_module, calibration_reference, context, ... )
mean_increase |
Mean increase. Reference type: |
quantile_increase |
Quantile increase. Reference type: |
credibility |
Credibility. Reference type: |
quantile_probability |
Quantile probability. Reference type: |
risk_module |
Risk module. Reference type: |
calibration_reference |
Calibration reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-blend-baseline-life-no-floor") result <- do.call(usp_revision_credibility_blend, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-blend-baseline-life-no-floor") result <- do.call(usp_revision_credibility_blend, c(case$kwargs, list(context = context))) result$value
Each beneficiary supplies aligned A0..AT, including the initial baseline. Only strictly positive changes enter severity statistics. Frequency includes ALL years, including zero-event years. Negative changes are not netted. Computable moments do not prove negative-binomial/lognormal suitability, independence, immaterial inflation risk or the prescribed aggregate quantile.
usp_revision_moments(annual_benefits, qualification_reference, context, ...)usp_revision_moments(annual_benefits, qualification_reference, context, ...)
annual_benefits |
Annual benefits. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-moments-baseline-mixed") result <- do.call(usp_revision_moments, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-revision-moments-baseline-mixed") result <- do.call(usp_revision_moments, c(case$kwargs, list(context = context))) result$value
Capital requirements must be comparable under the same qualified inputs. We do not assume that the largest raw parameter always gives the largest capital requirement. Ties use a disclosed deterministic technical ordering, not a claimed regulatory preference for one standardized method.
usp_standard_method_selection( method_results, parameter, superiority_demonstrated, superior_method = NULL, qualification_reference, context, ... )usp_standard_method_selection( method_results, parameter, superiority_demonstrated, superior_method = NULL, qualification_reference, context, ... )
method_results |
Method results. Reference type: |
parameter |
Parameter. Reference type: |
superiority_demonstrated |
Superiority demonstrated. Reference type: |
superior_method |
Superior method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: factor.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-selection-single-premium_sigma-premium") result <- do.call(usp_standard_method_selection, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("usp-governance-baseline-selection-single-premium_sigma-premium") result <- do.call(usp_standard_method_selection, c(case$kwargs, list(context = context))) result$value
Method eligibility, hierarchy and Article13(2) exclusions are external. Inputs use the same held-participation basis; never apply ownership twice.
valuation_accounting_equity_adjustment( participation_value, goodwill_amount, zero_valued_intangibles_amount, method, qualification_reference, context, ... )valuation_accounting_equity_adjustment( participation_value, goodwill_amount, zero_valued_intangibles_amount, method, qualification_reference, context, ... )
participation_value |
Participation value. Reference type: |
goodwill_amount |
Goodwill amount. Reference type: |
zero_valued_intangibles_amount |
Zero valued intangibles amount. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-accounting-negative-ias_equity_fallback") result <- do.call(valuation_accounting_equity_adjustment, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-accounting-negative-ias_equity_fallback") result <- do.call(valuation_accounting_equity_adjustment, c(case$kwargs, list(context = context))) result$value
The IFRS-group exclusion is distinct from the four Article9 conditions. Article13/16 restrictions and substantive comparison evidence remain separate.
valuation_accounts_method_conditions( conditions, in_ifrs_consolidation_group, qualification_reference, context, ... )valuation_accounts_method_conditions( conditions, in_ifrs_consolidation_group, qualification_reference, context, ... )
conditions |
Conditions. Reference type: |
in_ifrs_consolidation_group |
In ifrs consolidation group. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: indicator.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-accounts-baseline-group") result <- do.call(valuation_accounts_method_conditions, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-accounts-baseline-group") result <- do.call(valuation_accounts_method_conditions, c(case$kwargs, list(context = context))) result$value
No floor, method-ranking decision, Article13(2) exclusion determination or asset/technical-provision valuation is inferred from this arithmetic.
valuation_adjusted_equity_component( excess_assets_over_liabilities, share, qualification_reference, context, ... )valuation_adjusted_equity_component( excess_assets_over_liabilities, share, qualification_reference, context, ... )
excess_assets_over_liabilities |
Excess assets over liabilities. Reference type: |
share |
Share. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-equity-zero") result <- do.call(valuation_adjusted_equity_component, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-equity-zero") result <- do.call(valuation_adjusted_equity_component, c(case$kwargs, list(context = context))) result$value
Own shares remain assets and subordinated debt remains a liability here; the separate Article88 component subsequently adjusts those exactly once. A declared complete input scope does not certify a complete insurer balance.
valuation_balance_sheet_excess( assets, liabilities, complete_scope, qualification_reference, context, ... )valuation_balance_sheet_excess( assets, liabilities, complete_scope, qualification_reference, context, ... )
assets |
Assets. Reference type: |
liabilities |
Liabilities. Reference type: |
complete_scope |
Complete scope. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-balance-baseline-zero") result <- do.call(valuation_balance_sheet_excess, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-balance-baseline-zero") result <- do.call(valuation_balance_sheet_excess, c(case$kwargs, list(context = context))) result$value
Recognition/materiality, complete runoff, probability weighting and curve construction are external. In particular VA/MA curves are not accepted.
valuation_contingent_liability( cashflows, recognised_under_article11, runoff_complete, curve_basis, qualification_reference, curve_reference, context, ... )valuation_contingent_liability( cashflows, recognised_under_article11, runoff_complete, curve_basis, qualification_reference, curve_reference, context, ... )
cashflows |
Cashflows. Reference type: |
recognised_under_article11 |
Recognised under article11. Reference type: |
runoff_complete |
Runoff complete. Reference type: |
curve_basis |
Curve basis. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
curve_reference |
Curve reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-extra-baseline-zero") result <- do.call(valuation_contingent_liability, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-extra-baseline-zero") result <- do.call(valuation_contingent_liability, c(case$kwargs, list(context = context))) result$value
Positive results are net assets; negative results are net liabilities. No tax rates, taxable-profit projections, expiry or LAC-DT are calculated.
valuation_deferred_tax_net( deferred_tax_assets, deferred_tax_liabilities, legally_enforceable_offset, same_tax_authority, same_taxable_entity, undiscounted, qualification_reference, context, excluded_participations = NULL, valuation_level = NULL, recognition_conditions = NULL, recognition_documents = NULL, ... )valuation_deferred_tax_net( deferred_tax_assets, deferred_tax_liabilities, legally_enforceable_offset, same_tax_authority, same_taxable_entity, undiscounted, qualification_reference, context, excluded_participations = NULL, valuation_level = NULL, recognition_conditions = NULL, recognition_documents = NULL, ... )
deferred_tax_assets |
Deferred tax assets. Reference type: |
deferred_tax_liabilities |
Deferred tax liabilities. Reference type: |
legally_enforceable_offset |
Legally enforceable offset. Reference type: |
same_tax_authority |
Same tax authority. Reference type: |
same_taxable_entity |
Same taxable entity. Reference type: |
undiscounted |
Undiscounted. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
excluded_participations |
Excluded participations. Reference type: |
valuation_level |
Valuation level. Reference type: |
recognition_conditions |
Recognition conditions. Reference type: |
recognition_documents |
Recognition documents. Reference type: |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-tax-net-baseline-zero") result <- do.call(valuation_deferred_tax_net, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-tax-net-baseline-zero") result <- do.call(valuation_deferred_tax_net, c(case$kwargs, list(context = context))) result$value
Positive recognition requires both external Article12 qualifications and a separately supplied Article10 value. Unused values are rejected, not ignored.
valuation_intangible_value( asset_type, separately_saleable = NULL, active_market_value_evidenced = NULL, qualified_value = NULL, qualification_reference, context, ... )valuation_intangible_value( asset_type, separately_saleable = NULL, active_market_value_evidenced = NULL, qualified_value = NULL, qualification_reference, context, ... )
asset_type |
Asset type. Reference type: |
separately_saleable |
Separately saleable. Reference type: |
active_market_value_evidenced |
Active market value evidenced. Reference type: |
qualified_value |
Qualified value. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-goodwill-zero") result <- do.call(valuation_intangible_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-23", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-baseline-goodwill-zero") result <- do.call(valuation_intangible_value, c(case$kwargs, list(context = context))) result$value
The input is a monetary valuation effect, not a spread or a period-only delta. Initial-recognition credit is retained; do not also apply this correction to a bottom-up value already holding initial credit constant.
valuation_liability_excluding_own_credit( current_value, own_credit_change, qualification_reference, context, ... )valuation_liability_excluding_own_credit( current_value, own_credit_change, qualification_reference, context, ... )
current_value |
Current value. Reference type: |
own_credit_change |
Own credit change. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-own-credit-baseline-signed") result <- do.call(valuation_liability_excluding_own_credit, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-own-credit-baseline-signed") result <- do.call(valuation_liability_excluding_own_credit, c(case$kwargs, list(context = context))) result$value
The closed method vocabulary describes this component's supported scope; a rejected unimplemented technique is not thereby declared unlawful. Required cost flags mean material costs were assessed and adjusted where necessary. The future deposit exception delegates its profile, threshold and override checks to the existing component. No zero/default substitutes for missing data.
valuation_method_checked_value( qualified_value, position_type, method, qualification_reference, conditions = NULL, deposit_terms = NULL, hierarchy = NULL, own_credit = NULL, context, ... )valuation_method_checked_value( qualified_value, position_type, method, qualification_reference, conditions = NULL, deposit_terms = NULL, hierarchy = NULL, own_credit = NULL, context, ... )
qualified_value |
Qualified value. Reference type: |
position_type |
Position type. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
conditions |
Conditions. Reference type: |
deposit_terms |
Deposit terms. Reference type: |
hierarchy |
Hierarchy. Reference type: |
own_credit |
Own credit. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-method-baseline-16-3-pass") result <- do.call(valuation_method_checked_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-method-baseline-16-3-pass") result <- do.call(valuation_method_checked_value, c(case$kwargs, list(context = context))) result$value
Flags refer specifically to Directive214(2) and229. Otherwise the external Article13 value passes through without a floor or a second ownership share.
valuation_participation_value( excluded_from_group_supervision, deducted_from_group_own_funds, qualified_value = NULL, qualification_reference, context, ... )valuation_participation_value( excluded_from_group_supervision, deducted_from_group_own_funds, qualified_value = NULL, qualification_reference, context, ... )
excluded_from_group_supervision |
Excluded from group supervision. Reference type: |
deducted_from_group_own_funds |
Deducted from group own funds. Reference type: |
qualified_value |
Qualified value. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-extra-baseline-retained") result <- do.call(valuation_participation_value, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2025-01-17", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2024-2025-v0.1") case <- reference_case("valuation-extra-baseline-retained") result <- do.call(valuation_participation_value, c(case$kwargs, list(context = context))) result$value
Deposit classification, term basis, SNC status and materiality are external. Both comparisons are strict; failure does not invent a fair-value fallback.
valuation_short_term_deposit_cost_2027( cost_value, term_years, small_non_complex, no_material_valuation_error, alternative_value = NULL, method, qualification_reference, context, ... )valuation_short_term_deposit_cost_2027( cost_value, term_years, small_non_complex, no_material_valuation_error, alternative_value = NULL, method, qualification_reference, context, ... )
cost_value |
Cost value. Reference type: |
term_years |
Term years. Reference type: |
small_non_complex |
Small non complex. Reference type: |
no_material_valuation_error |
No material valuation error. Reference type: |
alternative_value |
Alternative value. Reference type: |
method |
Method. Reference type: |
qualification_reference |
Qualification reference. Reference type: |
context |
Explicit |
... |
Reserved; unknown inputs are rejected rather than ignored. |
Monetary inputs use context currency, not implicit thousands. Ratios and rates are decimal fractions unless a named input says otherwise. Missing, NA, NaN and infinite numeric inputs are rejected; vectors are not silently recycled. Scope and applicability guards follow the Golden Source.
A Result list with value, unit, formula_id, sources,
context, reproducible R input_hash/profile_hash, details and status.
Value unit: context currency.
Context(), NumericOverride(), reference_cases()
context <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("valuation-deposit-future-cost") result <- do.call(valuation_short_term_deposit_cost_2027, c(case$kwargs, list(context = context))) result$valuecontext <- Context( as_of = "2027-01-30", known_at = "2026-09-30", currency = "EUR", profile_id = "EU-S2-DOCUMENTS-2027-v0.1") case <- reference_case("valuation-deposit-future-cost") result <- do.call(valuation_short_term_deposit_cost_2027, c(case$kwargs, list(context = context))) result$value