Documentation

This is machine translation

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

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

lookbackbycvgsg

Calculate prices of European lookback options using Conze-Viswanathan and Goldman-Sosin-Gatto models

Syntax

Price = lookbackbycvgsg(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates)
Price = lookbackbycvgsg(___,Name,Value)

Description

example

Price = lookbackbycvgsg(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates) returns prices of European lookback options using Conze-Viswanathan and Goldman-Sosin-Gatto models. lookbackbycvgsg calculates prices of European fixed- and floating-strike lookback options. To compute the value of a floating-strike lookback option, Strike must be specified as NaN. The Goldman-Sosin-Gatto model is used for floating-strike lookback options. The Conze-Viswanathan model is used for fixed-strike lookback options.

example

Price = lookbackbycvgsg(___,Name,Value) adds optional name-value pair arguments.

Examples

collapse all

Define the RateSpec.

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

Define the StockSpec.

AssetPrice = 50;
Sigma = 0.36;
StockSpec = stockspec(Sigma, AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.3600
         AssetPrice: 50
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Define the floating lookback options.

Settle   = 'Jan-1-2013';
Maturity = 'April-1-2013'; 
OptSpec = {'put';'call'};
Strike = NaN;

Compute the price of the European floating lookback options.

Price = lookbackbycvgsg(RateSpec, StockSpec, OptSpec, Strike, Settle, Maturity)
Price = 

    7.2581
    6.9777

Define the RateSpec.

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

Define the StockSpec.

AssetPrice = 102;
Sigma = 0.45;
StockSpec = stockspec(Sigma, AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.4500
         AssetPrice: 102
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Define the fixed lookback options.

Settle   = 'Jan-1-2013';
Maturity = 'July-1-2013'; 
OptSpec = {'put';'call'};
Strike = [98;101];

Price the European fixed lookback options.

Price = lookbackbycvgsg(RateSpec, StockSpec, OptSpec, Strike, Settle, Maturity)
Price = 

   18.3130
   30.4021

Input Arguments

collapse all

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

Data Types: struct

Stock specification for the underlying asset. For information on the stock specification, see stockspec.

stockspec handles several types of underlying assets. For example, for physical commodities the price is represented by StockSpec.Asset, the volatility is represented by StockSpec.Sigma, and the convenience yield is represented by StockSpec.DividendAmounts.

Data Types: struct

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

Data Types: char | cell

Option strike price values, specified as an integer using a NINST-by-1 vector of strike price values.

Data Types: single | double

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

Data Types: double | char | cell

European option expiry date, specified as date character vectors or as serial date numbers using a NINST-by-1 vector or cell array of character vector dates.

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 single quotes (' '). You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: Price = lookbackbycvgsg(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'AssetMinMax',AssetMinMax)

collapse all

Maximum or minimum underlying asset price, specified as a NINST-by-1 vector.

Data Types: single | double

Output Arguments

collapse all

Expected prices of the lookback option, returned as a NINST-by-1 vector.

References

[1] Hull, J. C. Options, Futures, and Other Derivatives 5th Edition. Englewood Cliffs, NJ: Prentice Hall, 2002.

Introduced in R2014a

Was this topic helpful?