Look Back Option
There are several possible definitions of look-back options. A common one is the Floating Strike Look-Back Call option which we will focus on here. This option gives the owner the right to buy the underlying security S at the lowest price of the underlying that was observed during the option's lifetime T. The floating strike look-back put gives the owner the right to sell the underlying at the highest price.
ThetaML implementation of a look back option
The following ThetaML model LookBack computes the price P of a Look-Back Option. The underlying S and the discount numeraire EUR are processes simulated externally. For example, the process S can be a stock price process that follows a Geometric Brownian Motion or a Heston Volatility process. The discount numeraire EUR can be a constant discount curve as implemented in Discounting, or a stochastic process that has a dynamics as defined in the CIR model.
model LookBack import S "Underlying stock prices" import EUR "Numeraire" export P "Lookback option value" %at current time, set the option value to have the same expected discounted %value as the variable 'V'; the ThetaML future operator '!' accompanying the %variable 'V' allows the values of 'V' at to be determined at a later instance %when 'V' is assigned some values P = E(V!) n = 500 % number of observations T = 1 % maturity time % Set start value of minimum s_min= S loop n %the ThetaML command 'Theta' advances time by 'T/n' years Theta T/n s_min = min( S, s_min) end %at option maturity time T, set the European put option payoffs; %the option payoffs are discounted to time 0 by the discount numeraire 'EUR' V = max(S - s_min, 0) * EUR end
The payoff description language ThetaML treats the valuation problem of the lookback option as a set of operator objects:
- the economic state is described by the underlying stock process S and the numeraire EUR, where S and EUR are modeled by some stochastic models and are subsequently imported as processes into the structural model LookBack. The structural model LookBack is defined by the model body in the above source code and lives on a model time axis. The model time axis is a time grid that combines all the model time points in the state variables. Time passing along the model time axis is enabled by the ThetaML operator Theta that describes time-determined behavior of the lookback option.
- the valuation function V computes the payoffs V = max(S - s_min, 0) * EUR<tt> with the economic state variables <tt>S and EUR as function arguments
- the operator E applied to the valuation function V returns the lookback option value
Black-Scholes price for floating strike look back option
An analytic price formula for a Floating Strike Look-Back option can be found in the Black-Scholes Model. It is expressed as
|Option||Look Back Option|
|Cumulative Normal Distribution||N(.)|
Thetagram graphic illustration of modelling look back option
Numerical example of pricing floating strike look back option
The graph below gives the convergence of the Floating Strike Look-Back option price to the Black-Scholes price as the number of time-steps is increased. Note that a large number of time-steps (>500) are required for accurate estimates.
Number of Monte Carlo simulations: 1000 random_seed: varied from 1..100 Black-Scholes Price: P=29.9573