Finance
BlackScholesProcess
create new Black-Scholes process
Calling Sequence
Parameters
Description
Examples
References
Compatibility
BlackScholesProcess(S0, sigma, r, d)
BlackScholesProcess(S0, sigma, r, d, t, S)
S0
-
non-negative constant; initial value
r
non-negative constant, procedure or yield term structure; risk-free rate
sigma
non-negative constant, procedure or a local volatility structure; volatility
d
non-negative constant, procedure or yield term structure; dividend yield
t
name; time variable
S
name; state variable
The BlackScholesProcess command creates a new Black-Scholes process. This is a process S⁡t governed by the stochastic differential equation (SDE)
dS⁡tS⁡t=r⁡t−d⁡t−σ⁡S⁡t,t22⁢dt+σ⁡S⁡t,t⁢dW⁡t
where
r=r⁡t is the risk-free rate,
σ=σ⁡S,t is the local volatility,
d=d⁡t is the dividend yield,
and
W⁡t is the standard Wiener process.
The parameter S0 defines the initial value of the underlying stochastic process. It must be a real constant.
The parameter r is the risk-free rate. The parameter d is the continuous dividend yield. Time-dependent risk-free rate and dividend yield can be given either as an algebraic expression, a Maple procedure, or a yield term structure. If r or d is given as an algebraic expression, then the fifth parameter t must be passed to specify which variable in r should be used as the time variable. Maple procedure defining a time-dependent drift must accept one parameter (the time) and return the corresponding value for the drift.
The sigma parameter is the local volatility. It can be constant or it can be given as a function of time and the value of the state variable. In the second case it can be specified as an algebraic expression, a Maple procedure or a local volatility term structure. If sigma is specified in the algebraic form, the parameters t and S must be given to specify which variable in sigma represents the time variable and which variable represents the value of the underlying.
with⁡Finance:
First define a Black-Scholes process with constant parameters.
S0≔100.0
σ≔0.3
r≔0.05
d≔0.01
S≔BlackScholesProcess⁡S0,σ,r,d:
You can compute the expected payoff of a European call option with strike 100 maturing in 1 year.
T≔1.0
K≔100
DiscountFactor⁡r,T⁢ExpectedValue⁡max⁡S⁡T−K,0,timesteps=100,replications=105,output=value
13.64080475
You can then compare the result to the theoretical price.
BlackScholesPrice⁡S0,K,T,σ,r,d,call
13.61641736
This is incorporating local volatility term structure.
σ≔LocalVolatilitySurface⁡0.03+0.0001⁢S,t,S:
X≔BlackScholesProcess⁡S0,σ,r,d:
Again, you can compute the expected payoff of a European call option with strike 100 maturing in 1 year.
V≔DiscountFactor⁡r,T⁢ExpectedValue⁡max⁡X⁡T−K,0,timesteps=100,replications=103,output=value
V≔4.142053200
Then you can compute the implied volatility.
ImpliedVolatility⁡V,S0,K,T,r,d
0.03719843687
In this example we implied volatility surface obtained using a piecewise interpolation of known prices.
d≔0.
S0≔87
K≔85
C≔BlackScholesPrice⁡S0,k,t,0.03+0.0001⁢k,r,d:
U≔seq⁡0.1⁢i,i=1..20:
S≔seq⁡80+i,i=0..20:
V≔Finance:-LocalVolatility⁡C,S,U,r,d,t,k:
Σ≔LocalVolatilitySurface⁡U,S,V:
X≔BlackScholesProcess⁡S0,Σ,r,d:
T≔0.35
P≔DiscountFactor⁡r,T⁢ExpectedValue⁡max⁡X⁡T−K,0,timesteps=100,replications=103,output=value
P≔3.501775067
ImpliedVolatility⁡P,S0,K,T,r,d
0.03818795821
Glasserman, P., Monte Carlo Methods in Financial Engineering. New York: Springer-Verlag, 2004.
Hull, J., Options, Futures, and Other Derivatives, 5th. edition. Upper Saddle River, New Jersey: Prentice Hall, 2003.
The Finance[BlackScholesProcess] command was introduced in Maple 15.
For more information on Maple 15 changes, see Updates in Maple 15.
See Also
Finance[BlackScholesPrice]
Finance[BrownianMotion]
Finance[Diffusion]
Finance[Drift]
Finance[ExpectedValue]
Finance[ForwardCurve]
Finance[GeometricBrownianMotion]
Finance[ImpliedVolatility]
Finance[ItoProcess]
Finance[LocalVolatility]
Finance[LocalVolatilitySurface]
Finance[MertonJumpDiffusion]
Finance[PathPlot]
Finance[SamplePath]
Finance[SampleValues]
Finance[StochasticProcesses]
Download Help Document