Finance
EuropeanOption
create a new European option
Calling Sequence
Parameters
Options
Description
Examples
References
Compatibility
EuropeanOption(payoff, exercise, opts)
payoff
-
payoff function
exercise
a non-negative constant, a string containing a date specification recognized in a format recognized by Finance[ParseDate], or a date data structure; the maturity time or date
opts
(optional) equation(s) of the form option = value where option is one of referencedate or daycounter; specify options for the EuropeanOption command
referencedate = a string containing a date specification in a format recognized by Finance[ParseDate] or a date data structure -- This option provides the evaluation date. It is set to the global evaluation date by default.
daycounter = a name representing a supported day counter (e.g. ISDA, Simple) or a day counter data structure created using the DayCounter constructor -- This option provides a day counter that will be used to convert the period between two dates to a fraction of the year. This option is used only if one of earliestexercise or latestexercise is specified as a date.
The EuropeanOption command creates a new European-style option with the specified payoff and maturity. This option can be exercised only at the time or date specified by the exercise parameter. This is the opposite of an American-style option, which can be exercised at any time before the expiration.
The parameter payoff is the payoff function for the option. It can be either an algebraic expression or a procedure. A procedure defining a payoff function must accept one parameter (the value of the underlying) and return the corresponding payoff. This procedure will be called with floating-point arguments only and must return floating-point values. If payoff is given as an algebraic expression it must depend on a single variable. This expression will be converted to a Maple procedure using the unapply function.
The parameter exercise specifies the time or date when the option can be exercised. It can be given either as a non-negative constant or as a date in any of the formats recognized by the Finance[ParseDate] command.
The LatticePrice command can be used to price a European-style option using any given binomial or trinomial tree.
with⁡Finance:
Set the global evaluation date to January 3, 2006.
SetEvaluationDate⁡January 3, 2006:
Settings⁡daycounter=Thirty360European
Historical
Maturity≔AdvanceDate⁡EvaluationDate⁡,6,Months,output=formatted
Maturity≔July 3, 2006
Construct a binomial tree approximating a Black-Scholes process with an initial value of 100, a risk-free rate of 10% and a constant volatility of 40%. We will assume that no dividend is paid. Build the tree by subdividing the time period 0..0.6 into 1000 equal time steps.
T≔BlackScholesBinomialTree⁡100,0.1,0.,0.4,0.6,1000:
Consider a European call option with a strike price of 90 that matures in 6 months.
P1≔S↦max⁡S−90,0
plot⁡P1,80..120,color=blue,thickness=2,axes=BOXED,gridlines=true
E1≔EuropeanOption⁡P1,0.5:
E2≔EuropeanOption⁡P1,Maturity:
Calculate the price of this option using the tree constructed above. Use the risk-free rate as the discount rate.
LatticePrice⁡E1,T,0.1
19.16307346
LatticePrice⁡E2,T,0.1
Consider a European call option with a strike price of 110 that matures in 6 months.
P2≔S↦max⁡S−110,0
plot⁡P2,80..120,color=blue,thickness=2,axes=BOXED,gridlines=true
E3≔EuropeanOption⁡P2,0.5:
E4≔EuropeanOption⁡P2,Maturity:
LatticePrice⁡E3,T,0.1
9.341739175
LatticePrice⁡E4,T,0.1
Finally, consider a call option with a strike price of 100 maturing in 6 months.
P3≔S↦max⁡S−100,0
plot⁡P3,80..120,color=blue,thickness=2,axes=BOXED,gridlines=true
E5≔EuropeanOption⁡P3,0.5:
E6≔EuropeanOption⁡P3,Maturity:
LatticePrice⁡E5,T,0.1
13.58412136
LatticePrice⁡E6,T,0.1
Consider a more complicated payoff function.
P4≔S↦piecewise⁡S<90,0,S<100,S−90,S<110,110−S,0
P4≔S↦0S<90S−90S<100110−SS<1100otherwise
plot⁡P4,80..120,color=blue,thickness=2,axes=BOXED,gridlines=true
E7≔EuropeanOption⁡P4,0.5:
E8≔EuropeanOption⁡P4,Maturity:
LatticePrice⁡E7,T,0.1
1.336569904
LatticePrice⁡E8,T,0.1
Note that the payoff of the options E8 and E7 can be replicated using the payoffs of the options E1, E2, E3, E4, E5, and E6.
plot⁡P4,P1+P2−2⁢P3,80..120,color=blue,red,thickness=2,axes=BOXED,gridlines=true
This means that the prices should also match.
LatticePrice⁡E1,T,0.1+LatticePrice⁡E3,T,0.1−2⁢LatticePrice⁡E5,T,0.1=LatticePrice⁡E7,T,0.1
1.33656992=1.336569904
LatticePrice⁡E2,T,0.1+LatticePrice⁡E4,T,0.1−2⁢LatticePrice⁡E6,T,0.1=LatticePrice⁡E8,T,0.1
Glasserman, P., Monte Carlo Methods in Financial Engineering, Springer-Verlag, 2004.
Hull, J., Options, Futures and Other Derivatives, 5th. edition. Prentice Hall, 2003.
Jackel, P., Monte Carlo Methods in Finance, John Wiley & Sons, 2002.
Joshi, M., The Concepts and Practice of Mathematical Finance, Cambridge University Press, 2003.
Wilmott, P., Paul Wilmott on Quantitative Finance, John Wiley and Sons Ltd, 2000.
Wilmott, P., Howison, S., and Dewyne, J., The Mathematics of Financial Derivatives, New York: Cambridge University Press, 1995.
The Finance[EuropeanOption] command was introduced in Maple 15.
For more information on Maple 15 changes, see Updates in Maple 15.
See Also
Finance[AmericanOption]
Finance[BermudanOption]
Finance[BinomialTree]
Finance[BlackScholesBinomialTree]
Finance[BlackScholesTrinomialTree]
Finance[GetDescendants]
Finance[GetProbabilities]
Finance[GetUnderlying]
Finance[ImpliedBinomialTree]
Finance[ImpliedTrinomialTree]
Finance[LatticeMethods]
Finance[LatticePrice]
Finance[SetProbabilities]
Finance[SetUnderlying]
Finance[StochasticProcesses]
Finance[TreePlot]
Finance[TrinomialTree]
Download Help Document