ores.trading.inflation_swap_instrument

Table of Contents

Represents an inflation-linked swap where one leg pays a fixed or floating rate and the other is linked to an inflation index (e.g., CPI, RPI).

Flags

Primary key

UUID uniquely identifying this inflation swap instrument.

Surrogate key for the instrument record.

Natural keys

Columns

trade_type_code

Trade type code (soft FK to ores_trading_trade_types_tbl).

std::string("ZeroCouponInflationSwap")

party_id

Party that owns this instrument.

Set from session variable app.current_party_id.

trade_id

Optional soft FK to the parent trade.

Links instrument to a trade if applicable.

start_date

Swap effective start date.

ISO 8601 date string (YYYY-MM-DD).

std::string("2024-01-15")

maturity_date

Swap maturity date.

Must be after start_date.

std::string("2034-01-15")

inflation_index_code

Inflation index code.

e.g., UKRPI, USCPI, EUHICPXT.

std::string("UKRPI")

base_cpi

Optional base CPI value at inception.

Used to calculate the inflation accrual. Must be positive if set.

lag_convention

Optional CPI lag convention.

e.g., 3M, 2M. Specifies the publication lag for the inflation index.

description

Optional free-text description.

Human-readable notes about this instrument.

SQL

Flags

C++

The C++ domain class is decomposed into nested sub-structs (the C1202 pattern from PRs #1047/#1071/#1075/#1083/#1085): the implicit scaffolding columns (version, tenant_id, workspace_id, the primary key) and the columns marked :group: identity below fold into an instrument_identity identity; member (see the ores.trading.instrument_identity field-group model), the implicit audit columns fold into an ores::dq::domain::audit_record audit; member (see the ores.dq.audit_record field-group model), and the remaining columns stay flat in between. The SQL schema, DB entity and column lists are unaffected — only the domain class and the mapper's domain-side accesses nest. The entity templates consume these annotations; domain and repository profiles regenerate correctly.

Flags

Repository

Domain includes

#include <chrono>
#include <string>

Conventions

Custom repository methods

See also

Emacs 29.1 (Org mode 9.6.6)