calling asianbylevy for asian options with a start average date

1 view (last 30 days)
Hi,
Lets say i have an asian option that trades on the average price of future contract where the average is calculated only over the month out which the contract expires:
For example:
Close-of-Business: 20230929
Underlying: Some future instrument 'delivery' 202311. Option underlying is the daily average price of the future instrument in the month of november, so NOT the average from each day from CoB to end of november.
Start Average Date: 20231101
Expiry date: 20231130.
How could I call asianbylevy for cases like this? Specifically, how do I represent the Start Average Date?

Answers (1)

Rahul
Rahul on 4 Sep 2024
Edited: Rahul on 4 Sep 2024
Hi David,
I understand that you intend to price an Arithmetic European style Asian Option, with an underlying asset as a future contract, using the Levy Model.
To specify ‘StartDate’ and other mentioned parameters, for the given example of European arithmetic average pricing for Asian options using the Levy model, you can perform the following steps:
  1. Define Option Parameters
Given your scenario:
  • Option Type: Asian option based on the average price of a future contract during November 2023.
  • Start of Averaging Period: November 1, 2023.
  • Expiry Date: November 30, 2023, Last Day of the averaging period, where the option's payoff is determined based on this calculated average price relative to the strike price.
  • Settlement Date: September 29, 2023 (Close-of-Business). It marks the point at which the current spot price of the underlying future contract is observed.
AssetPrice = 100; % Current price of the underlying asset as of the settlement date
Strike = 105; % Strike price of the option
Rate = 0.05; % Risk-free rate
Settle = datetime(2023, 09, 29); % Settlement date (CoB)
Maturity = datetime(2023, 11, 30); % Expiry date of the option
Volatility = 0.2; % Volatility of the underlying asset [PK2]
AvgDate = datetime (2023, 11, 01); % Start of the averaging period
2. Using asianbylevy function: To use the ‘asianbylevy’ function in MATLAB, you will need to define several key
parameters, including the start date for the averaging period ‘AvgDate’. Here's how you can set it up:
  • rateSpec object: ‘intenvset’ function creates an interest-rate term structure (RateSpec) where the input argument list is specified as name-value pairs.
% Create the RateSpec Object
RateSpec = intenvset('ValuationDate', Settle, 'StartDates', AvgDate, 'EndDates', Maturity, 'Rates', Rate, 'Compounding', -1);
  • stockSpec object: ‘stockSpec’ function that creates a structure containing the properties of a stock. It handles different types of underliers when pricing instruments other than equities.
% Create the StockSpec Object
StockSpec = stockspec(Volatility, AssetPrice);
  • Specify Option Type and compute average price for the Asian option using the Levy model.
% Option type ('call' or 'put')
OptSpec = 'call';
% Call the asianbylevy function
Price = asianbylevy(RateSpec, StockSpec, OptSpec, Strike, AvgDate, Maturity);
For more information regarding parameters and functions used in the code snippet, kindly refer to the documentation links mentioned below:
Best

Categories

Find more on Chemistry in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!