Skip to content

SeriesMetadata

This content is not available in your language yet.

Defined in: types/domain.ts:51

Static, IGCP-published parameters that define a series. These never change for an existing series; new series are added by registering additional metadata objects in src/core/series.ts.

readonly baseRateClampMaxPct: string;

Defined in: types/domain.ts:82


readonly baseRateClampMinPct: string;

Defined in: types/domain.ts:81


readonly baseRateDecimals: number;

Defined in: types/domain.ts:126


readonly optional baseRateEuriborMultiplierPct?: string;

Defined in: types/domain.ts:89

Multiplier applied to the rounded Euribor 3M mean (after the 10-day average is rounded to baseRateDecimals). Séries D/E/F use the default implicit 1; Série C uses 0.85 per Portaria n.º 73-A/2008 and n.º 230-A/2009.


readonly optional baseRatePostMeanOffsets?: readonly {
effectiveFromMonth: string;
offsetPct: string;
}[];

Defined in: types/domain.ts:99

Optional piecewise additive offset (percentage points) after the scaled rounded mean, keyed by the calendar month of the published base rate (YYYY-MM). When set, the row with the greatest effectiveFromMonth that is still <= the target month wins. Série C uses this for the 0,85 × E3 − 0,250,85 × E3 + 0,25 transition (March 2009). When absent, baseRateSpreadPct is the sole additive term after multiplication (with multiplier defaulting to 1).


readonly baseRateSpreadPct: string;

Defined in: types/domain.ts:125

Additive spread (in percentage points, as a decimal string) applied to the rounded Euribor 3M mean after baseRateEuriborMultiplierPct (default 1) before clamping into the [baseRateClampMinPct, baseRateClampMaxPct] window. Série F uses "0" (the published formula has no spread); Série E uses "1" (the published formula is E3 + 1%). Série C leaves this at "0" and uses baseRatePostMeanOffsets instead.


readonly capitalizationFrequency: "quarterly";

Defined in: types/domain.ts:134


readonly code: SeriesCode;

Defined in: types/domain.ts:52


readonly defaultIrsRate: string;

Defined in: types/domain.ts:135


readonly euribor3mAveragingDays: number;

Defined in: types/domain.ts:133


readonly maturityYears: number | null;

Defined in: types/domain.ts:60

Years from subscription to contractual maturity, or null for perpetual certificates (Série B: no redemption date until the holder redeems).


readonly maxUnits: number;

Defined in: types/domain.ts:74


readonly minimumHoldingMonths: number;

Defined in: types/domain.ts:55

Minimum whole-calendar-month holding period before redemption is allowed.


readonly minUnits: number;

Defined in: types/domain.ts:73


readonly name: string;

Defined in: types/domain.ts:53


readonly optional premiumTierModernizationDate?: string;

Defined in: types/domain.ts:115

First quarterStartDate (inclusive) that uses premiumTiers instead of premiumTiersLegacy for series that define a legacy table. ISO YYYY-MM-DD string compared lexicographically to dates.


readonly premiumTiers: readonly PremiumTier[];

Defined in: types/domain.ts:136


readonly optional premiumTiersLegacy?: readonly PremiumTier[];

Defined in: types/domain.ts:109

Permanence-premium tiers that apply to quarters with quarterStartDate strictly before premiumTierModernizationDate. Only Série C carries a legacy table (Portaria n.º 73-A/2008) before Portaria n.º 230-A/2009.


readonly optional ratesJsonMaxContractYears?: number;

Defined in: types/domain.ts:65

When maturityYears is null, caps cohort rows in rates.json so the artifact stays bounded (quarters beyond this are omitted).


readonly optional subscriptionEndDate?: string;

Defined in: types/domain.ts:72

Last date on which subscriptions were accepted, inclusive. undefined means subscriptions are still open. Set for closed series such as Série E (closed by Portaria n.º 149-A/2023, 2 June 2023).


readonly subscriptionStartDate: string;

Defined in: types/domain.ts:66


readonly unitFaceValueEur: string;

Defined in: types/domain.ts:80

Nominal EUR represented by one whole certificate unit (units input). Séries B–F use 1 (one unit = €1). Série A uses 0.34916 per Decreto 43.454/1960 (face value of one certificate).


readonly unitQuoteDecimals: number;

Defined in: types/domain.ts:132

Decimal places retained for the per-unit net quote after each capitalization. Séries C, D, E and F use 5 decimals to mirror IGCP’s published quote precision.