← top index

Identifier grammar: curve specs vs market quote names

Two different grammars reference the same market data. A market quote name (4–7 tokens incl. the quote type, e.g. FX/RATE/USD/VND) appears in market data files and in curveconfig (e.g. <SpotRate>, segment <Quotes>). A curve spec (1–4 tokens, no quote-type token, e.g. FX/USD/VND, Yield/EUR/EUR6M) appears in todaysmarket.xml values. Putting a quote name where a curve spec is expected fails at runtime with Unexpected number of tokens in FX curve spec FX/RATE/USD/VND (the FX spec takes exactly 3 tokens: type + 2 currencies).

Curve specs (used in todaysmarket.xml)

Spec typeToken layoutSource-comment examples
YieldYield/ccy/curveConfigID
CapFloorVolatilityCapFloorVolatility/key/curveConfigIDCapFloorVolatility/EUR-ESTER/CurveConfigID; CapFloorVolatility/EUR/CurveConfigID
SwaptionVolatilitySwaptionVolatility/key/curveConfigIDSwaptionVolatility/EUR/CurveConfigID
YieldVolatilityYieldVolatility/curveConfigIDYieldVolatility/CurveConfigID
FXFX/unitCcy/ccyFX/USD/CHF
FXVolatilityFXVolatility/unitCcy/ccy/curveConfigIDFX/USD/CHF/CurveConfigID
DefaultDefault/ccy/curveConfigIDDefault/USD/CurveConfigID
CDSVolatilityCDSVolatility/curveConfigIDCDSVolatility/CurveConfigID
BaseCorrelationBaseCorrelation/curveConfigIDBaseCorrelation/CurveConfigID
InflationInflation/index/curveConfigIDInflation/EUHICPXT/CurveConfigID
InflationCapFloorVolatilityInflationCapFloorVolatility/index/curveConfigID
EquityEquity/ccy/curveConfigIDEquity/USD/CurveConfigID
EquityVolatilityEquityVolatility/ccy/curveConfigIDEquityVolatility/USD/CurveConfigID
SecuritySecurity/securityIDSecurity/ISIN
CommodityCommodity/CCY/CommodityCurveConfigIdCommodity/CCY/CommodityCurveConfigId
CorrelationCorrelation/idCorrelation/CorrelationCurveConfigId
CommodityVolatilityCommodityVolatility/CCY/CommodityVolatilityConfigIdCommodityVolatility/CCY/CommodityVolatilityConfigId
SwapIndexSwapIndex/
YieldCurvesYieldCurves
CapFloorVolatilitiesCapFloorVolatilities
SwaptionVolatilitiesSwaptionVolatilities
YieldVolatilitiesYieldVolatilities
FXSpotsFXSpots
FXVolatilitiesFXVolatilities
DefaultCurvesDefaultCurves
CDSVolatilitiesCDSVolatilities
BaseCorrelationsBaseCorrelations
InflationCurvesInflationCurves
InflationCapFloorVolatilitiesInflationCapFloorVolatilities
EquityCurvesEquityCurves
EquityVolatilitiesEquityVolatilities
SecuritiesSecurities
CommodityCurvesCommodityCurves
CorrelationsCorrelations
CommodityVolatilitiesCommodityVolatilities

todaysmarket.xml section names and real values (from the shared example)

Section names recognised by ORE: YieldCurves, CapFloorVolatilities, SwaptionVolatilities, YieldVolatilities, FXSpots, FXVolatilities, DefaultCurves, CDSVolatilities, BaseCorrelations, InflationCurves, InflationCapFloorVolatilities, EquityCurves, EquityVolatilities, Securities, CommodityCurves, Correlations, CommodityVolatilities.

ElementExample values (curve specs)
<BaseCorrelation>BaseCorrelation/CDXIG
<CDSVolatility>CDSVolatility/CPTY_A, CDSVolatility/CDXIG
<CapFloorVolatility>CapFloorVolatility/EUR/EUR_CF_N, CapFloorVolatility/USD/USD_CF_N, CapFloorVolatility/GBP/GBP_CF_N
<CommodityCurve>Commodity/USD/GOLD_USD, Commodity/USD/WTI_USD
<CommodityVolatility>CommodityVolatility/USD/GOLD_USD_VOLS, CommodityVolatility/USD/WTI_USD_VOLS
<DefaultCurve>Default/USD/BANK_SR_USD, Default/USD/CPTY_A_SR_USD, Default/EUR/CPTY_C_SR_EUR
<DiscountingCurve>Yield/EUR/EUR6M, Yield/USD/USD3M, Yield/GBP/GBP6M
<EquityCurve>Equity/USD/SP5, Equity/EUR/Lufthansa, Equity/EUR/SX5E
<EquityVolatility>EquityVolatility/USD/SP5, EquityVolatility/EUR/Lufthansa, EquityVolatility/EUR/SX5E
<FxSpot>FX/EUR/USD, FX/EUR/GBP, FX/EUR/CHF
<FxVolatility>FXVolatility/EUR/USD/EURUSD, FXVolatility/EUR/GBP/EURGBP, FXVolatility/EUR/CHF/EURCHF
<Index>Yield/EUR/EUR1M, Yield/EUR/EUR3M, Yield/EUR/EUR6M
<Security>Security/SECURITY_1, Security/SECURITY_2, Security/ISIN:XS0983610930
<SwaptionVolatility>SwaptionVolatility/EUR/EUR_SW_N, SwaptionVolatility/USD/USD_SW_N, SwaptionVolatility/GBP/GBP_SW_N
<YYInflationCapFloorVolatility>InflationCapFloorVolatility/EUHICPXT/EUHICPXT_YY_CF_N
<YYInflationIndexCurve>Inflation/EUHICPXT/EUHICPXT_YY_Swaps
<YieldCurve>Yield/EUR/BENCHMARK_EUR, Yield/EUR/BANK_EUR_LEND, Yield/EUR/BANK_EUR_BORROW
<ZeroInflationCapFloorVolatility>InflationCapFloorVolatility/UKRPI/UKRPI_ZC_CF, InflationCapFloorVolatility/EUHICPXT/EUHICPXT_ZC_CF, InflationCapFloorVolatility/USCPI/USCPI_ZC_CF
<ZeroInflationIndexCurve>Inflation/EUHICP/EUHICP_ZC_Swaps, Inflation/EUHICPXT/EUHICPXT_ZC_Swaps, Inflation/FRHICP/FRHICP_ZC_Swaps

Market quote names

See market quote naming for the full per-instrument grammar (quote names always carry the quote type as token 1, e.g. RATE).

Extracted from OREData/ored/marketdata/curvespecparser.cpp (case blocks and parseCurveConfigurationType) and shared/todaysmarket.xml, ORE 1.8.15.