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. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Calculate prices or sensitivities of European geometric Asian options using Kemna-Vorst model


PriceSens = asiansensbykv(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates)
PriceSens = asiansensbykv(___,Name,Value)



PriceSens = asiansensbykv(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates) returns prices or sensitivities of European geometric Asian options using Kemna-Vorst model.

PriceSens = asiansensbykv(___,Name,Value) adds optional name-value pair arguments.


collapse all

Define the RateSpec.

StartDates = 'Jan-1-2013';
EndDates = 'Jan-1-2014';
Rates = 0.035;
Basis = 1;
RateSpec = intenvset('ValuationDate', StartDates, 'StartDates', StartDates, ...
'EndDates', EndDates,'Rates', Rates,  'Compounding', -1, 'Basis', Basis)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9656
            Rates: 0.0350
         EndTimes: 1
       StartTimes: 0
         EndDates: 735600
       StartDates: 735235
    ValuationDate: 735235
            Basis: 1
     EndMonthRule: 1

Define the StockSpec for the asset.

AssetPrice = 100;
Sigma = 0.15;
DivType = 'continuous';
DivAmounts = 0.03;
StockSpec = stockspec(Sigma, AssetPrice, DivType, DivAmounts)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1500
         AssetPrice: 100
       DividendType: {'continuous'}
    DividendAmounts: 0.0300
    ExDividendDates: []

Define the Asian 'call' and 'put' options.

Strike = 102;
OptSpec = {'put'; 'call'};
Settle = 'Jan-1-2013';
ExerciseDates = 'Jan-1-2014';

Compute the European geometric Average Price and sensitivities for the Asian option using the Kemna-Vorst model.

OutSpec = {'Price', 'Delta', 'Gamma'};
PriceSens = asiansensbykv(RateSpec, StockSpec, OptSpec, Strike,...
Settle, ExerciseDates,'OutSpec', OutSpec)
PriceSens = 2×1


Input Arguments

collapse all

The annualized continuously compounded interest-rate term structure specified by the RateSpec obtained from intenvset. For information on the interest-rate specification, see intenvset.

Data Types: struct

Stock specification for underlying asset, specified using StockSpec obtained from stockspec. For information on the stock specification, see stockspec.

stockspec can handle other types of underlying assets. For example, stocks, stock indices and commodities. If dividends are not specified in StockSpec, dividends are assumed to be 0.

Data Types: struct

Definition of option, specified as 'call' or 'put' using a NINST-by-1 cell array of character vectors.

Data Types: cell | char

Option strike price values, specified with nonnegative integers using a NINST- by-1 vector.

Data Types: single | double

Settlement dates or trade dates for the Asian option, specified as serial date numbers or date character vectors using a NINST-by-1 vector or cell array of character vector dates.

Data Types: double | char | cell

European option exercise dates, specified as serial date numbers or date character vectors using a NINST-by-1 vector or cell array of character vector dates. For a European option, there is only one ExerciseDates on the option expiry date.

Data Types: double | char | cell

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside quotes. You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: PriceSens = asiansensbykv(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'OutSpec',{'All'})

Define outputs, specified as the comma-separated pair consisting of 'OutSpec' and a NOUT- by-1 or 1-by-NOUT cell array of character vectors with possible values of 'Price', 'Delta', 'Gamma', 'Vega', 'Lambda', 'Rho', 'Theta', and 'All'.

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:

Example: OutSpec = {'delta','gamma','vega','lambda','rho','theta','price'}

Data Types: char | cell

Output Arguments

collapse all

Expected prices or sensitivities (defined by OutSpec) of the Asian option, returned as an 1-by-1 vector. If the OutSpec is not specified only price is returned.

Introduced in R2013b