RATE Volatility Surface
From the Calypso Navigator, navigate to Market Data > Volatilities > Volatility Surface (menu action marketdata.VolatilitySurface3DWindow
).
RATE volatility surfaces can be created from offset points, or derived from underlying instruments.
Interpolation methods and generation algorithms are provided out-of-the-box. Refer to the Interest Rate Derivatives Analytics documentation for details.
• | Surface from offset points |
• | Surface from underlying instruments |
• | Pricer configuration |
See also Volatility Surface Overview.
1. RATE Volatility Surface from Offsets
RATE Volatility Surface from Offsets Quick Reference Surface Generation 1. Click New to start a new surface. 2. The Current checkbox is selected by default, meaning that when you save the surface, the system timestamps the surface with the current date and time. Clear the Current checkbox to enter a back-dated surface. You can modify the date and time fields. 3. Definition Panel — Select the following to define the surface: currency, index, and tenor, volatility type “RATE”, strike type, interpolator, the Derived checkbox should not be selected, generator, date-roll convention, holiday calendars, pricing environment. 4. Offsets Panel — Select the tenor and expirations. Enter the strikes. 5. Points Panel — Click Generate to generate the points. Enter the point values. 6. Click Save, enter a name for the surface, and click OK. Pricer Configuration A RATE volatility surface is associated with a pricing environment under the Surfaces panel of the pricer configuration for the RATE volatility type and VOL usage. |
1.1 Definition Panel
Click New to start a new surface.
Select the following to define the surface: currency, index, and tenor, volatility type “RATE”, strike type, interpolator, the Derived checkbox should not be selected, generator, date-roll convention, holiday calendars, pricing environment.
» | Select the type of strike: Strike, Relative Spread, Strike Offsets BPs, or Relative % - They are described below. |
» | Select the generation algorithm - They are described below. |
» | "Include Axis Tenor" - There are circumstances where pricing requires a Tenor axis on top of the regular Strike and Maturity; such as pricing for Swaptions. |
The default volatility surface setup in Calypso is for Maturity vs. Strike on a 2D graph. Selecting "Include Tenor Axis" gives us a 3D graph where necessary.
When you select "Include Tenor Axis", you can select a point underlying.
The point underlying option is an option that has been added for use with the LGMM pricers where we need to calibrate Bermudan swaptions to vanilla swaption NPVs. The structure of the underlying swap in the calibration swaption is taken in the circumstance that Point Underlying = Swap. When Point Underlying = None the surface cannot be used for LGMM pricers but can still be used for any other applicable product type.
When selecting "Swap", you can click Set Underlying Vol Point to define the swap.
Once the swap is defined, you can select additional curves for calibration:
You can double-click the Value field to select a curve.
Strike Types Details
Surface Type | Definition |
---|---|
Strike |
Absolute strike. Offset Points In the Offset panel, enter absolute strikes.
Underlying Instruments The underlying instruments must be specified using an absolute strike.
|
Relative Spread |
Current strike +/- spread minus ATM strike (in %). Offset Points In the Offset panel, enter relative spreads over the current strike in %. Make sure to add 0.
Underlying Instruments The underlying instruments must be specified using a relative strike in %. In this example the relative strike is -1%.
Note that when using a relative strike, one of the underlying instruments must be defined with a strike of 0.
|
Strike Offset BPs |
Current strike +/- offset minus ATM strike (in bp). Offset Points In the Offset panel, enter relative offset over the current strike in bp Make sure to add 0.
Underlying Instruments The underlying instruments must be specified using a relative strike in bp. In this example the relative strike is +25bp.
Note that when using a relative strike, one of the underlying instruments must be defined with a strike of 0.
|
Relative % |
% (current strike) minus ATM strike. Offset Points In the Offset panel, enter a percentage of the current strike.
Underlying Instruments The underlying instrument must be specified using a percentage of the current strike. In this example, it is 85% of the current strike.
|
Generation Algorithms
Generation Algorithms | Definition | ||||||
---|---|---|---|---|---|---|---|
NONE |
You can select "NONE" for the most "simple" generator from offsets. |
||||||
Default |
Can be used for caps, swaptions, bond options, etc. If the spot lag parameter is set to true, the generated exercise dates are rolled using the conventions of the definition screen.
Note that SYNTHETIC_EXPIRY and SYNTHETIC_TENOR are not currently used. |
||||||
Swaption Generators |
|||||||
CEVSimple |
CEV stands for constant elasticity of variance. A key feature of the model is that given the parameters of the model, the entire smile can be determined analytically; that is, for a given strike one can analytically determine the correct Black-Scholes volatility to ‘plug into’ the usual Black-Scholes model to determine the premium of the option under the assumptions of the CEV model.
where Beta (β) controls the distribution and Alpha (α) is intimately related to the overall level of volatility. |
||||||
CMSBasisAdjSimple |
Used to store CMS volatility basis adjustments on the volatility surface. |
||||||
LGMMeanRev |
The Linear Gauss Markov Model is really the Hull-White one factor model reset in the Heath-Jarrow-Morton framework for Bermudan Swaptions. This alternative characterization greatly helps with calibration and trade valuation. Calibration The calibration is stored in a layer of a volatility surface on the Points panel. The generator takes a list of ATM swaption volatilities as inputs and creates an empty container for the mean reversion values. In the case of this model, these values change very infrequently and so it is reasonable that they would remain their original values for the better part of a year. For this reason we have separated the volatility surface that the model requires from the mean reversion parameters that it also requires. This enables the volatility surface to change and be regenerated daily whereas the mean reversion values can remain constant. Calibration Matrix In the Points panel of a volatility surface generated with the (simple) LGMMMeanRev generator, there is a layer created titled LGMM_MeanRev. This is where the user is required to key in the values, possibly calculated on a spreadsheet, and then save the surface.
|
||||||
SABRDirect |
Similar to SABRSimple, except you input the ATM volatilities as MID point adjustments rather than link to another volatility surface to get the ATM volatilities as in SABRSimple. MDI is not required. You ca set the generator parameter "Calibrate SABR values" to true. In that case:
|
||||||
SABRSimple |
Deprecated - It is recommended to use Swaption, SwaptionDerived or Default instead. Used to create the implied smile along the strike axis. ATM Black volatilities are the input and the model parameters alpha, beta, rho, nu create the implied smile that is applied to the volatility surface. |
1.2 Offsets Panel
Select the Offsets panel.
» | Click ... to select tenors and expirations. |
» | Enter a strike and click Add. Repeat for each strike value. |
1.3 Points Panel
» | Select the Points panel, and click Generate to generate the points. |
In this example, volatilities are entered manually. Volatilities can also be copied from Excel.
For the CEVSimple generator, you can set:
» | CEV_ALPHA points |
» | CEV_BETA points |
1.4 Save Surface
Click Save at the bottom of the surface window. Enter a name for the surface, and click OK.
2. RATE Volatility Surface from Underlying Instruments
RATE Volatility Surface from Underlying Instruments Quick Reference Surface Underlying Instruments You can use Cap or Swaption underlying instruments for the respective product type. From the Calypso Navigator, navigate to Configuration > Market Data > Volatility Surface Underlyings, or in the surface application’s Underlyings panel, click New Instrument. Surface Generation 1. Click New to start a new surface. 2. Select the quote instance to use in the surface generation (CLOSE, LAST, or OPEN). 3. The Current checkbox is selected by default, meaning that when you save the surface, the system timestamps the surface with the current date and time. Clear the Current checkbox to enter a back-dated surface. You can modify the date and time fields. 4. Definition Panel — Select the following to define the surface: currency, index, and tenor, volatility type “RATE”, strike type, interpolator, select the Derived checkbox, generator, date-roll convention, holiday calendars, pricing environment. 5. Underlyings Panel — Select the underlying instruments. 6. Quotes Panel — Enter quotes manually, use quotes from the quote set, or use real-time quotes. 7. Points Panel — Click Generate to generate the points. 8. Click Save, enter a name for the surface, and click OK. Pricer Configuration A RATE volatility surface is associated with a pricing environment under the Surfaces panel of the pricer configuration for the RATE volatility type and VOL usage. A RATE volatility surface generated with LGMM2FMultiStartBestFit is associated with a pricing environment under the Product Specific panel of the pricer configuration for the GLOBAL_LGMM2F usage. |
2.1 Definition Panel
Click New to start a new surface.
Select the following to define the surface: currency, index, and tenor, volatility type “RATE”, strike type, interpolator, select the Derived checkbox, generator, date-roll convention, holiday calendars, pricing environment.
» | Select the type of strike - They are described below. |
» | Select the generation algorithm - It controls the type of underlying instruments that you can select - They are described below. |
Strike Types Details
Surface Type | Definition |
---|---|
Strike |
Absolute strike. Offset Points In the Offset panel, enter absolute strikes.
Underlying Instruments The underlying instruments must be specified using an absolute strike.
|
Relative Spread |
Current strike +/- spread minus ATM strike (in %). Offset Points In the Offset panel, enter relative spreads over the current strike in %. Make sure to add 0.
Underlying Instruments The underlying instruments must be specified using a relative strike in %. In this example the relative strike is -1%.
Note that when using a relative strike, one of the underlying instruments must be defined with a strike of 0.
|
Strike Offset BPs |
Current strike +/- offset minus ATM strike (in bp). Offset Points In the Offset panel, enter relative offset over the current strike in bp Make sure to add 0.
Underlying Instruments The underlying instruments must be specified using a relative strike in bp. In this example the relative strike is +25bp.
Note that when using a relative strike, one of the underlying instruments must be defined with a strike of 0.
|
Relative % |
% (current strike) minus ATM strike. Offset Points In the Offset panel, enter a percentage of the current strike.
Underlying Instruments The underlying instrument must be specified using a percentage of the current strike. In this example, it is 85% of the current strike.
|
Generation Algorithms
Generation Algorithms | Definition | ||||||
---|---|---|---|---|---|---|---|
Cap Generators |
|||||||
Cap |
Generates a volatility surface from caps/floors using the standard Black model. |
||||||
CapBpVols |
The bootstrapping algorithm is using the BpVol (a.k.a. Normal) model to generate forward volatilities. Volatility surfaces built using this generator can then expose Black or BpVol volatilities to pricers. The settings are similar to the configuration of the CapBlack generator, in particular the pricing parameters are the same.
|
||||||
CapShiftedLognormal |
This generator computes the forward caplet volatilities from the market quoted Cap volatilities.
|
||||||
CapTerm |
Used for storing cap volatilities in a surface. The points are linked to specific underlying volatilities. The surface points have the same maturity, strike, rate index tenor, and volatility as the underlying cap. |
||||||
Swaption Generators |
|||||||
CMSBasisAdjSimple |
Used to store CMS volatility basis adjustments on the volatility surface. |
||||||
LGMM2FMultiStartBestFit |
Used to price multi-index TARN bonds using PricerBondLGMM2F. This generator calibrates in a best fit sense ATM swaptions. Typically, one calibrates to the entire ATM vol surface. This can take several minutes, depending on the number of quotes in the surface. The solution is a set of model parameters, kappa1, kappa2, sigma1, sigma2, rho. The quotes for the ATM swaptions are the volatilities. |
||||||
Swaption |
Generates and stores volatilities on a surface according to market quoted volatilities from underlying European swaptions. A basic volatility surface. |
||||||
SwaptionBpVols |
The generator SwaptionsBpVols uses underlying swaptions to produce a volatility surface. The main advantage of this generator is that it can take a mixture of points, some quoted in Black volatility (or Yield Quote Type) and others quoted in basis point volatility (or BpVol Quote Type) and then the generator will perform all the necessary conversions to get a surface layer all in Black Volatilities and another surface layer all in basis point volatilities. The pricers can then use the black layer if they require Black volatilities, or use the basis point layer if they require basis point volatilities and both layers are on the same surface. Black Volatilities Black volatilities are constructed in the MID layer in the Points panel.
Basis Point Volatilities Basis Point volatilities are constructed in the MID_BPVol layer in the Points panel.
Generator Parameters
When set to true and the strike is negative, if the input is black vol, return NaN for both black and bpvol. If the input is bp vol, return NaN for black vol and correct bp vol. |
||||||
SwaptionSABR |
Deprecated - It is recommended to use SwaptionSABRDerived instead. Used to create the implied smile on a set of Swaption underlyings by setting the model parameters alpha, beta, rho, and nu. |
||||||
SwaptionSABRDerived |
Please refer to the Calypso Analytics Library Guide (CALIB) for complete setup details. |
||||||
Future Option Generator |
|||||||
FutureOption |
Generates and stores volatilities where the underlyings are options on futures. This only applies if the quote type of the future is rate. If the quote type of the future is price, use instead the MMFUTUTE volatility type and the FutureOption generator. |
2.2 Underlyings Panel
Select the Underlyings panel.
» | Select the instrument type, and the panel below displays the list of available instruments. The panel is blank if you have not set up any instruments. Click New Instrument to create new instruments. |
» | Select instruments and click >> to add them to the instrument list in the right panel. |
For the cap/floor underlying instruments you can either use only caplets/floorlets (they all contain one cashflow only), or only cap/floors (they all contain multiple cashflows).
» | Click Create Multiple Strikes or Create Multiple Maturities to create multiple instruments. |
Sample underlying ATM swaption.
Ⓘ [NOTE: For a given surface with swaption underlyings, you can only use ATM swaptions (underlying ending with "/A") OR relative swaptions (underlying ending with "/R"), you cannot mix both]
2.3 Quotes Panel
Select the Quotes panel. Enter quotes for the underlying instruments.
» | You can click Save Quotes to save the quotes. |
2.4 Points Panel
Click the Points tab. Click Generate to generate the points.
» | You can view the points for each combination of tenor, expiry and strike. |
For the LGMM2FMultiStartBestFit generator, you can view all the generated parameters.
2.5 Save Surface
Click Save in the bottom of the surface window. Enter a name for the surface, and click OK.
3. Pricer Configuration
From the Calypso Navigator, navigate to Market Data > Pricing Environment > Pricer Configuration. Load a pricer configuration and select the Surfaces panel.
» | Select the currency, volatility type, index, and tenor. |
» | Select the product type, extended type or ANY, subtype or ANY, PUT or CALL. |
» | Click ... to select the volatility surface. Select the surface in the Selection window and click Load to display the surface name in the pricer configuration. |
» | Click Add to add the surface to the list. |
» | Click Save to save the pricer configuration. |
3.1 RATE Volatility Surface Generated with LGMM2FMultiStartBestFit Generator
From the Calypso Navigator, navigate to Market Data > Pricing Environment > Pricer Configuration. Load a pricer configuration and select the Product Specific panel.
» | Select the pricer PricerBondLGMM2F and the usage GLOBAL_LGMM2F. |
» | Click ... to select the volatility surface. |
» | Click Add to add the surface to the list. |
» | Click Save to save the pricer configuration. |