Sensitivity
The Sensitivity analysis allows showing the discrete sensitivity of a portfolio’s value to changes in quotes or market data that are used to value the portfolio
Approach
The Sensitivity analysis is based on the Calypso Scenario engine. It provides discrete sensitivities based on finite differences by simply shifting the market data or quotes, and pricing the portfolio before and after modification. Sensitivity analysis leverages Calypso scenario rules, market data sets, and formulas.
The Sensitivity analysis can either shift the output of the market data (curve points, for example), or the input (curve underlying instrument quotes, for example). In the latter, the Sensitivity analysis will generate the market data again before pricing the portfolio.
The approach ensures a true cross asset solution that works independently of the product and pricers, as it leverages basic methods to shift market data and price the products.
The Sensitivity analysis is fully integrated with Calypso dispatching and risk architecture and thus supports high volumes and real time updates (with regards to trades and market data).
The Sensitivity analysis leverages the Analysis Designer window to offer a user-friendly and intuitive configuration window.
Configuration
The Sensitivity analysis can be configured from Configuration > Reporting & Risk > Analysis Designer. Right-click a Sensitivity folder in Analysis Designer, and choose "New Analysis" to add a parameter configuration. You will be prompted to enter a configuration name.
Sample Sensitivity parameters
» | Complete the parameters details. Select the type of sensitivity you want to analyze from the Type field - It dictates the other selections. |
– | Commodity - To shift the underlying instruments of a commodity forward curve. |
– | Correlation - To shift the correlation points of a correlation surface. |
– | Credit - To shift the underlying instruments of a credit curve. |
– | Credit-Recovery - To shift the recovery rate of a credit curve. |
– | Currency Exposure - To appreciate each currency of the portfolio in turn. |
– | Equity - To shift the underlying equity quotes. |
– | FX Curve - To shift the underlying instruments of the FX Curve(s). |
– | FX Spot - To shift the spot rate of a currency pair. |
– | Inflation - To shift the underlying instruments, buckets, or seasonality of an inflation curve. |
– | Rate - To shift the underlying instruments, or the points of an interest rate curve. |
You can also shift Product Specific interest rate curves by adding their usage to the domain "ScenarioMarketDataSet.Rates" - Example: FWD_PRICE_FOR.
– | Volatility - To shift the volatility points, or the underlying instruments of a volatility surface. |
The types of sensitivity are described in detail below.
» | Specify the Advanced parameters settings as needed. |
Ⓘ [NOTE: All settings do not apply to all types of sensitivity]
– | Hedge Accounting: Select a Participation Classification as needed. It allows grouping hedging trades and hedged trades in the output. Participation Classifications are set in Hedge Definitions. |
Please refer to Calypso Hedge Accounting documentation for details.
– | Shift Driver: For the Rate sensitivity, and for the “Underlyings” perturbation, the shift driver can be defined to determine the direction of the shifts: |
Curve (default) - All curve instrument quotes are shifted so that the resulting yield curve moves in the direction defined by the shift amount (in other words, the resulting yield curve’s shift direction drives the curve underlying’s shift direction). This allows the resulting yield curve as a whole to move in the same direction. For example, this allows the underlying and triangle shifts to roughly match. For market standard basis curves that are below the base curve but defined with a positive spread (i.e. USD FedFunds defined as a positive spread below USD LIBOR), then a curve-driven positive shift on the basis curve results in a reduction of the spread (i.e. a negative shift on the market quotes).
Instrument - The direction of the shift depends on the nature of each underlying instrument, regardless of the curve they belong to. MM, FRA, Swap, etc. will move in the same direction as the input. Money Market Futures quoted in price will move opposite to the defined input. FX Forwards will have an adjusted shift value and move in the same direction as the input. Each instrument will be labeled as ‘Rate’, ‘Fixing’, ‘Basis’, ‘Spread’, 'FX', or 'FXSpot' type in the report output in order to allow aggregation and subtotal by risk type and not by curve. Using the example of +1bp shift on the USD FedFunds curve defined as a basis below the USD LIBOR curve, the short end of the resulting yield curve will move up (because of the MM or Future instruments), and the long end will move down (because of the FedFunds basis swaps, shift up on the quote means a widening of the spread).
– | Scaling Factor: Some types of sensitivities allow specifying a scaling factor - It will multiply the shift amount and divide the result. See formulas below for more details. A value of 0 is not supported. |
– | Underlier Attributes: Some types of sensitivities allow adding attributes to the output concerning the market data being shifted. |
– | Trade Attributes: Use this field to add more trade attributes to the output. For example, the trade attribute "CounterParty" allows you to slice by trade counterparty in the output. |
– | Aggregate Results: Only available for Rate sensitivity Par Rates and Triangles. When checked, risk results are aggregated at the analysis level, then saved to the middle tier, using trade attributes and risk factor attributes. Market data updates and trade drill-down are not supported during aggregation. |
– | Grid: Trades per job: When using a dispatcher, this input controls how many trades should be included in a single dispatcher’s job. |
The Calypso API allows defining weights for the products in order to assign higher coefficients to some more complex trades. In this case, this input will control the weighted number of trades per job rather than the actual number of trades per job.
Upon execution, the process will assign trades to the current job until the maximum capacity is reached or exceeded. So the final weighted number of trades in a job can be slightly more than what is defined in the configuration.
Default is 500.
– | Use Daily Points: Only applies to Rate sensitivity, and for the "Triangles" perturbation. Controls the generation of daily curves by inserting daily points for the entire duration of each curve prior to applying any shifts. Note that checking this box will have an adverse impact on performance. |
Daily Points Optimization - Daily/Weekly/Monthly: To mitigate the adverse performance impact with the use of Daily Points functionality, a default tiered approach is implemented to calculate points as Daily (1D to 5Y), Weekly (5Y to 10Y), or Monthly (10Y to 100Y). This approach reduces performance strain and is not expected to impact analysis accuracy due to the nature of the long end of the curve.
Daily Points Domains - Optimization Customization: When Use Daily Points is set to "TRUE", you can customize this optimization by adding one or more Tenors to the following domains.
"TringleShifts_Daily": Create daily points from 1D up to the defined Tenor, and weekly points thereafter. Default is 5Y.
"TringleShifts_Weekly": Create weekly points from the daily points end tenor up to the defined tenor, and monthly points thereafter. Default is 10Y.
Ⓘ [NOTE: Daily tenor must always be shorter than weekly.]
Ⓘ [NOTE: If a triangle matches one defined tenor of the domain, this shift will be logged in Verbose.]
– | Explode Trades: Controls whether the trades should be exploded into their underlying components prior to running the report. The explode functions is handled by the <Product>RiskExplode API for each product type. |
– | Commodity Hierarchy: Selection of a hierarchy for view in the sensitivity report. Includes five columns, one for each hierarchy name and four for the first four levels of the hierarchy to which the commodity belongs. If a commodity belongs to a node that has more than four levels, a warning is generated. Hierarchies are created in the Commodity Hierarchy Categorizer (gui.widget.CommodityCategorizer ). Commonly used with energy commodities which are traded in many locations or markets and in many different forms. |
– | Generate Rolled items: Controls whether the market data items that do not exist in the pricing environment at the report's valuation date should be simply rolled (False), or generated again (True). By default, they are simply rolled. |
– | Generate dependents: This only applies to Rate parameters (Underlyings, Buckets, and Triangles) and Volatility parameters (Points and Underlyings Instruments). Controls the generation of dependent curves and volatility surfaces (including forecast curves with underlying discount curves). |
Include probability: Available when Generate dependents is checked, this option will additionally generate all dependent credit curves with each rate change. The recommended setting is unchecked to ensure optimal performance.
Include basis: Available when Generate dependents is checked, this option will determine whether or not to recalibrate CurveBasis dependents. Unchecked, the basis will be held constant.
When "Generate dependents" is not checked, the shifts are only applied to market data needed for pricing.
– | Alternate Curve: This only applies to Rate parameters. |
Use alternate interpolator: If you are using spline interpolators for pricing (MonotoneConvex, Spline, LogSpline) that use the whole curve for interpolation, you can select linear interpolators for the risk computations to use only two consecutive points for interpolation.
Check “Use alternate interpolator” to use the interpolator defined in domain “riskAlternateCurveInterpolator” for interpolation, typically InterpolatorLinear or InterpolatorLogLinear (default value if domain is empty).
The domain "riskAlternateCurveInterpolateAs" allows defining if the interpolation is done as Rate or DiscountFactor.
Fast curves Approx.: Check to optimize daily averages and FX resets approximations in curve generation. Checking this box has a positive impact on performance. Please refer to Calypso Curves documentation for further details.
– | Exclude Skipped Curves: When checked, the Risk process is skipped altogether on the curves defined in the "Exclude Curves Group" selection of the Par Rates Measure Maker window. When the box is unchecked, Risk is run on the curves defined in the "Exclude Curves Group" as normal, even though they are not simplified in the Par Rates process. |
– | Market Data Structure: Check to include all tenors in the analysis output, including tenors against which there is zero sensitivity. |
– | Comments: Free form comment for information purposes. |
» | Click Save to save the configuration. |
The following settings are limited to prevent running into memory and performance issues:
• | No more than 30 trade attributes |
• | No more than 20 underlier attributes |
• | Cannot select more than 10 pricer measures |
Sensitivity results can be viewed in the Calypso Workstation.
See Calypso Workstation for setup information.
Custom Pricer Measures
NOTE: Custom Pricer Measures which require market data in addition to what is already managed by the Pricer are not supported (e.g. ACCURAL_BO_BASE, VEGA_BASE). Any “Base” conversions can be configured to occur at report level.
1. Commodity Sensitivity
Select the Commodity type.
Sample commodity sensitivity parameters
• | Perturbation Type: Select the perturbation type: Underlyings or Points. |
• | Sensitivity As: Select Single Sided (shift up), or Double Sided (shift up and down). |
• | Include Gamma: You can also include Gamma. |
• | Measures/Custom Measures: Select the risk measures and custom measures as needed. They are described below. |
Risk Measures and Custom Measures
The following notations are used in the formulas:
• | c - commodity quote / curve |
• | s - shift amount (1% relative for both Underlyings and Points) |
Measures | Formula |
---|---|
commodityDELTA |
Change in NPV for a shift in the underlying instruments quotes. Single Sided (NPV(c + s ) - NPV(c)) Double Sided [(NPV(c + s ) - NPV(c - s )) * 0.5] |
commodityGAMMA |
Change in commodityDELTA for a shift in the underlying instruments quotes. [(NPV(c + s ) + NPV(c - s )) - 2 * NPV(c)] |
Ref Delta |
DELTA in terms of the commodity’s reference unit. The Reference Unit is the unit specified in the “Quote Unit” field in the Commodity definition. commodityDELTA / quote unit |
Risk Delta |
DELTA in terms of the commodity’s secondary risk unit. This is the unit specified in the “Risk Unit” field in the Commodity definition. This can be the same as the Ref Unit. Risk Delta = Ref Delta * Conversion, where Conversion is the unit conversion from the commodity conversion table from ref units to risk units. (commodityDELTA / quote unit) * Unit Conversion |
Risk Delta 1 |
Expressed in Risk Unit 1 as specified on the Analysis Designer Risk Delta 1 = Ref Delta converted to Risk Unit 1 A single report will have Risk Delta 1 expressed in one unit. |
Risk Delta 2 |
Expressed in Risk Unit 2 as specified on the Analysis Designer Risk Delta 2 = Ref Delta converted to Risk Unit 2 A single report will have Risk Delta 2 expressed in one unit. |
Con Delta |
DELTA in terms of the commodity’s proxy future contract equivalents. Con Delta = Ref Delta * Conversion, where Conversion is the unit conversion from the commodity conversion table from ref units to Contracts. (commodityDELTA / quote unit) / Contract |
Weighted Ref Delta |
The Reference Delta for a given underlying adjusted to prompt contract equivalents. Weighted Ref Delta = Ref Delta * Weight. The weights are entered in the Commodity Weight Window. (commodityDELTA / quote unit * Weight) The weights are applied to the underlying instruments of the curves. The last weight value applies to the remaining underlying instruments, if any.
|
Ⓘ [NOTE: If more than three units of measure are required for one commodity type, the reporting for that commodity will need to be split into more than one analysis]
Sample commodity sensitivity results
2. Correlation Sensitivity
Select the Correlation type. Any Correlation Matrix with more than 3 axes is not supported.
Sample Correlation sensitivity parameters
» | Correlation Type: Select the correlation type: Rate/FX, Rate, Equity, Equity/FX, or Basket. |
» | Perturbation is sequential and parallel only. |
NPV_Diff (NPV shifted - BASE NPV). It is numerically calculated by shifting the correlation points sequentially by 1% up, and recalculating the NPV of the trade/portfolio.
– | Rate = Shift the correlation points individually per each combination of Index/Index and Tenor. |
– | Rate/FX = Shift the correlation points individually per each combination of Index/FX and Tenor. |
The result is one shifted NPV per combination of Index/Index and Tenor (or Index/FX and Tenor). Sensitivity will be calculated as the difference between shifted NPV and BASE NPV. There will be one sensitivity per combination of Index/Index and Tenor (or each Index/FX and Tenor).
– | Equity = Shift the correlation points individually per each combination of Equity/Equity or Equity/EquityIndex or EquityIndex/EquityIndex and Tenor. |
– | Equity/FX = Shift the correlation points individually per each combination of Equity/FX and Tenor. |
The result is one shifted NPV per combination of Equity/Equity and Tenor (or Equity/FX and Tenor). Sensitivity will be calculated as the difference between shifted NPV and BASE NPV. There will be one sensitivity per combination of Equity/Equity and Tenor (or each Equity/FX and Tenor).
– | Basket |
Liquid Correlation surface: correlation points are shifted.
Bespoke Correlation surface: Liquid Correlation surface points are shifted. If Correlation Formula is used, the correlation points of all Liquid Correlations are shifted (separately), the Bespoke Correlation is re-generated and the trade/portfolio is priced to get shifted NPV.
Each of the liquid correlation surfaces are shifted separately meaning that we shift first liquid correlation and calculate the sensitivity to this surface. Then we shift the second liquid correlation surface etc.
Perturbation will be sequential and parallel only. Shift the points individually per each Tranche and per each Tenor. The result is one shifted NPV per Tenor per Tranche.
3. Credit Sensitivity
Select the Credit type.
Sample credit sensitivity parameters
» | Amount/Amount Type: Enter the shift amount, and select the amount type: absolute basis points or relative percentage. For example, if you specify a relative percentage of 10%, a value of 20bps will move to 22bps. |
» | Sensitivity As: Select Single Sided (shift up), or Double Sided (shift up and down). |
» | Include Gamma: You can also include Gamma. |
» | Include Underlying Delta: You can also include underlying Delta: the Underlying Delta computes the sensitivity of the curves' underlying instruments by creating transient trades. Additional market data may be required for these underlying instruments. |
Ⓘ [NOTE: Only Credit Default Swap curve underlyings are supported]
» | Measures/Custom Measures: The risk measures are selected automatically. Select the custom measure as needed. They are described below. |
Risk Measures and Custom Measures
The following notations are used in the formulas:
• | c - credit spread |
• | s - shift amount |
Measures | Formula |
---|---|
creditDELTA |
Change in NPV for a user-defined shift amount applied to the underlying instruments of the credit curve. Single Sided NPV(c + s) - NPV(c) Double Sided (NPV(c + s) - NPV(c - s)) * 0.5 |
creditDELTA_H |
creditDELTA of the curve underlying. |
creditGAMMA |
NPV(c + s) + NPV(c - s) - 2 * NPV(c) f2 is applied as GAMMA is a second order sensitivity. |
creditInstrumentNotional |
It gives the trade nominal that allows achieving a delta neutral position on this underlying instrument. creditDELTA * Instrument Notional / creditDELTA_H |
Sample credit sensitivity results
4. Credit-Recovery Sensitivity
Select the Credit-Recovery type.
Sample Credit-Recovery sensitivity parameters
» | Amount (% abs) - Enter the shift amount in absolute percentage. |
The perturbation occurs single sided, separately, one by one only.
The recoveryDELTA measure is calculated by shifting the Recovery Rate defined in Credit Curves, and calculating the difference in trade or position NPV (Shifted NPV - Base NPV).
5. Currency Exposure Sensitivity
Select the Currency Exposure type.
Sample Currency Exposure sensitivity parameters
» | Shift Amount: Enter the shift amount in relative percentage. |
» | Measures: ccyExposureBase, ccySplitBase, ccyExposure, ccySplit |
Risk Measures
• | q - FX Spot or Inverted FX Spot |
• | s - Shift Amount |
• | c - Base Ccy Conversion Factor, unshifted FX quote |
• | c' - Base Ccy Conversion Factor, shifted FX quote |
Measures | Formula |
---|---|
ccyExposureBase |
The total FX exposure for the appreciated currency, expressed in base currency. Where the currency to be appreciated is the Primary Currency of the Currency Pair: [NPV(q * (1+s%))(c’)] – [NPV(q)(c)] Where the currency to be appreciated is the Base Currency of the Pricing Environment: [NPV(q)(c)(s%)] - ∑(All Other ccyExposureBase Measures) |
ccySplitBase |
The calculated FX exposure's implied notional-at-risk, expressed in base currency. ccyExposureBase / s% |
ccyExposure |
The total FX exposure for the appreciated currency, expressed in native currency. ccyExposureBase / c |
ccySplit |
The calculated FX exposure's implied notional-at-risk, expressed in native currency. ccyExposure / s% |
Ⓘ [NOTE: There may be differences between the Currency Exposure Risk Measures and similar Pricer Measures. These are attributed to assumptions made when pricing, the nature of the payoff structure, and/or the effects of various Pricing Parameters. For example, when pricing an FX Forward trade with FX_POINTS = TRUE, shifting the spot quote causes a recalculation of the discount factors within the Market Data during the risk process.]
Ⓘ [NOTE: For a Pricing Environment defined to triangulate through a specific currency, this Triangulation Currency will not show any risk when it is solely used to convert between Pricing and Base Currencies. This is due to the offset nature of appreciating this currency against both sides of the triangulation equation.]
6. Equity Sensitivity
Select the Equity type.
Sample equity sensitivity parameters
» | Beta Matrix - Select a beta set name that contains beta values - Beta values are created using Market Data > Correlation & Covariance > Beta Value - Help is available from that window. |
» | Shift Amount - Enter the shift amount in relative percentage. |
» | Sensitivity As - Select whether the sensitivity is Single Sided (shift up), or Double Sided (shift up and down). |
» | Cross Gamma - Check Cross Gamma to include Cross Gamma in equityGAMMA. |
» | Measures/Custom Measures - Select the risk measures and custom measures as needed. They are described below. |
Risk Measures and Custom Measures
The following notations are used in the formulas:
• | e - equity spot |
• | s - shift amount |
• | f - scaling factor |
• | β - beta values |
• | v - volatility |
Measures | Formula |
---|---|
equityDELTA |
Change in NPV for a shift in the underlying quote. Single Sided 1/f * (NPV(e * (1 + s% * f)) - NPV(e)) Double Sided 1/f * ((NPV(e * (1 + s% * f)) - NPV(e * (1 - s% * f))) * 0.5) |
equityScaledDELTA |
Single Sided 1/(f * s%) * (NPV(e * (1 + s% * f)) - NPV(e)) Double Sided 1/(f * s%) * ((NPV(e * (1 + s% * f)) - NPV(e * (1 - s% * f))) * 0.5) |
equityBetaDELTA |
Beta adjusted amount of the underlying in local currency. Single Sided 1/f * (NPV(e * (1 + s% * β * f)) - NPV(e)) Double Sided 1/f * ((NPV(e * (1 + s% * β * f)) - NPV(e * (1 - s% * β * f))) * 0.5) |
equityGAMMA |
Change in equityDELTA for a shift in the underlying quote. 1/f2 * (NPV(e * (1 + s% * f)) + NPV(e * (1 - s% * f)) - 2 * NPV(e)) f2 is applied as GAMMA is a second order sensitivity. |
equityBetaGAMMA |
Change in equityBetaDELTA for a shift in Beta adjusted amount of the underlying. 1/f2 * (NPV(e * (1 + s% * β * f)) + NPV(e * (1 - s% * β * f)) - 2 * NPV(e)) f2 is applied as GAMMA is a second order sensitivity. |
equityScaledGAMMA |
1/(f2 * s2%) * (NPV(e * (1 + s% * f)) + NPV(e * (1 - s% * f)) - 2 * NPV(e)) f2 * s2 are applied as Gamma is a second order sensitivity. |
equityUnitDelta |
equityScaledDELTA expressed in units. equityScaledDELTA / Underlier Spot |
equityUnitGamma |
equityScaledGAMMA in units. equityScaledGAMMA / Underlier Spot |
Sample equity sensitivity results
Cross Gamma
Cross Gamma is supported on baskets of both Equity and EquityIndex underlyings.
Pricer Measures | Formula |
---|---|
equityGAMMA |
Single Gamma 1/f2 * (NPV(e * (1 + s%)) + NPV(e * (1 - s%)) - 2 * NPV(e)) Cross Gamma 1/f2 * ( NPV(e1 * (1 + s% * f), e2 * (1 + s% * f)) + NPV(e1 * (1 - s% * f), e2 * (1 - s% * f)) - NPV(e1 * (1 + s% * f), e2 * (1 - s% * f)) - NPV(e1 * (1 - s% * f), e2 * (1 + s% * f)) ) |
Sample Cross Gamma results
Ⓘ Note: Equity Sensitivity shifts Equity, EquityIndex, ADR, and Fund quotes.
Risk Currency
Equity sensitivities are expressed in the “issuer currency” specified in the Equity definition. The currency of each measure is labeled in the sensitivity report under the “Risk Currency” field.
Explode Trades
• | Risk Explode of all Equity Products exploding into Equity trades in Sensitivity analysis will only happen when Analysis is of Type 'Equity' and ‘EQDDeltaExplode’ is specified in Analysis Comments. (highlighted in below screenshot) |
• | It is recommended to set the ‘ZD_PRICING’ pricing param to FALSE while running explode for Equity Products. |
• | If Explode Trades is checked on Sensitivity Analysis, while exploding, Dummy Child Equity trades will be created then analysis will run on child trades. |
• | Product Codes and Product Definition field -‘Country’ will be percolated on Child Equity trades from underlying Equity Definition. |
• | Trade Keywords will be percolated on Child Equity trades from parent trade. |
• | ‘Parent Security' trade keyword will be populated on Child Equity trades from parent trade. |
• | For ELS, Delta will explode leg wise. Hence for ELS of type Equity/Equity and Basket/Equity, Both legs will be exploded. |
Risk Explode is supported for below list of products:
Product Type |
Underlying |
|||
---|---|---|---|---|
Equity Forward | Equity Index |
|
|
|
ELS | Equity Index |
Future Equity Index |
Future Equity |
Basket |
ESO | Equity Index |
|
|
Basket |
ETO | Equity Index |
|
|
|
Future Equity | Equity Index |
|
|
|
PFS | Equity Index |
Future Equity Index |
|
|
ETF |
ETF |
|
|
|
Underlying | Constituent | |
---|---|---|
Basket | Equity |
Equity Index |
ETF | Equity |
Equity Index |
Equity Index Explode
For Equity Forward, ELS, ESO, ETF, ETO and Future Equity on Equity Index, if Explode Trades is checked on Sensitivity Analysis Params Set then System creates child Equity Trades of each constituent with Notional equal to Weight of constituent multiplied by Parent Trade Delta pricer measure.
Product Type | Pricer Measure used while exploding Child Equity Trades |
---|---|
Equity Forward | Delta |
ELS | Delta |
ESO | Mod_Delta |
ETF |
Delta |
ETO | Delta |
Future Equity | Delta |
Structure Product Explode
• | Risk explode is supported on structured products. |
• | When Explode is checked in sensitivity analysis, First Structured Product is exploded into underlying sub-product. |
• | When Explode is checked along with Comment 'EQDDeltaExplode’ in sensitivity analysis, Structured Product with ESO sub-product is exploded into individual ESO and then ESO is exploded into Equity trade. |
• | This is supported for Structured product with sub-product ESO on Single Name, Equity Index, and Basket. Constituent of Equity Index and Basket can be Equity and Equity Index. |
7. FX Curve Sensitivity
This analysis is predefined to compute the risk for a 1 point absolute shift of FX Forward curve underlyings, separately, sequentially, single-sided, without exploding the trades into sub trades (or legs), and with generating dependents to include basis.
Select the FX Curve type.
Sample FX Curve sensitivity parameters
» | Type: FX Curve |
» | Measures: fxCurveDELTA, undfxCurveDELTA |
When the Include underlying delta is checked, it computes the sensitivity of the curves' underlying instruments by creating transient trades for the underlying instruments. Additional market data may need to be setup for these underlying instruments.
Parameters | Description |
undfxCurveDELTA | fxCurveDELTA of the curve underlying. |
fxInstrumentEquivalent | This hedge ratio gives the trade nominal needed to achieve a delta neutral position on this underlying fxCurveDELTA * Instrument Nominal / undfxCurveDELTA. |
Risk Currency
FX curve sensitivities are expressed in the “PL Display Ccy” specified in the currency pair definition. The currency of each measure is labeled in the sensitivity report under the “Risk Currency” field.
8. FX Spot Sensitivity
Select the FX Spot type.
Sample FX spot sensitivity parameters
» | Amount/Amount Type: Enter the shift amount and select the amount type (pips, or relative percentage). |
» | Sensitivity As: Select whether the sensitivity is Single Sided (shift up), or Double Sided (shift up and down). |
» | Explode Triangulated FX: Check to explode the sensitivity of a currency pair by triangulation currency, or clear to ignore the triangulation currency. This option has no effect on currency pairs that are not triangulated. |
Triangulation currencies are defined in a triangulation rule using Configuration > Definitions > Triangulation Ccy Rule Set. The triangulation rule is set in the pricing parameter TRIANGULATION_CCY_RULESET_NAME.
For example, the currency pair EUR/CHF is triangulated using the USD currency.
If "Explode Triangulated FX" is checked, the report will show the sensitivity to EUR/USD and the sensitivity to USD/CHF.
If "Explode Triangulated FX" is not checked, the report will show the sensitivity to EUR/CHF.
» | Include Gamma: Check to include Gamma, or clear otherwise. |
» | Include underlying delta: Check to include Underlying Delta - The Underlying Delta computes the sensitivity of the FX spot instruments by creating transient trades - Additional market data may be required for these instruments. |
» | Measures/Custom Measures: Select the risk measures and custom measures as needed. They are described below. |
Risk Measures and Custom Measures
The following notations are used in the formulas:
• | q - FX spot |
• | s - shift amount |
• | f - scaling factor |
Measures | Formula |
---|---|
fxDELTA |
Single Sided 1/f * (NPV(q + s * f) - NPV(q)) Double Sided 1/f * ((NPV(q + s * f) - NPV(q - s * f)) * 0.5) |
fxGAMMA |
1/f2 * (NPV(q + s* f) + NPV(q - s* f) - 2 * NPV(q)) f2 is applied as Gamma is a second order sensitivity. |
undFXDELTA |
fxDELTA of the curve underlying. |
fxSpotDelta |
fxDELTA * Instrument Nominal / undFXDelta Ⓘ [NOTE: fxSpotDelta is expressed in the “Delta Display Ccy” specified in the currency pair definition. This value gives the trade nominal needed to achieve a delta neutral position for each line item.] |
Sample FX spot sensitivity results
Risk Currency
FX spot sensitivities are expressed in the “PL Display Ccy” specified in the currency pair definition.
The currency of each measure is labeled in the sensitivity report under the “Risk Currency” field.
9. Inflation Sensitivity
Select the Inflation type.
Sample inflation sensitivity parameters
» | Perturbation Type: Select the perturbation type: |
– | Seasonality - To shift the seasonality adjustments. |
– | Underlyings - To shift the underlying instruments of the inflation curve. |
– | Buckets - To shift the underlying instruments of the inflation curve by buckets. You can select the size of the buckets: Monthly, Quarterly, or Annually. |
» | Amount/Amount Type: Enter the shift amount, and select the amount type: absolute basis points or relative percentage. For example, if you specify a relative percentage of 10%, a value of 120 will move to 132. |
» | Sensitivity As: Select Single Sided (shift up), or Double Sided (shift up and down). |
» | Include Gamma: You can also include Gamma. |
» | Include Underlying Delta: The Underlying Delta computes the sensitivity of the curves' underlying instruments by creating transient trades for the underlying instruments. Additional market data may need to be setup for these underlying instruments. |
» | Measures/Custom Measures: The risk measures are selected based on the previous settings: |
– | inflationDELTA = Change in NPV for a user-defined shift amount applied to the underlying instruments of the inflation curve. |
– | undInflationDELTA (Only supported for Inflation Swap and Inflation Basis Swap) |
– | inflationGAMMA |
– | inflationInstrumentEquivalent custom measure = inflationDELTA * InstrumentNominal / undInflationDELTA (Only supported for Inflation Swap and Inflation Basis Swap) |
10. Rate Sensitivity
Select the Rate type.
Sample rate sensitivity parameters
» | Perturbation Type: Select the perturbation type: |
– | Underlyings - To shift the underlying instruments of the interest rate curve. |
– | Triangles - To apply overlapping triangle shifts to the rate curve (points) – You need to specify the tenors of the triangles in the Measure Maker window - Click Designer to open the Measure Maker window. |
See Analysis Designer - Measure Maker for details.
– | Forward - To apply bucketed shifts to the synthetic forward curve - You need to specify the forward rates in the Measure Maker window - Click Designer to open the Measure Maker window. |
See Analysis Designer - Measure Maker for details.
NOTE: The following objects do not support the Forward perturbation type:
- Basis Curves in the pricing environment given as input to the analysis
- Instruments priced from quotes for which risk is computed through INSTRUMENT_SPREAD (Bond, FutureMM, FutureBond, etc)
– | ParRates - To build equivalent rate curves from simple Money Market and Swap instruments, then compute the underlying sensitivity to them. The replacement curves are built by calculating the break even rate for each underlying instrument then using these values during the construction process. See “Underlyings” above - You need to define the Par Rate curves in the Measure Maker window - Click Designer to open the Measure Maker window. |
- Exclude Skipped Curves - When checked, the Risk process is skipped altogether on the curves defined in the "Exclude Curves Group" selection of the Par Rates Measure Maker window. When the box is unchecked, Risk is run on the curves defined in the "Exclude Curves Group" as normal, even though they are not simplified in the Par Rates process.
See Analysis Designer - Measure Maker for details.
» | Amount/Amount Type: The shift amount depends on the type of perturbation: |
– | For the "Underlyings" perturbation, enter the shift amount, and select the amount type: absolute basis points, absolute percentage, or relative percentage. Example: if you specify a shift of 10%, a value of 40% will move to 50% with an absolute percentage, and 44% with a relative percentage. |
– | For the "Triangles" perturbations, select the configuration defined in the Measure Maker window. |
– | For the "Forward" perturbation, select the forward rates configuration defined in the Measure Maker window. |
– | For the "ParRates" perturbation, select the par rates configuration defined in the Measure Maker window. |
Ⓘ [NOTE: If “Invert Shift” is set to TRUE on a CurveBasis definition, the curve will move down when defining a positive shift on Zero Curves (e.g. Triangle Shifts)]
» | Sensitivity As: Select Single Sided (shift up), Double Sided (shift up and down), Single Sided (cumulative), or Double Sided (cumulative). See formulas below for details. |
» | Include Gamma: You can also include the Gamma risk measure. |
» | Include Underlying Delta: For the "Underlyings" perturbation, you can also include the Underlying Delta - The Underlying Delta computes the sensitivity of the curves' underlying instruments by creating transient trades for the underlying instruments. Additional market data may need to be setup for these underlying instruments. |
» | Benchmark Instruments: For the “Underlyings” perturbation, you can compute the sensitivity to the Spread underlying Benchmark Instruments in addition to the Spreads themselves. Unchecked, only the Spread underlying sensitivities will be calculated. |
» | Preshift: You can perform a Delta and/or Gamma risk calculation after first performing a range of multiple shifts. |
Shift Unit - Set to Bps by default.
Amounts - Click to open an amount range window. Input the amount you want to shift the spot prices, and by how much
» | Measures/Custom Measures: The risk measures are selected automatically. Select the custom measure as needed. They are described below. |
Risk Measures and Custom Measures
Relative shifts on curve underlyings are meant to be applied on the “equivalent rate”. As such they are supported only for outright instruments (MoneyMarket, FutureMM, Swap, Bond, FRA, CDS, etc.). They are typically NOT supported for spread or basis instruments (FX FWD, Basis Swap, Spread, etc.). The same limitation applies to the min and max features.
The following notations are used in the formulas:
• | r - rate |
• | s - shift amount |
• | f - scaling factor |
• | b - benchmark quote |
Measures | Formula |
---|---|
rateDELTA |
Sequential Single Sided 1/f * (NPV(r + s * f) - NPV (r)) Sequential Double Sided 1/f * ((NPV(r + s * f) - NPV (r - s * f)) * 0.5) Cumulative Single Sided 1/f * (NPV(r_curr_up) - NPV(r_curr_down)) Cumulative Double Sided 1/f * ((NPV(r_curr_up) - NPV(r_prev_up) - NPV(r_curr_down) + NPV(r_prev_down)) * 0.5) r_curr* and r_prev* refer to
the current or previous shift in the cumulative shift order. |
undRateDELTA |
rateDELTA of the curve underlying. This is only supported for the following underlyings: Basis Swap, Basis Two Swap, Bond, FRA, Future, MM, Swap, Swap Spread and Xccy Basis Swap, FX Forward, FX Forward Fixed and FX Forward Month End. |
rateGAMMA |
Change in rateDELTA for user-defined shift amount in the underlying instruments of the interest rate curve. Sequential 1/f2 * (NPV(r + s* f) + NPV(r - s* f) - 2 * NPV(r)) Cumulative 1/f2 * ((NPV(r_curr_up) - NPV(r_prev_up) + NPV(r_curr_down) - NPV(r_prev_down)) f2 is applied as gamma is a second order sensitivity. |
rateInstrumentEquivalent |
Custom measure - Does not apply to all perturbation types. It gives the trade nominal needed to achieve a delta neutral position on this underlying instrument. rateDELTA * Instrument Notional / undRateDELTA
It is recommended to have a source for all instruments except Money Market (LIVE for example), and another source specifically for Money Market instruments (LIVEMM for example). The LIVEMM quotes should be filled once a day with the fixing quote to account for swap transient trade resets. |
benchmarkRateDELTA |
Sequential Single Sided 1/f * (NPV(b + s * f) - NPV (b)) Sequential Double Sided 1/f * ((NPV(b + s * f) - NPV (b - s * f)) * 0.5) |
Ⓘ [NOTE: In the case of calculating rateInstrumentEquivalent on some types of underlyings, the resulting values should be considered as a theoretical hedge only. Specifically, this relates to MM and FX Forward Curve Underlyings where hedge trades, when performed, would be using a different set of curves.]
Ⓘ [NOTE: When COLLATERALIZED_PRICING is “On”, the transient hedging trades load the curves that correspond to the collateralized currency. This only applies to products defined in the domain “CollateralizedHedgingInstrument”, typically CapFloor, Swap, Swaption. “CollateralizedHedgingInstrument” assumes that the collateral policy's collateral currency matches the trade currency; the Pricer Config must be configured to reflect this.]
Rate Results
Ⓘ [NOTE: When sorting reports in CWS, the most important field should be sorted first. In the case of Rates, it is the tenor, or triangle value]
Rate Triangles
Sample rate triangles sensitivity results
Ⓘ [Note: Running the equivalent Rate Triangles perturbation in Sensitivity and Scenario will produce different results. This is because in Sensitivity, all points are inserted at the beginning of the process whereas, in Scenario, pillar points are inserted ad-hoc before applying each Triangle shift rule.]
Rate Underlyings Report
When viewing a rate underlyings report in the Calypso Workstation, fields attributed to the underlying instruments themselves are not additive. These fields include Instrument Nominal, Instrument Spot, and undRateDELTA. Best practice is to utilize the “Group” function for these fields in the Report Configuration Window, Column Settings Tab.
Sample rate underlyings sensitivity results
Rate Forwards
Sample rate forwards sensitivity results
Curve Type
For all types of shifts (Underlyings, Triangles, Forward, Par Rates), curves are labeled with their curve type in the “Underlier Market Data Type” field. These curve types serve to distinguish between rate risk (CurveZero and CurveZeroFXDerived) and basis risk (CurveBasis and CurveBasisXCCy).
Sample cross currency swap sensitivity results
Risk Currency
For all types of shifts (Underlyings, Triangles, Forward, Par Rates), rate sensitivities are expressed in “curve currency.” This is performed regardless of the product, based on the currency of the curve. For example, a EUR/USD cross-currency swap will show EUR risk in EUR and USD risk in USD. The currency of each measure is labeled in the sensitivity report under the “Risk Currency” field.
The NPV is given by the pricer in NPV currency, and then the risk process will convert that into the currency of the curve, using the FX rate that is consistent with the pricing environment (with regards to FX adjusted / unadjusted). Finally, the NPVs in risk currency are compared to provide sensitivity. This can lead to small (unexpected) sensitivities to the very short end of the curve because the shifts can slightly modify the adjusted FX rate.
Underlying Shifts
When applying shifts on curve underlyings, Risk reports delegate each shift to the underlyings themselves as conventions can differ amongst them. For a defined +1bp shift, some curve underlyings will shift up, some in reverse, and others will scale.
• | Spread-Quoted Basis Swaps - When the basis swap is spread quoted, the risk process will apply the opposite shift versus what is requested in the configuration. For a +1bp Sensitivity, the quote will be shifted by “-1bp” for this particular instrument. |
• | FutureMM - Future Money Market (FutureMM) underlyings will apply the opposite shift versus what is defined in the configuration. For a +1bp sensitivity, the quote will be shifted by “-1bp” for this particular instrument. |
• | FX Fwd - FX Forward (FX Fwd) underlyings will apply a shift in terms of their equivalent Money Market value. When defining a +1bp Sensitivity on FX Fwd underlyings, this will effectively be seen between the before and after FX Fwd quotes when converted to their Money Market equivalent values. |
11. Volatility Sensitivity
Select the Volatility type.
Sample volatility sensitivity parameters
» | Volatility Type: Select the volatility type: Credit, Rate, Equity, Commodity, or FX. |
The selection drives the other fields - They are described below for each volatility type.
» | Perturbation Type: Select the perturbation type: Underlyings or Points. |
» | Shift Type: Select the shift type: Sequential or Cumulative (applies to Points perturbations only). |
» | Include Volga: Volga is computed by default. You can also include Volga. They are described below. |
» |
All Volatility Types - Volatility Expiry Tenor
The vol point only holds the coordinates expiry, tenor and strike. In order to get the expiry as a tenor, the system will find the closest number of months.
• | For shorter tenors, you can specify a more detailed list of tenors in the domain "surfaceExpiryTenors" - Example: 2D, 3W, etc. |
• | For more accurate results or specific needs, this process can be overridden in the volatility generator itself, and the generator can provide the tenors that correspond to the points. |
All Volatility Types - Risk Measures
The following notations are used in the formulas:
• | v - volatility |
• | s - shift amount |
• | f - scaling factor |
Measures | Formula |
---|---|
Vega |
Sequential 1/f * (NPV(v + s * f) - NPV(v)) Cumulative 1/f * (NPV(v_curr) - NPV(v_prev)) v_curr and v_prev refer to the current or previous vol point in the cumulative shift order: Progress through strikes, then expiries, then tenors. |
Volga |
Sequential 1/f2 * (NPV(v + s * f) + NPV(v - s * f) - 2 * NPV(v)) Cumulative 1/f2 * (NPV(v_curr_up) - NPV(v_prev_up) + NPV(v_curre_down) - NPV(v_prev_down)) f2 is applied as Volga is a second order sensitivity. |
Ⓘ [NOTE: When sorting reports in CWS, the most important field should be sorted first. In the case of Rate Volatility, is it the Vol Expiry Tenor followed by the Vol Tenor]
Sample volatility sensitivity results
Note on Tents Shifts
Sensitivity / Volatility / Tents is only supported for volatility surfaces that implement VolSurfaceGenerator.supportAdjustPoints() and return true. It returns false by default.
It currently applies to the following volatility surface generators:
BondOption
Cap*
CapTerm*
CapATM*
CapInflationBlack
CDSIndexOption
CMSBasisAdj
CommoditySimple
CreditSimple
FutureOption
FXOption
OTCFXOption*
SplineSimple (except in VarianceLogMoneyness)
SpreadCap*
Swaption
SwaptionDerived
SwaptionSABRDerived
SwaptionBpVols (except with PricerSwaptionBpVol)
Ⓘ [Note: Items denoted with an asterisk (*) may be deprecated or unsupported. Please review.]
11.1 Credit Volatility
Select the Credit volatility type.
Sample Credit volatility parameters
» | Perturbation Type: Select the perturbation type: Points (to shift the volatility points), or Underlying Instruments (to shift the underlying instruments). |
» | Shift Amount (% abs): Enter the shift amount in absolute percentage. |
Risk Currency
Credit Vega is expressed in market data currency. This is labeled in the sensitivity report under the “Risk Currency” field.
11.2 Rate Volatility
Select the Rate volatility type.
Sample Rate volatility parameters
» | Perturbation Type: Select the perturbation type: Points (to shift the volatility points), Adjustments, Points and Adjustments, Tents (to apply overlapping tent shifts directly to the volatility surface), or Underlying Instruments (to shift the underlying instruments). |
– | Tents - You need to specify the triangle shifts on the expiry axis in the Measure Maker window - Click Designer to open the Measure Maker window. |
See Analysis Designer - Measure Maker for details.
For each triangle on expiries, all strikes are shifted simultaneously. All tenors are shifted independently.
Note: Only the following volatility generators are supported in addition to simple, non-derived surfaces: Cap, CapTerm, CapBlack, Swaption. Surfaces must be defined with Absolute Strikes.
– | Adjustments - To shift adjustments (SABR or BPVol adjustments) - Select the adjustments you want to shift. |
– | Points and Adjustments - To shift volatility points and adjustments - Select the adjustments you want to shift. |
» | Shift Amount (% abs): Enter the shift amount in absolute percentage. |
» | Amount: For the "Tents" perturbation, select the bucket configuration defined in the Measure Maker window. |
Adjustments
When computing sensitivities to SABR or BPVol adjustments, one field “Volatility Adjustment” is added to handle the sensitivity results. This field has an empty value for points.
Risk Currency
The Rate Vega is expressed in market data currency. This is labeled in the sensitivity report under the “Risk Currency” field.
11.3 Equity Volatility
Select the Equity volatility type.
Sample Equity volatility parameters
» | Perturbation Type: Select the perturbation type: Points (to shift the volatility points), Underlying Instruments (to shift the underlying instruments), or Tents (to apply overlapping tent shifts directly to the volatility surface). |
For Tents, you need to specify the triangle shifts on the expiry axis in the Measure Maker window - Click Designer to open the Measure Maker window.
See Analysis Designer - Measure Maker for details.
For each triangle on expiries, all strikes are shifted simultaneously. All tenors are shifted independently.
Note: Only the following volatility generators are supported in addition to simple, non-derived surfaces: FutureOption, SplineSimple. Surfaces must be defined with Absolute Strikes.
» | Shift Amount (% abs): Enter the shift amount in absolute percentage. |
For the "Tents" perturbation, select the bucket configuration defined in the Measure Maker window.
Risk Currency
Equity Vega is expressed in market data currency. This is labeled in the sensitivity report under the “Risk Currency” field.
11.4 Commodity Volatility
Select the Commodity volatility type.
Sample Commodity volatility parameters
» | Perturbation Type: Select the perturbation type: Points (to shift the volatility points), or Underlying Instruments (to shift the underlying instruments). |
» | Shift Amount (% abs): Enter the shift amount in absolute percentage. |
Risk Currency
Commodity Vega is expressed in market data currency. This is labeled in the sensitivity report under the “Risk Currency” field.
11.5 FX Volatility
Select the FX volatility type.
Sample FX volatility parameters
» | Perturbation Type: Select the perturbation type: Points (to shift the volatility points), Underlying Instruments (ATM, Vanilla Puts an Calls), Underlying Instruments (ATM, RR and FLY), Underlying Instruments (ATM Only), or Tents (to apply overlapping tent shifts directly to the volatility surface). |
– | Tents - You need to specify the triangle shifts on the expiry axis in the Measure Maker window - Click Designer to open the Measure Maker window. |
See Analysis Designer - Measure Maker for details.
For each triangle on expiries, all strikes are shifted simultaneously. All tenors are shifted independently.
Note: Only the following volatility generators are supported in addition to simple, non-derived surfaces: FXOptionDelta, OTCFXOption, FXOption. Surfaces must be defined with Absolute Strikes.
– | Underlying Instruments (ATM, Vanilla Puts an Calls) - In this case, you can enter the absolute shift in percentage. |
– | Underlying Instruments (ATM, RR and FLY) - In this case, you can select the shift type, and you can enter the ATM absolute shift in percentage and the strategy absolute shift in percentage. |
The following shift types are available:
"All Strategies Separately"
"25D Equivalent"
– | Underlying Instruments (ATM Only). |
» | Shift Amount (% abs): Enter the shift amount in absolute percentage. |
For the "Tents" perturbation, select the bucket configuration defined in the Measure Maker window.
"25D Equivalent" Methodology
The output will be one Vega, Volga per instrument type (RR, STR, BF, ATM) and per Expiry.
Ratio = This is the ratio to the 25 delta volatility.
Shift amount = input * Ratio.
For example the 25 delta RR for 2 months has a spot value of 1.0 and the 10 delta value is 1.7 so the ratio is 1.7. The 25 delta underlyings will be moved by 0.1% to 1.1 and the 10 deltas will be moved by 0.17 to 1.87.
Impact on Underlier Attributes:
• | Instrument Strike = 25 RR, 25 BF, 25 STR, ATM. |
• | Instrument Name = reference instrument name (for example “EUR/USD 2D Risk Reversal 25-delta”, “EUR/USD 3M Strangle 25-delta”, “EUR/USD 2D Butterfly 25-delta”, “EUR/USD 1W ATM”). |
Risk Currency
FX Vega is expressed in "PL Display Ccy.". For each FX Volatility, the "PL Display Ccy" is retrieved from the Currency Pairs. This is labeled in the sensitivity report under the “Risk Currency” field. Please note that the FX volatility risk currency differs from that of FX spot (Delta Display Ccy).
Vega over Spot
You can perform a Vega risk calculation after first performing a range of FX spot shifts.
» | Ensure that Type is set to Volatility and Volatility Type is set to FX. If Perturbation Type is set to Underlying Instruments (ATM Only) or (ATM, RR and FLY), the Boolean field PreShift FXSpot will appear. |
• | Shift Unit - Can be set either to %rel or Pips. |
• | Amounts - Double-click to open an amount range window. Input the amount you want to shift the spot prices, and by how much. |
Rega, Sega measures
Include Rega & Sega:
Rega: composite risk measure, sum of Vega on risk reversal underlyings weighted by the respective multipliers in the Vol surface.
Formula:
Sega: composite risk measure, sum of Vega on Butterfly underlyings weighted by the respective multipliers in the Vol surface.
Formula:
Ⓘ Note: Although there is no restriction on the number of underlying instruments defined in the volatility surface, end-users must consider the following factors to avoid performance issues
• | Weighted Vega Amount - Weighted Vega Amount can be set to a preconfigured set of weights defined in the Vega Weight Surface Configuration window found at Navigator -> Configuration -> Foreign Exchange -> Weighted Vega Template, or using menu action refdata.VegaWeightsWindow. |
Special handling is given for FX crosses during the FX Spot shifts when using Triangulation. When Triangulation is on, the calculated cross quotes will be shifted, although they do not exist directly in the Pricing Environment. When Triangulation is off, no special handling is used and any cross quotes are expected to be available in the system.
Ⓘ Note: For the best performance, ensure that FX Spot shifts are defined in conjunction with smaller volatility surfaces.
12. Quoted Instruments
Listed products (example Future Money Market – Calypso product FutureMM) are priced typically from market quotes. However, there is a need to compute risk on these products versus the same market data as OTC trades, in order to aggregate the risk, verify the hedge, or explain the P&L. For example, with a book of IR Swaps hedged with Futures, it is important that the risk of the Futures is computed on the same curve as the Swaps so that the hedge can be verified.
The listed products can be priced either from the direct quotes or theoretically (i.e. price FutureMM from swap curve). In the context of risk, one could price them theoretically and therefore produce the needed risk. However, that approach leads to prices that are inconsistent with the market (direct quotes).
The preferred approach in Calypso is to compute a Pricer Measure that captures the gap between the market price and the theoretical price. This measure is stored and then used as an additional input when pricing theoretically during the risk process. In case of no shift (i.e. 0bp on rates), one can find the market price again.
This approach is called Pre Processing. It applies to Sensitivity, Simulation, MultiSensitivity, IntradayPL, and the scheduled task PL_GREEKS_INPUT.
Pre Processing settings are directly picked up from the database table SCENARIO_QUOTED_PRODUCT. The algorithm is the following:
For each product in the table:
• | If the Pricer Parameter “PRICER_PARAMS” in the Pricing Environment (Pricer Param Set) is true |
Then pre process the Pricer Measure given in “PRICER_MEASURE”
End if
End for
The table is populated by default upon installation or upgrade.
You can view the content of the table SCENARIO_QUOTED_PRODUCT in the Measure Maker window of Analysis Designer.
PRODUCT_NAME |
PRICER_PARAMS |
PRICER_MEASURE |
---|---|---|
Bond |
BOND_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondAssetBacked |
BOND_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondBrady |
BOND_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondFRN |
BOND_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondMMDiscount |
MMKT_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondMMDiscountAUD |
MMKT_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondMMInterest |
MMKT_FROM_QUOTE |
INSTRUMENT_SPREAD |
BondOption |
BOND_FROM_QUOTE |
PLXG |
ETOEquity |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
ETOEquityIndex |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
ETOVolatility |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureBond |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureCommodity |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureDividend |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureDividendIndex |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureEquity |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureEquityIndex |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureFX |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureMM |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureOptionBond |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureOptionDividend |
NPV_FROM_QUOTE |
IMPLIEDVOLATILITY |
FutureOptionDividendIndex |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureOptionEquity |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureOptionEquityIndex |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureOptionMM |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
FutureStructuredFlows |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
FutureVolatility |
FUTURE_FROM_QUOTE |
INSTRUMENT_SPREAD |
ListedFRA |
NPV_FROM_QUOTE |
INSTRUMENT_SPREAD |
PerformanceSwap |
BOND_FROM_QUOTE |
PLXG |
Warrant |
NPV_FROM_QUOTE |
VOLATILITY_SPREAD |
Bonds, Futures, and Other Derivatives
For these products, it is recommended to pre-process INSTRUMENT_SPREAD. It is computed by solving the shift amount to be applied on the market data (for instance the rate curve or the equity quote) that aligns the theoretical price and market price.
Listed Options
For Listed Options, one can pre-process IMPLIEDVOLATILITY. This is the level of volatility that makes the theoretical price match the market price. Fixing the volatility allows the computation of Delta and Rho. This approach, however, does not allow the computation of Vega. The preferred approach is to pre-process VOLATILITY_SPREAD that is based on the Volatility Surface and its implied volatility.
Other Products
Some Calypso products like BondOption or PerformanceSwap are not directly priced from quotes, but they embed a product that is. In order to trigger the relevant category in P&L Explained by Greeks, it is necessary to add them in the pre-processing table.