ores.refdata.asset_class_catalogue

Table of Contents

Two lists answer two different questions about an asset, and the repository kept a hand-written copy of each in dozens of places. The refdata product taxonomy answers what a trade or a market series is; it is FK-validated by ores_refdata_validate_asset_class_code_fn and is what market_series_asset_classes, series_classification_rules and instrument_codes check against. The oresmd market-data namespace answers which key grammar a market-data item is written in, and it is what an oresmd_uri's authority carries.

The two overlap without being the same list: ir and interest_rates are one concept under two spellings, as are security and bond, and correlation, shape_profile, rating, power and generic exist only in the namespace. The Namespace table below states the mapping, which nothing declared before this model.

This model is the single source for both lists. The refdata seed SQL, the DQ badge rows, the briefs and the documentation are generated from it, and a codegen run fails when an oresmd model names an authority this namespace does not hold.

1. Taxonomy

The refdata product taxonomy, in display order. One entry per class a product or a market series can carry.

1.1. fx

Foreign exchange: instruments whose value derives from the exchange rate between two currencies. Covers FX spot, forwards, swaps, and vanilla/exotic options, along with the market data that prices them – spot rates, forward points, and volatility surfaces quoted by currency pair. FX is unique among asset classes in that every trade inherently involves two currencies rather than one underlying, which is why FX risk shows up as a cross-cutting concern in every other asset class (a USD-denominated equity option still carries FX risk for a EUR-based book).

1.2. interest_rates

Interest rate products: instruments whose value derives from the level or shape of a yield curve for a given currency and index (e.g. USD SOFR, EUR ESTR). Covers deposits, forward rate agreements, interest rate swaps and swaptions, caps/floors, and cross-currency swaps, together with the curve-construction market data – discount factors, zero rates, and forward rates bootstrapped from quoted instruments at standard tenors. Interest rates is typically the first curve built in any pricing pipeline, since discounting and forward-rate projection for every other asset class ultimately depends on it.

1.3. credit

Credit risk products: instruments whose value derives from the likelihood and severity of an issuer or reference entity defaulting on its obligations. Covers credit default swaps (single-name and index), credit-linked notes, and the underlying market data – CDS spreads, hazard rate curves bootstrapped from those spreads, and assumed recovery rates. Credit curves are quoted per reference entity (or index series) and are combined with a rates curve to produce risky discount factors for defaultable cashflows.

1.4. equity

Equity products: instruments whose value derives from the price of a single stock, a basket of stocks, or an equity index. Covers equity spot and forward positions, vanilla and exotic equity options (including barrier, Asian, and variance-swap structures), and the associated market data – spot prices, dividend yield curves, and implied volatility surfaces quoted by strike and expiry. Equity derivatives pricing typically layers a dividend/borrow-cost forward curve and a volatility surface on top of the rates discount curve.

1.5. commodity

Commodity products: instruments whose value derives from the price of a physical commodity (energy, metals, agriculturals) or a commodity index/future. Covers commodity forwards, swaps, and options (including Asian and spread structures), and the associated market data – forward curves (which, unlike FX or rates, are often in backwardation or contango driven by storage cost and convenience yield rather than pure interest-rate parity) and volatility surfaces per delivery point/contract month.

1.6. inflation

Inflation-linked products: instruments whose value derives from a published price index (e.g. US CPI, UK RPI/CPI, EU HICP). Covers zero-coupon and year-on-year inflation swaps, inflation caps/floors, and inflation-linked bonds, together with the associated market data – the inflation fixing/index curve (historical and forward-projected, with a seasonality adjustment for the index's known within-year pattern) and inflation volatility surfaces. Inflation curves are built and discounted against the nominal rates curve for the same currency.

1.7. bond

Bond products: fixed-income securities that pay a defined schedule of coupons and a principal redemption, whose value derives from a discount curve plus an issuer-specific credit/liquidity spread. Covers vanilla fixed and floating-rate bonds, callable/convertible bonds, and bond futures/options, together with the associated market data – clean/dirty prices, yield-to-maturity, and issuer spread curves quoted over the risk-free (or asset-swap) curve. Government bonds are also a primary source instrument for bootstrapping the risk-free rates curve itself.

1.8. scripted

Scripted products: trades whose payoff is stated as a script rather than as a named product, because the payoff spans asset classes or has no closed form a product element could carry. Covers the generic scripted trade, autocallables, double digital options and performance options, and the parameters each script reads – its underlyings, its observation dates and the levels it pays at. A scripted trade names the script the engine runs and states the script itself, so its market data is whatever its underlyings need: an equity script observes equities and their volatility surfaces, and a script over several classes observes each of them.

2. Namespace

The oresmd market-data namespace, one entry per authority an oresmd_uri can carry. refdata_code is the taxonomy class a series in this authority belongs to, and is empty where the authority names no product class of its own.

2.1. ir

Interest-rate curves, deposits, FRAs, swaps, caps and floors, quoted per currency and index.

2.2. credit

Credit spreads and hazard-rate curves, quoted per reference entity or index series.

2.3. equity

Equity spots, forwards, dividends and volatility surfaces, quoted per name or index.

2.4. commodity

Commodity forwards and volatilities, quoted per name, delivery point and contract month.

2.5. fx

Foreign-exchange spots, forward points and volatility surfaces, quoted per currency pair.

2.6. inflation

Inflation fixings, zero-coupon and year-on-year swap curves and volatilities, quoted per price index.

2.7. correlation

Pairwise correlations between two underlyings. The key's operands name the two classes it relates, so the authority names no class of its own.

2.8. security

Bond prices, yields and spread curves, quoted per issuer and seniority. The taxonomy calls this product class bond; the oresmd namespace calls it security.

2.9. shape_profile

A named power price shape: the within-year pattern the class carries.

2.10. rating

Credit ratings and the transitions between them, which measure the credit class.

2.11. power

Intraday and forward power prices, quoted per contract hour and delivery area.

2.12. generic

A wrapper whose metric slot names the instrument inside it, so the metric decides the class rather than the authority.

3. Code domain

The DQ code domain the taxonomy's badge mappings hang off, and the order it sorts at among the other domains. Its description names the codes because that is what a reader of the domain list wants; {codes} is replaced by the taxonomy's own codes, in display order, when the DQ rows are generated.

3.1. asset_class

Top-level product classification codes ({codes}), shown on instrument_code and asset_class_code.

4. See also

Emacs 29.3 (Org mode 9.6.15)