Creates an equity/FX/commodity SABR object to model the dynamics of the volatility curve (smile).
There are 5 market inputs to this model.
ATM vol (This is really a 'SABR' volatility column to satisfy the model, but you can input the market ATM volatility and calibrate for the other 3 parameters - see the
CalibrateSABR() function), BETA (or SKEW, a value between zero and one [0,1] which determines the relationship between futures spot and at the money (ATM) volatility.
SKEW = 1 indicates that the user believes that if the market were to move up or down in an orderly fashion, the ATM volatility level would not be significantly affected (lognormal like).
Beta less than one (1) indicates that if the market were to move then ATM volatility would move in the opposite direction (normal like))), ALPHA (Is the volatility of volatility, a model feature which acknowledges that volatility obeys well known clustering in time.
It controls the wings of the smile curve, the higher the value the more wingy the smile), RHO (Correlation between rates and vols) and finally FWD (The forward price of the underlying at the option dates).
This SABR model is identical to that of the same model developed by Hagan, Kumar, Lesniewski and Woodward (2002) except that we denote the ALPHA parameter as the 'volatility of volatility' (or WING) parameter and 'ATMVol' (alpha in the case of their model) as our ‘volatility-like’ parameter.
The main SABR matrix input to this function, 'SABRMatrix' parameter, consists of option maturity rows along with five columns each representing a parameter of the SABR model (Thus 6 columns in total).
You must decorate the SABR volatility matrix with header and row information.
Row headers are option Maturity tenors from the calculation date.
The five column headers are 'ATM', 'ALPHA', 'BETA', 'RHO' and 'FWD'. You can use a combination of the
SABRCalibInst() and
CalibrateSABR() functions in order to calibrate the parameters (Alpha, Beta, Rho) of the SABR model.
This function creates an object and returns a string-key value to represent this created object.
The TAG value of the string-key returned (second part of the key) is : "ESABRVC"
The C# example below contains all the sub-function calls leading up to this function call. As a result, the example can contain a lot of code.
The VB.NET, J#, C++.NET, Java, Excel VBA, Visual Basic 6 (via COM) and C++ examples below contain function code stubs for the calls leading up to this function call. However, the function call for this function is displayed.
You can easily reproduce the stub functions code from the
C# example.
Copyright (c) 2003-2007 CapeTools - All Rights Reserved.