Stochastic methods in Finance Nikos SKANTZOS 2010 Fair price What is the fair price of an option? Consider a call option on an asset Delta hedging: Δ1 Δ2 Δ3 Δ4 Δ5 For every time interval: Buy/Sell the asset to make the position: Call – Spot * nbr Assets insensitive to variations of the Spot Fair price is the amount spent during delta-hedging: Option Price = =Δ1+ Δ2+ Δ3 + Δ4+ Δ5 It is fair because that is how much we spent! Black-Scholes: the mother model Black-Scholes based option-pricing on no-arbitrage & delta hedging Previously pricing was based mainly on intuition and risk-based calculations Fair value of securities was unknown Black-Scholes: main ideas Assume a Spot Dynamics S0 S1 St St t ST The rule for updating the spot has two terms: Drift : the spot follows a main trend Vol : the spot fluctuates around the main trend Black-Scholes assume as update rule St t St St t St Wt main trend fluctuations This process is a “lognormal” process: dSt St dt St dWt σ: size of fluctuations μ: steepness of main trend ΔWt: random variable (pos/neg) “lognormal” means that drift and fluctuations are proportional to St Black-Scholes: assumptions No-arbitrage drift = risk-free rate Impose no-arbitrage by requiring that expected spot = market forward Calculations simplify if fluctuations are normal: Wt is Gaussian normal of zero mean, variance ~ T Volatility (size of fluctuations) is assumed constant Risk-free rate is assumed constant No-transaction costs, underlying is liquid, etc Black-Scholes formula Call option = e–rT ∙ E[ max(S(T)-K,0)] = discounted average of the call-payoff over various realizations of final spot C e r1T S N (d1 ) e r2 T K N (d 2 ) Solution ln d1 S 1 r2 r1 2 T K 2 T ln d2 S 1 r2 r1 2 T K 2 T Interpretation of BS formula r1 T C S e N (d1 ) Delta of the option: number of shares to go long e r2 T K N (d 2 ) probability that spot finishes in the money Price = value of position at maturity – value of cash-flow at maturity How much does the portfolio value change when spot changes? portfolio value S Delta neutral position, ∂Portfolio/∂S=0 S+dS S Δ=0, Delta-neutral value: if S S+dS then portfolio value does not change Vega=0, Vega-neutral value: if σ σ+dσ then portfolio value does not change “Greeks” measure sensitivity of portfolio value Black-Scholes vs market Comparison with market: BS < MtM when in/out of the money Plug MtM in BS formula to calculate volatility smile Inverse calculation “implied vol” Call on EURUSD 80000 Smile Black-Scholes 70000 15.00% Black-Scholes Market 60000 Market 30000 14.00% 20000 Volatility 40000 USD cash 14.50% 50000 13.50% 10000 0 1.2000 Strike strike 1.2500 1.3000 1.3500 1.4000 1.4500 1.5000 1.5500 13.00% 1.2000 1.2500 1.3000 1.3500 1.4000 1.4500 1.5000 1.5500 1.6000 Spot probability density Distribution of terminal spot (given initial spot) obtained from PST S0 e r2 T 2Call mkt K 2 Market observable Fat tails: Market implies that the probability that the spot visits low-spot values is higher than what is implied by Black-Scholes Main causes: •Spot dynamics is not lognormal •Spot fluctuations (vol) are not constant What information does the smile give ? It represents the price of vanillas Take the vol at a given strike Insert it to Black-Scholes formula Obtain the vanilla market price It is not the volatility of the spot dynamics It does not give any information about the spot dynamics even if we combine smiles of various tenors Therefore it cannot be used (directly) to price path-dependent options The quoted BS implied-vol is an artificial volatility “wrong quote into the wrong formula to give the right price” (R.Rebonato) If there was an instantaneous volatility σ(t), the BS could be interpreted as 2 BS T 1 2 d T t t the accumulated vol Types of smile quotes The smile is a static representation of the implied volatilities at a given moment of time What if the spot changes? Sticky delta: if spot changes, implied vol of a given “moneyness” doesn’t change Sticky strike: if spot changes, implied vol of a given strike doesn’t change Moneyness: Δ=DF1·N(d1) Spotladders: price, delta & gamma 0.4 1 0.8 0.3 3.5 3 2.5 2 1.5 1 0.5 0 0.6 0.6y 1y 0.2 0.4 0.1 0.2 spot 0 spot 0 0.8 1 1.2 1.8 0.6y 1y spot 0.8 0.8 1 Knock-out price 0.0045 0.004 0.0035 0.003 0.0025 0.002 0.0015 0.001 0.0005 0 1.6 1.2 1.4 1.6 1.8 0.9 1 1.1 1.2 1.3 1.4 0.03 0.02 0.01 0 -0.01 0.8 -0.02 -0.03 -0.04 -0.05 -0.06 Spot is far from barrier and far from OTM: risk is minimum, price is maximum 0.6y 1y spot 0.8 1 1.2 1.4 1.6 1.8 spot=1.28 strike=1.25 barrier=1.5 0.4 delta 1.4 0.6y 1y gamma price 0.5 1.2 Linear regime: S-K 0.2 0.9 1 spot 1.1 1.2 1.3 0.6y 1y 0.6y 1y 0 -0.2 -0.4 -0.6 Δ<0, price gets smaller if spot increases gamma 0.6 Vanilla delta Sensitivity of Delta to spot is maximum 1 underlying is needed to hedge 0.8 1 spot 1.2 Spotladders: vega, vanna & volga Vanna: Sensitivity of Vega with respect to Spot Vanilla Volga: Sensitivity of Vega with respect to Vol 2 0.00004 0.6y 1y 0.00001 0 0.8 1 1.2 1.4 1.6 0.000004 0.000002 spot 0 vega -0.000004 1.8 0.8 1 1.2 -2 1 1.2 0.6y 1y 1.4 1.6 1.8 spot Knock-out -0.000002 0.8 0 -1 spot 0.6y 1y 0.6y 1y spot 0.8 1.5 2 1 1.5 0.5 0.6y 1y 1 0.8 -0.000006 -0.000008 -1 1.2 1.4 1.6 0.9 1 1.1 0.6y 1y 0.5 spot 0 -0.5 1 spot=1.28 strike=1.25 barrier=1.35 vanna 0.00002 1 vega 0.00003 3.5 3 2.5 2 1.5 1 0.5 0 volga 0.00005 vanna 3 0.00006 volga 1.2 1.3 0 -0.5 0.8 -1 1 1.2 spot 1.8 Simple analytic techniques: “moment matching” Average-rate option payoff with N fixing dates 1 Asian max N Si K ,0 i 1 N Basket option with two underlyings S1 T S 2 T Basket max a1 a2 K ,0 S 2 t S1 t TV pricing can be achieved quickly via “moment matching” Mark-to-market requires correlated stochastic processes for spots/vols (more complex) “Moment matching” To price Asian (average option) in TV we consider that The spot process is lognormal The sum of all spots is lognormal also Note: a sum of lognormal variables is not lognormal. Therefore this method is an approximation (but quite accurate for practical purposes) Central idea of moment matching Find first and second moment of sum of lognormals: E[Σi Si] , E[ (Σi Si)2 ], Assume sum of lognormals is lognormal (with known moments from previous step) and obtain a Black-Scholes formula with appropriate drift and vol Asian options analytics (1) Prerequisites for the analysis: statistics of random increments Increments of spot process have 0 mean and variance T (time to maturity) E[Wt]=0, E[Wt2]=t If t1<t2 then E[Wt1∙Wt2] = E[Wt1∙(Wt2-Wt1)] + E[Wt12] = t1 (because Wt1 is independent of Wt2-Wt1) More generally, E[Wt1∙Wt2] = min(t1,t2) From this and with some algebra it follows that E[St1 ∙ St2] = S02 exp[r ∙(t1+t2) + σ2 ∙ min(t1,t2)] Asian options analytics (2) Asian payoff contains sum of spots 1 N X Si N i 1 What are its mean (first moment) and variance? 1 E X E N EX 2 1 S i i 1 N N 1 E 2 N N 1 E S i N i 1 1 Si S j 2 i 1 j 1 N N N N E S0 e r N i 1 N 1 2 2 t i 1 E S S i j N2 i 1 j1 ti N ( 0 ,1) N 1 N E S e i , j 1 2 0 N r ti S e 0 i 1 r ti t j 2 min ( ti ,t j ) Looks complex but on the right-hand side all quantities are known and can be easily calculated ! Therefore the first and second moment of the sum of spots can be calculated Asian options analytics (3) Now assume that X follows lognormal process, with λ the (flat) vol, μ the drift dX t X t dt X t dWt Has solution (as in standard Black-Scholes) X T S0 e T W 1 2 2 Take averages in above and obtain first and second moment in terms of μ,λ EX T S 0 e T S EX T 2 T 2 0 e 2 12 2 T E e 2 WT Solving for drift and vol produces 1 E X T log T S0 E X e 2 T 1 E X T2 log 2 T E X T 2T Asian options analytics (4) Since we wrote Asian payoff as max(XT-K,0) We can quote the Black-Scholes formula Asian DF e T S 0 N (d1 ) K N (d 2 ) With S 1 ln 0 2 T K 2 d1 T ln d2 S0 1 2 T K 2 T And μ, λ are written in terms of E[X], E[X2] which we have calculated as sums over all the fixing dates The “averaging” reduces volatility: we expect lower price than vanilla Basket is based on similar ideas Smile-dynamics models Large number of alternative models: Volatility becomes itself stochastic Spot process is not lognormal Random variables are not Gaussian Random path has memory (“non-markovian”) The time increment is a random variable (Levy processes) And many many more… A successful model must allow quick and exact pricing of vanillas to reproduce smile Wilmott: “maths is like the equipment in mountain climbing: too much of it and you will be pulled down by its weight, too few and you won’t make it to the top” Dupire Local Vol Comes from a need to price path-dependent options while reproducing the vanilla mkt prices Underlying follows still lognormal process, but… Vol depends on underlying at each time and time itself It is therefore indirectly stochastic dSt St dt St St , t dWt Local vol is a time- and spot-dependent vol (something the BS implied vol is not!) No-arbitrage fixes drift μ to risk-free rate Local Vol Technology invented independently by: B. Dupire Risk (1994) v.7 pp.18-20 E. Derman and I. Kani Fin Anal J (1996) v.53 pp.25-36 They expressed local vol in terms of market-quoted vanillas and its time/strike derivatives 2 St , t CT r1 C K r2 r1 C K 2 1 K C KK 2 K S t ,T t Or, equivalently, in terms of BS implied-vols: 2 St , t 1 2 BS T t0 BS K r2 r1 BS T K 2 2 1 d d1d 2 2 BS BS BS 1 1 K 2 2 2 2 K T t K K K K T t BS BS 0 BS 0 K S t ,T t Dupire Local Vol Contains derivatives of mkt quotes with respect to: Maturity, Strike The denominator can cause numerical problems CKK<0 (smile is locally concave), σ2<0, σ is imaginary The Local-vol can be seen as an instantaneous volatility depends on where is the spot at each time step Can be used to price path-dependent options S1 ,t1 S 2 ,t 2 ST 1 ,tT 1 S1 S2 ST Local Vol rule of thumb Rule of thumb: Local vol varies with index level twice as fast as implied vol varies with strike Sfinal Sinitial (Derman & Kani) Local-Vol and vanillas By design the local-vol model reproduces automatically vanillas No further calibration necessary, only market quotes needed EURUSD market Lines: market quotes Markers: LV pricer Example: Blue: 3 years maturity Green: 5 years maturity Take smile quotes Build local-vol Use them in simulation and price vanillas Compare resulting price of vanillas vs market quotes (in smile terms) Analytic Local-Vol (2) Estimating the numerical derivatives of the Dupire Local-Vol can be time-consuming Alternative: assume a form for the localvol σ(St,t) Do that, for example, by: From historical market data calculate logreturns log S t t S t , t St These equal to the volatility Make a scatter plot of all these Pass a regression The regression will give an idea of the historically realised local-vol function Analytic Local-Vol (2) A popular choice is 2 Ft Ft S , t 0 1 1 1 S F0 F0 Ft the forward at time t Three calibration parameters σ0 : controlling ATM vol α: controlling skew (RR) β: controlling overall shift (BF) Calibration is on vanilla prices Solve Dupire forward PDE with initial condition C=(S0-K)+ Stochastic models Stochastic models introduce one extra source of randomness, for example Interest rate dynamics Vol dynamics Jumps in vol, spot, other underlying Combinations of the above Dupire Local Vol is therefore not a real stochastic model Main problem: Calibration minimize (model output – market observable)2 Example (model ATM vol – market ATM vol)2 Parameter space should not be too small: model cannot reproduce all market-quotes across tenors too large: more than one solution exists to calibration Heston model Coupled dynamics of underlying and volatility dSt St dt v t St dW1 dvt v vt dt vt dW2 EdW1 dW2 dt Interpretation of model parameters Processes Lognormal for spot Mean-reverting for variance Correlated Brownian motions μ : drift of underlying κ : speed of mean-reversion ρ : correlation of Brownian motions ε : volatility of variance Analytic solution exists for vanillas ! S L Heston "A Closed form solution for options with stochastic volatility" Rev Fin Stud (1993) v.6 pp.327-343 Effect of Heston parameters on smile Affecting overall shift in vol: Speed of mean-reversion κ Long-run variance v∞ Affecting skew: Correlation ρ Vol of variance ε Local-vol vs Stochastic-vol Dupire and Heston reproduce vanillas perfectly But can differ dramatically when pricing exotics! Rule of thumb: skewed smiles: use Local Vol convex smiles: use Heston Hull-White model It models mean-reverting underlyings such as Interest rates Electricity, oil, gas, etc drt rmean a rt dt dWt 3 parameters to calibrate obtained from historical data: obtained from calibration: rmean (describes long-term mean) a: speed of mean reversion σ : volatility Has analytic solution for the bond price P = E[ e-∫r(t)dt ] Three-factor model in FOREX Hull-White is often coupled to another underlying Three factor model in FOREX: spot + domestic/foreign rates dS rd rf S dt FX S dW r dt drd rdmean ad rd dt d dWd drf mean f af rf f dWf To replicate FX volatilities match FX,mkt with FX,model 2 FX, model T 1 2 s ds T t t Θ(s) is a function of all model parameters: FX,d,f,ad,af Common calibration issue: "Variance squeeze“: FX vol + IR vols up to a certain date have exceeded the FX-model vol. Solution (among other possibilities): Time-dependent parameters (piecewise constant) parameter time Two-factor model in commodities Commodity models introduce the “convenience yield” (termed δ) δ = benefit of direct access – cost of carry Not observable but related to physical ownership of asset No-arbitrage implies Forward: F(t,T) = St ∙ E [ e∫(r(t)-δ(t))dt ] δt is taken as a correction to the drift of the spot price process What is the process for St, rt, δt ? Problem: δt is unobserved Spot is not easy to observe for electricity it does not exist For oil, the future is taken as a proxy Commodity models based on assumptions on δ Gibson-Scwartz model Classic commodities model dSt St rt t dt t St dWt1 d t t dt dWt 2 Spot is lognormal (as in Black-Scholes) Convenience yield is mean-reverting Very similar to interest rate modeling (although δt can be pos/neg) Fluctuation of δ is in practise an order of magnitude higher than that of r no need for stochastic interest rates Analysis based on combining techniques Calculate implied convenience yield from observed future prices Miltersen extension: Time-dependent parameters Merton jump model This model adds a new element to the stochastic models: jumps in spot Motivated by real historic data Advantages Can produce smile Adds a realistic element to dynamics Has exact solution for vanillas Disadvantages Risk cannot be eliminated by delta-hedging as in BS Hedging strategy is not clear Merton jump model Extra term to the Black-Scholes process: If jump does not occur dS t dt dWt St dSt If jump occurs dt dWt Y 1 St Then, St Stafter jump Stbefore jump Stbefore jump Y 1 Stafter jump Stbefore jump Y Therefore, Y: size of the jump Model has two extra parameters: size of the jump, Y frequency of the jump, λ Jump size & jump times: Random variables Merton model solution Merton assumed that The jump size Y is lognormally-distributed, Can be sampled as Y=eη+γ∙g; g is normal ~N(0,1) and η,γ are real Jump times: Poisson-distributed with mean λ, Prob(n jumps)=e-λT(λT)n /n! Jump times: independent from jump sizes The model has solution a weighted sum of Black-Scholes formulas Call price e - T n 0 T n BSS n! 0 , K , T , n , rn S S 2 2 log 0 rn 12 n T log 0 rn 12 n T K K e rn r1 T K BSS0 , K , T , n , rn e r1T S n T n T σn , rn , λ’ are functions of σ,r and the jump-statistics given by η, γ 12 e 2 n 2 2 n T 12 2 rn r2 r1 e 1 n 12 2 T Merton model properties The model is able to produce a smile effect Vanna-Volga method Which model can reproduce market dynamics? Market psychology is not subject to rigorous math models… Brute force approach: Capture main features by a mixture model combining jumps, stochastic vols, local vols, etc But… Vanna-Volga is an alternative pricing “recipie” Difficult to implement Hard to calibrate Computationally inefficient Easy to implement No calibration needed Computationally efficient But… It is not a rigorous model Has no dynamics Vanna-Volga main idea The vol-sensitivities 2 Price Price Vega Vanna S Volga 2 Price 2 are responsible the smile impact Practical (trader’s) recipie: Construct portfolio of 3 vanilla-instruments which zero out the Vega,Vanna,Volga of exotic option at hand Calculate the smile impact of this portfolio (easy BS computations from the market-quoted volatilities) Market price of exotic = Black-Scholes price of exotic + Smile impact of portfolio of vanillas Vanna-Volga hedging portfolio Select three liquid instruments: At-The-Money Straddle (ATM) =½ Call(KATM) + ½ Put(KATM) 25Δ-Risk-Reversal (RR) = Call(Δ=¼) - Put(Δ=-¼) 25Δ-Butterfly (BF) = ½ Call(Δ=¼) + ½ Put(Δ=-¼) – ATM KATM KATM K25ΔP ATM Straddle KATM K25ΔC 25Δ Risk-Reversal RR carries mainly Vanna K25ΔP K25ΔC 25Δ Butterfly BF carries mainly Volga Vanna-Volga weights Price of hedging portfolio P = wATM ∙ ATM + wRR ∙ RR + wBF ∙ BF What are the appropriate weights wATM ,, wRR, wBF? Exotic option at hand X and portfolio of vanillas P are calculated using Black-Scholes vol-sensitivities of portfolio P = vol-sensitivities of exotic X: X vega ATM vega X vanna ATM vanna X ATM volga volga solve for the weights: RR vega RR vanna RR volga BFvega w vega BFvanna w vanna BFvolga w volga -1 w A X Vanna-Volga price Vanna-Volga market price is XVV = XBS + wATM ∙ (ATMmkt-ATMBS) + wRR ∙ (RRmkt-RRBS) + wBF ∙ (BFmkt-BFBS) Other market practices exist Further weighting to correct price when spot is near barrier It reproduces vanilla smile accurately Vanna-Volga vs market-price Can be made to fit the market price of exotics More info in: F Bossens, G Rayee, N Skantzos and G Delstra "Vanna-Volga methods in FX derivatives: from theory to market practise“ Int J Theor Appl Fin (to appear) Models that go the extra mile Local Stochastic Vol model Jump-vol model Bates model Local stochastic vol model Model that results in both a skew (local vol) and a convexity (stochastic vol) dSt St dt t St , t Vt dWt1 dVt Vt dt Vt dWt 2 For σ(St,t) = 1 the model degenerates to a purely stochastic model For ξ=0 Calibration: hard Several calibration approaches exist, for example: the model degenerates to a local-volatility model 2 2 Construct σ(St,t) that fits a vanilla market, Dupire LV St , t St , t Vt Use remaining stochastic parameters to fit e.g. a liquid exotic-option market 2 Jump vol model Consider two implied volatility surfaces Bumped up from the original Bumped down from the original These generate two local vol surfaces σ1(St,t) and σ2(St,t) Spot dynamics dSt St dt St St , t dWt p 1 St , t with prob St , t 2 St , t with prob 1 - p Calibrate to vanilla prices using the bumping parameter and the probability p Bates model Stochastic vol model with jumps dSt St dt t dWt1 dZ t d t t dt Vt dWt 2 Has exact solution for vanillas Analysis similar to Heston based on deriving the Fourier characteristic function More info: D S Bates “Jumps and Stochastic Volatility: Exchange rate processes implicit in Deutsche Mark Options“ Rev Fin Stud (1996) v.9 pp.69-107 Which model is better? Local Vol Pros Good for Skew smiles Good for simple exotics Heston Vanna-Volga Good for convex Fast + accurate smiles for simple exotics OT,KO,DKO,… Allows fat-tails Good for barrier options <1y Cons Not good for convex smiles Not good for Skew smiles Approximates numerical derivatives outside mkt quotes Often needs time-dependent params to fit term structure Cannot be used for pathdependent options TARF,LKB,… Multifactor Good for maturities>1y Good if product has spot & rates as underlying Not useful if rates are approx. constant Local-Stoch Vol Can price most types of products (in theory) Often unstable Choice of model Model should fit vanilla market (smile) and a liquid exotic market (OT) Model must reproduce market quotes across various tenors (term structure) No easy answer to which model to use! W. Schoutens, E. Simons, and J. Tistaert, "A Perfect calibration! Now what?“ Wilmott Magazine, March 2004 One-touch tables OT tables measure model success vs market price OT price ≈ probability of touching barrier (discounted) Collect mkt prices for TV in the range: 0%-100% (away-close to barrier) Calculate model price – market price The better model gives model-mkt≈0 OT tables depend on OT table 3.00% 2.00% nbr barriers Type of underlying Maturity mkt conditions mkt - model 1.00% 0.00% -1.00% 0 0.2 0.4 0.6 0.8 -2.00% -3.00% -4.00% VannaVolga -5.00% LocalVol -6.00% -7.00% Heston TV price 1 Numerical Methods Monte Carlo PDE Advantages: Easy to implement Easy for multi-factor processes Easy for complex payoffs Disadvantages Not accurate enough CPU inefficient Greeks not stable/accurate American exercise: difficult Depends on quality of random number generator Disadvantages Hard to implement Hard for multi-factor processes Hard for complex payoffs Advantages Very accurate CPU efficient Greeks stable/accurate American exercise: very easy Independent of random numbers Monte Carlo vs PDE Monte Carlo Based on discounted average payoff over realizations of spot: Option Price e r T Epayoff S T e r T nbr Paths 1 payoff ST(i ) nbr Paths i 1 Outline of Monte Carlo simulation For each path: At each time step till maturity Draw a random number from Normal distribution N(0,T) W Update spot St t St St t St t Calculate payoff for this path random number Calculate average payoff across all paths Monte Carlo vs PDE Partial Differential Equation (PDE) Based on alternative formulation of option price problem P P 1 2 2 P S 2 r P t S 2 S Idea is to rewrite it in discrete terms, e.g. with t+=t+Δt, S+=S+ΔS P(t ) P(t ) P ( S ) P ( S ) 1 2 P ( S ) 2 P ( S ) P ( S ) S rP 2 t 2 S 2 S Spot Apply payoff at maturity and solve PDE backwards till today S0 K today time maturity Issues on simulations Random numbers Barriers and hit probability Simulating american-exercise options Likelihood ratio method Random numbers Simulations require at each time step a random number Statistics: for example, normal-Gaussian (for lognormal process) mean=0 variance=1 This means that if we sum all random numbers we should get 0 and st.dev.=1 In practise, we draw uniform random numbers in [0,1] and convert them to Normal-Gaussian random numbers using the normal inverse cumulative function A typical simulation requires 105 paths & 102 steps: 107 random numbers Deviations away from the required statistics produce unwanted bias in option price Random numbers do not fill in the space uniformly as they should ! This effect is more pronounced as the number of dimensions (=number of steps * number of paths) increases Pseudo-random number generators RNG generate numbers in the interval [0,1] With some transformations one then converts the sampling space [0,1] to any other that is required (e.g. gaussian normal space) Random numbers are not truly random (hence “pseudo”): there is a formula behind taking as input the computer clock After a while “random numbers” will repeat themselves Good random numbers have a long period before repetition occurs “Mersenne” random numbers have a period that is a Mersenne number, i.e. can be written as 2n-1 for some big n (for example n=20000) Mersenne numbers are popular due to They are quickly generated Sequences are uncorrelated Eventually (after many draws) they fill the space uniformly “Low-discrepancy” random numbers These numbers are not random at all ! “low discrepancy” = homogenous LDRN fill the [0,1] space homogenously. Passing uniform numbers through the cumulative of the probability density will produce the correct density of points homogenous numbers form [0,1] 1 Gaussian cumulative function Gaussian probability function 0 Non-homogenous numbers in (-∞ ∞) Higher density of points here “Peak” implies that more points should be sampled from here Sobol’ numbers Sobol’ numbers are low-discrepancy sequences Quality depends on nbr of dimensions = nbr Paths x nbr Steps Uniformity is good in low dimensions Uniformity is bad in high dimensions Are convenient because … they are not random ! Calculating the Greeks with finite difference requires the same sequence of random numbers Price S S Price S S 2 S The calculation of the Greeks should differ only in the “bumped” param Random number quality Plot pairs of columns Draw (n x m) table of Sobol’ numbers Nbr Steps (1,2) Nbr Paths Pair( 10 , 20 ) 1.000 1.000 1 0 0.5 0.25 0.75 0.875 0.375 0.125 0.625 0.6875 0.1875 0.4375 0.9375 0.8125 0.3125 0.0625 0.5625 0.59375 0.09375 0.34375 0.84375 0.96875 0.46875 0.21875 0.71875 0.65625 0.15625 0.40625 0.90625 2 0 0.5 0.75 0.25 0.875 0.375 0.625 0.125 0.8125 0.3125 0.5625 0.0625 0.6875 0.1875 0.9375 0.4375 0.96875 0.46875 0.71875 0.21875 0.59375 0.09375 0.84375 0.34375 0.65625 0.15625 0.90625 0.40625 3 0 0.5 0.25 0.75 0.125 0.625 0.875 0.375 0.8125 0.3125 0.0625 0.5625 0.4375 0.9375 0.6875 0.1875 0.34375 0.84375 0.59375 0.09375 0.96875 0.46875 0.21875 0.71875 0.03125 0.53125 0.78125 0.28125 4 0 0.5 0.75 0.25 0.625 0.125 0.875 0.375 0.1875 0.6875 0.4375 0.9375 0.0625 0.5625 0.3125 0.8125 0.90625 0.40625 0.65625 0.15625 0.78125 0.28125 0.53125 0.03125 0.34375 0.84375 0.09375 0.59375 (10,20) 5 0 0.5 0.25 0.75 0.375 0.875 0.625 0.125 0.0625 0.5625 0.8125 0.3125 0.9375 0.4375 0.1875 0.6875 0.78125 0.28125 0.03125 0.53125 0.15625 0.65625 0.90625 0.40625 0.34375 0.84375 0.59375 0.09375 6 0 0.5 0.75 0.25 0.375 0.875 0.125 0.625 0.6875 0.1875 0.9375 0.4375 0.3125 0.8125 0.0625 0.5625 0.84375 0.34375 0.59375 0.09375 0.21875 0.71875 0.46875 0.96875 0.90625 0.40625 0.65625 0.15625 Non-uniform filling for large dimensions! 7 0.900 0 0.800 0.5 0.700 0.25 0.75 0.600 0.625 0.500 0.125 0.375 0.400 0.875 0.300 0.5625 0.200 0.0625 0.3125 0.100 0.8125 0.000 0.6875 0.000 0.1875 0.4375 0.9375 0.03125 0.53125 1.000 0.78125 0.900 0.28125 0.15625 0.800 0.65625 0.700 0.90625 0.40625 0.600 0.09375 0.500 0.59375 0.400 0.84375 0.34375 0.300 ,2 ) 0.900 0.800 0.700 0.600 0.500 0.400 0.300 0.200 0.100 0.200 0.400 0.600 0.800 1.000 0.000 0.000 (13,40) 0.400 0.600 0.800 1.000 (20,881) Pair( 20 , 881 ) Pair( 13 , 40 ) 1.000 0.900 0.800 0.700 0.600 0.500 0.400 0.300 0.200 0.200 0.100 0.100 0.000 0.000 0.200 0.200 0.400 0.600 0.800 1.000 0.000 0.000 0.200 0.400 0.600 0.800 1.000 Barrier options Consider a (slightly) complex barrier pattern Payoff at maturity is alive if Barrier A has not been hit Barrier B has been hit Barrier options There is analytic expression for “survival probability” =probability of not hitting We rewrite the pattern in terms of “not-hitting” events: rule ProbB is hit AND A is not hit Bayes' ProbB is hit GIVEN A is not hit ProbA is not hit 1 ProbB is not hit GIVEN A is not hit ProbA is not hit ProbA is not hit ProbB is not hit AND A is not hit This is equivalent to the replication formula: KIAKOB = KOB – DKOA,B Option price = DF ∙ payoff at maturity∙ Prob(A is not hit AND B is hit) Barrier option replication Prob(A is !hit) = Prob(A is !hit in [t1,t2])∙ Prob(A is !hit in [t2,t3]) Prob(A is !hit AND B is !hit) = =Prob(A is !hit in [t1,t2])∙ Prob(A AND B are !hit in [t2,t3]) ∙ Prob(B is !hit in [t3,t5]) Barrier options formula Barrier option formula American exercise in Monte Carlo When is it optimal to exercise the option? S0 K today t maturity Naïve approach. If at any time t: Spot is out-of-the-money, it is not optimal to exercise. Stop Spot is in-the-money then start new simulation from this spot if (on average) final spot finishes more in-the-money, do not exercise now if (on average) final spot finishes less in-the-money, exercise now Least-squares Monte Carlo Since this has to be done for every time step t: Naïve Monte Carlo is clearly impractical Methodology for american exercise provided by Longstaff & Schwartz (2001) Rev Fin Studies v.14 pp.113-147 Method is not exact but quite accurate (versus e.g. PDE) Is not hard to implement But not as CPU-efficient as standard monte carlo Central idea Work backwards starting from maturity At each step compare immediate exercise value with expected cashflow from continuing Exercise if immediate exercise is more valuable Least-squares Monte Carlo (1) Generate spots for each path & for each time-step Make an NpathsxNsteps table of spot paths (according to some dynamics) Make an NpathsxNsteps empty table of cashflows (CF) Cashflows Spot Paths Npaths Nsteps Out-of-the-money In-the-money 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Least-squares Monte Carlo (2) If spot at maturity is in-the-money: assign for this path CF=payoff value, out-of-the-money: assign for this path CF=0, Cashflows Spot Paths Out-of-the-money In-the-money 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 * CF=(Sthis path(T)-K)+ Least-squares Monte Carlo (3) Go one time-step backwards. If spot is in-the-money: option holder must decide whether to exercise now or continue. Calculate Y=discounted cashflow at next step if option is not exercised now out-of-the-money: assign for this path CF=0 Cashflows Spot Paths Y1(T-Δt) Y3(T-Δt)=0 Y5(T-Δt)=0 Y6(T-Δt) Ypath(T-Δt) = DF(T-Δt,T) ∙ CF(T) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Least-squares Monte Carlo (4) On the pairs {Spath i,Ypath i} pass a regression of the form E(S) = a0+a1∙S +a2∙S2 This function is an approximation to the expected payoff from continuing to hold the option from this time point on Y E(S) S If E(Spath(T-Δt)) < (Spath(T-Δt)-K)+ : exercise the option at this time step Assign CF at this step = (Spath(T-Δt)-K)+ and for all larger t set CF=0 If E(Spath(T-Δt)) > (Spath(T-Δt)-K)+ : Do not exercise the option at this time step Maintain same value of cashflow at next steps Least-squares Monte Carlo (5) Proceed similarly till the first time step and populate the matrix of cashflows There should be one non-zero cashflow per path! (the option can be exercised only once) Amer 1 N paths N paths 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DF today, t iexer CF Si t iexer i 1 Callables are priced with the same idea Least-squares Monte Carlo (5) Proceed similarly till the first time step and populate the matrix of cashflows There should be one non-zero cashflow per path! (the option can be exercised only once) Amer 1 N paths N paths 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DF today, t iexer CF Si t iexer i 1 Callables are priced with the same idea Greeks in Monte Carlo To calculate Greeks with Monte Carlo: Bump sensitivity parameter (spot, vol, etc) Recalculate market data with the bumped parameter (smile, curves, etc) Re-run Monte Carlo Calculate Greeks as finite difference For example, Price S S Price S S 2 S Vega Price S S 2 Price S Price S S S 2 Price Price This requires at least 12 Monte Carlo runs for all Greeks ! Not ideal for impatient traders Likelihood ratio method (1) This method allows us to calculate all Greeks within a single Monte Carlo Main idea: Express Greeks as payoffs Price the new “payoffs” with the same simulation Note: The analytics of the method simplify if spot is assumed to follow lognormal process (as in BS) The LR greeks will not be in general the same as the finite difference greeks !! This is because of the modification of the market data when using the finite difference method Likelihood ratio method (2) Consider an exotic option with a path-dependent payoff Its price will depend on all spots in the path Exotic DF dS1 dS m PDFS1 ,, S m Prob surv S1 ,, S m Payoff PDF: probability density function of the spot m m i 1 i 1 PDFS1 ,, S m PDFSi 1 12 zi2 e 2 S 2i ti i zi the Gaussian random number used to make the jump Si-1 log zi 1 Si Si 1 r i2 ti Si 1 2 i ti Probsurv the total survival probability for the spot path (given some barrier levels) m i 1 t i Prob surv Prob tsurv i 1 For explicit expressions for the surv.prob. of KO or DKO see previous slides Likelihood ratio method (3) Sensitivity with respect to a parameter α (=spot, vol, etc) PDFS1m Prob surv S1m Exotic DF dS1m Payoff PDFS1m Prob surv S1m 1 1 DF dS1m Payoff Prob surv S1m PDFS1m This is simple derivatives over analytic functions (see previous slide)! For example, Delta becomes the new payoff DF Payoff 0 t1 PDFS1m Prob tsurv 1 1 0 t1 PDF S S S 0 Prob tsurv 1m 0 To be priced with the same spot path as the Payoff itself Similarly for other Greeks: more lengthy expressions but doable! References Options “Options, Futures & other derivatives” John C Hull, (2008) Prentice Hall “Paul Wilmott on Quantitative Finance 3 Vol Set” Paul Wilmott, (2000) Wiley Numerical methods: PDE: "Pricing Financial Instruments: The Finite Difference Method", D Tavella and C Randall, (2000) Wiley Monte Carlo: “Monte Carlo methods in Finance", P Jäckel, (2003) Wiley Monte Carlo: “Monte Carlo methods in Financial Engineering", P Glasserman, (2000) Springer