This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.


Calculate price or sensitivities of supershare digital options using Black-Scholes model


PriceSens = supersharesensbybls(RateSpec,StockSpec,Settle,Maturity,StrikeLow,StrikeHigh)
PriceSens = supersharesensbybls(RateSpec,StockSpec,Settle,Maturity,StrikeLow,StrikeHigh,OutSpec)



The annualized, continuously compounded rate term structure. For information on the interest rate specification, see intenvset.


Stock specification. See stockspec.


NINST-by-1 vector of settlement or trade dates.


NINST-by-1 vector of maturity dates.


NINST-by-1 vector of low strike price values.


NINST-by-1 vector of high strike price values.


(Optional) All optional inputs are specified as matching parameter name-value pairs. The parameter name is specified as a character vector, followed by the corresponding parameter value. You can specify parameter name-value pairs in any order. Names are case-insensitive and partial matches are allowed provided no ambiguities exist. Valid parameter names are:

  • NOUT-by-1 or 1-by-NOUT cell array of character vectors indicating the nature and order of the outputs for the function. Possible values are 'Price', 'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta', or 'All'.

    For example, OutSpec = {'Price'; 'Lambda'; 'Rho'} specifies that the output should be Price, Lambda, and Rho, in that order.

    To invoke from a function: [Price, Lambda, Rho] = supersharesensbybls(..., 'OutSpec', {'Price', 'Lambda', 'Rho'})

    OutSpec = {'All'} specifies that the output should be Delta, Gamma, Vega, Lambda, Rho, Theta, and Price, in that order. This is the same as specifying OutSpec as OutSpec = {'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta', 'Price'};.

  • Default is OutSpec = {'Price'}.


PriceSens = supersharesensbybls(RateSpec,StockSpec,Settle,Maturity,StrikeLow,StrikeHigh) computes supershare option prices using the Black-Scholes option pricing model.

PriceSens = supersharesensbybls(RateSpec,StockSpec,Settle,Maturity,StrikeLow,StrikeHigh,OutSpec) includes an OutSpec argument defined as parameter/value pairs, and computes supershare option prices or sensitivities using the Black-Scholes option pricing model.

PriceSens is a NINST-by-1 vector of expected option prices and sensitivities.


collapse all

This example shows how to compute price and sensitivities of supershare digital options using a Black-Scholes model. Consider a supershare based on a portfolio of nondividend paying stocks with a lower strike of 350 and an upper strike of 450. The value of the portfolio on November 1, 2008 is 400. The risk-free rate is 4.5% and the volatility is 18%. Using this data, calculate the price and sensitivity of the supershare option on February 1, 2009.

Settle = 'Nov-1-2008';
Maturity = 'Feb-1-2009';
Rates = 0.045;
Basis = 1;
Compounding = -1;

% define the RateSpec
RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rates, 'Compounding', Compounding, 'Basis', Basis);

% define the StockSpec
AssetPrice = 400;
Sigma = .18;
StockSpec = stockspec(Sigma, AssetPrice);

% define the high and low strike points
StrikeLow = 350;
StrikeHigh = 450;

% calculate the price
Pssh = supersharebybls(RateSpec, StockSpec, Settle, Maturity,...
StrikeLow, StrikeHigh)
Pssh = 0.9411
% compute the delta and theta of the supershare option
OutSpec = { 'delta';'theta'};
[Delta, Theta]= supersharesensbybls(RateSpec, StockSpec, Settle,...
Maturity, StrikeLow, StrikeHigh, 'OutSpec', OutSpec)
Delta = -0.0010
Theta = -1.0102

Introduced in R2009a

Was this topic helpful?