- 46 Views
- Uploaded on
- Presentation posted in: General

Nikos SKANTZOS 2010

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Stochastic methods in Finance

What is the fair price of an option?

Consider a call option on an asset

Delta hedging:

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 fairbecause that is how much we spent!

Δ1

Δ2

Δ3

Δ4

Δ5

- 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

Assume a Spot Dynamics

- 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
- This process is a “lognormal” process:
- “lognormal” means that drift and fluctuations are proportional to St

σ: size of fluctuations

μ: steepness of main trend

ΔWt: random variable (pos/neg)

- No-arbitrage drift = risk-free rate
- Impose no-arbitrage by requiring that
expected spot = market forward

- Impose no-arbitrage by requiring that
- Calculations simplify if
- fluctuations are normal:
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

- fluctuations are normal:

- Call option = e–rT∙ E[ max(S(T)-K,0)]
= discounted average of the call-payoff over various realizations of final spot

Solution

Price = value of position at maturity – value of cash-flow at maturity

Δ=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

portfolio value

Delta neutral position,

∂Portfolio/∂S=0

S

S+dS

S

Comparison with market:

BS < MtM when in/out of the money

Plug MtM in BS formula to calculate volatility smile

Inverse calculation “implied vol”

- Distribution of terminal spot (given initial spot) obtained from

Market observable

Main causes:

- Spot dynamics is not lognormal
- Spot fluctuations (vol) are not constant

Fat tails:

Market implies that the probability that the spot visits low-spot values is higher than what is implied by Black-Scholes

- 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

the accumulated vol

- 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)

- Vanilla
- Knock-out spot=1.28 strike=1.25 barrier=1.5

Sensitivity of Delta to spot is maximum

1 underlying is needed to hedge

Linear regime: S-K

Δ<0, price gets smaller if spot increases

Spot is far from barrier and far from OTM: risk is minimum, price is maximum

Vanna: Sensitivity of Vega with respect to Spot

- Vanilla
- Knock-out spot=1.28 strike=1.25 barrier=1.35

Volga: Sensitivity of Vega with respect to Vol

- Average-rate option payoff with N fixing dates
- Basket option with two underlyings
- TV pricing can be achieved quickly via “moment matching”
- Mark-to-market requires correlated stochastic processes for spots/vols (more complex)

- 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

- Find first and second moment of sum of lognormals:

- 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 payoff contains sum of spots
- What are its mean (first moment) and variance?
- 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

- Now assume that X follows lognormal process, with λ the (flat) vol, μthe drift
- Has solution (as in standard Black-Scholes)
- Take averages in above and obtain first and second moment in terms of μ,λ
- Solving for drift and vol produces

- Since we wrote Asian payoff as max(XT-K,0)
- We can quote the Black-Scholes formula
- With
- 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

- 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”

- 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

- Local vol is a time- and spot-dependent vol
(something the BS implied vol is not!)

- No-arbitrage fixes drift μ to risk-free rate

- 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

- Or, equivalently, in terms of BS implied-vols:

- 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

Rule of thumb:

Local vol varies with index level twice as fast as implied vol varies with strike

(Derman & Kani)

Sfinal

Sinitial

Example:

Take smile quotes

Build local-vol

Use them in simulation and price vanillas

Compare resulting price of vanillas vs market quotes

(in smile terms)

- 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

Blue: 3 years maturity

Green: 5 years maturity

- Estimating the numerical derivatives of the Dupire Local-Vol can be time-consuming

- Alternative: assume a form for the local-vol σ(St,t)
- Do that, for example, by:
- From historical market data calculate log-returns
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

- From historical market data calculate log-returns

- A popular choice is
- 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 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

- minimize
- Parameter space should not be
- too small: model cannot reproduce all market-quotes across tenors
- too large: more than one solution exists to calibration

Processes

- Lognormal for spot
- Mean-reverting for variance
- Correlated Brownian motions

- Coupled dynamics of underlying and volatility
- Interpretation of model parameters
- μ : drift of underlying
- κ : speed of mean-reversion
- ρ : correlation of Brownian motions
- ε : volatility of variance

- S L Heston "A Closed form solution for options with stochastic volatility"Rev Fin Stud (1993) v.6 pp.327-343

Affecting skew:

- Correlation ρ
- Vol of variance ε

Affecting overall shift in vol:

- Speed of mean-reversion κ
- Long-run variance v∞

- 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

- It models mean-reverting underlyings such as
- Interest rates
- Electricity, oil, gas, etc

- 3 parameters to calibrate
- obtained from historical data:
- rmean (describes long-term mean)

- obtained from calibration:
- a: speed of mean reversion
- σ : volatility

- obtained from historical data:
- Has analytic solution for the bond price P = E[ e-∫r(t)dt ]

Three factor model in FOREX:

spot + domestic/foreign rates

To replicate FX volatilities match

FX,mktwith FX,model

Θ(s) is a function of all model parameters: FX,d,f,ad,af

Hull-White is often coupled to another underlying

- 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

- 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 δ

- Classic commodities model
- 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

- Very similar to interest rate modeling
- Analysis based on combining techniques
- Calculate implied convenience yield from observed future prices

Miltersen extension:

Time-dependent parameters

This model adds a new element to the stochastic models: jumps in spot

Motivated by real historic data

Disadvantages

Risk cannot be eliminated by delta-hedging as in BS

Hedging strategy is not clear

Advantages

- Can produce smile
- Adds a realistic element to dynamics
- Has exact solution for vanillas

Extra term to the Black-Scholes process:

- If jump does not occur
- If jump occurs
Then,

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 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 jump size Y is lognormally-distributed,
- The model has solution a weighted sum of Black-Scholes formulas
- σn , rn , λ’ are functions of σ,r and the jump-statistics given by η, γ

- The model is able to produce a smile effect

- 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…
- Difficult to implement
- Hard to calibrate
- Computationally inefficient

- Vanna-Volga is an alternative pricing “recipie”
- Easy to implement
- No calibration needed
- Computationally efficient

- But…
- It is not a rigorous model
- Has no dynamics

- The vol-sensitivities
Vega Vanna Volga

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

- Construct portfolio of 3 vanilla-instruments which

- 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

K25ΔC

KATM

K25ΔP

K25ΔC

ATM Straddle

25ΔRisk-Reversal

25ΔButterfly

RR carries mainly Vanna BF carries mainly Volga

- 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:
- solve for the weights:

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

- 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)

- F Bossens, G Rayee, N Skantzos and G Delstra

- Local Stochastic Vol model
- Jump-vol model
- Bates model

- Model that results in both a skew (local vol) and a convexity (stochastic vol)
- For σ(St,t) = 1 the model degenerates to a purely stochastic model
- For ξ=0 the model degenerates to a local-volatility model
- Calibration: hard
- Several calibration approaches exist, for example:
- Construct σ(St,t) that fits a vanilla market,
- Use remaining stochastic parameters to fit e.g. a liquid exotic-option market

- 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
- Calibrate to vanilla prices using the bumping parameter and the probability p

- Stochastic vol model with jumps
- 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

Local Vol Heston Vanna-Volga Multifactor Local-Stoch Vol

Pros

Cons

- 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

- 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

- nbr barriers
- Type of underlying
- Maturity
- mkt conditions

Monte Carlo

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

PDE

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

Based on discounted average payoff over realizations of spot:

Outline of Monte Carlo simulation

- For each path:
- At each time step till maturity
- Draw a random number from Normal distribution N(0,T)
- Update spot

- Calculate payoff for this path

- At each time step till maturity
- Calculate average payoff across all paths

Partial Differential Equation (PDE)

Based on alternative formulation of option price problem

Idea is to rewrite it in discrete terms, e.g. with t+=t+Δt, S+=S+ΔS

Apply payoff at maturity and solve PDE backwards till today

Spot

S0

K

time

today

maturity

- Random numbers
- Barriers and hit probability
- Simulating american-exercise options
- Likelihood ratio method

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

- 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

- 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

Gaussian cumulative function

homogenous numbers form [0,1]

1

Gaussian probability function

0

Non-homogenous numbers in (-∞ ∞)

“Peak” implies that more points should be sampled from here

Higher density of points here

- 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
- The calculation of the Greeks should differ only in the “bumped” param

, 2)

1.000

0.900

0.800

0.700

0.600

0.500

0.400

0.300

0.200

0.100

0.000

1.000

0.000

0.200

0.400

0.600

0.800

Plot pairs of columns

Draw (n x m) table of Sobol’ numbers

(1,2)(10,20)

Nbr Steps

Nbr Paths

(13,40)(20,881)

Non-uniform filling for large dimensions!

Payoff at maturity is alive if

Barrier A has not been hit

Barrier B has been hit

- Consider a (slightly) complex barrier pattern

- There is analytic expression for “survival probability”
=probability of not hitting

- We rewrite the pattern in terms of “not-hitting” events:
- 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)

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])

- When is it optimal to exercise the option?
- 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

S0

K

today

today

t

maturity

- 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

- 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

- 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

* CF=(Sthis path(T)-K)+

- 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)

- 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
- 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

E(S)

Y

S

- 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)

- Callables are priced with the same idea

- 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)

- Callables are priced with the same idea

- 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,

- This requires at least 12 Monte Carlo runs for all Greeks !
- Not ideal for impatient traders

- 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

- Consider an exotic option with a path-dependent payoff
- Its price will depend on all spots in the path
- PDF: probability density function of the spot
- zi the Gaussian random number used to make the jump Si-1 Si

- Probsurv the total survival probability for the spot path (given some barrier levels)
- For explicit expressions for the surv.prob. of KO or DKO see previous slides

- Sensitivity with respect to a parameter α (=spot, vol, etc)
- This is simple derivatives over analytic functions (see previous slide)!
- For example,
- Delta becomes the new payoff
- To be priced with the same spot path as the Payoff itself
- Similarly for other Greeks: more lengthy expressions but doable!

- 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