Fast Matrixwise Black-Scholes Implied Volatility
by Mark Whirdy
23 Apr 2013
(Updated 01 May 2013)
Calculates Black-Scholes Implied Volatility for Full Surface at High Speed
|
Watch this File
|
| File Information |
| Description |
Calculates Black-Scholes Implied Volatility Surface for an Option Price Matrix.
Uses Li's Rational Function Approximator for the Initial Estimate, followed by
3rd-Order Householder's Root Finder (i.e. using vega,vomma & ultima) for greater
convergence rate and wider domain-of-convergence relative to Newton-Raphson. Both
Li's Approximator and the Root Finder are calculated matrix-wise (i.e.
fully vectorized) for increased efficiency. |
| Required Products |
MATLAB
|
| MATLAB release |
MATLAB 8.0 (R2012b)
|
|
Tags for This File
|
| Everyone's Tags |
|
| Tags I've Applied |
|
| Add New Tags |
Please login to tag files.
|
| Updates |
| 24 Apr 2013 |
Fixed bug in Put-Call Parity line
P = P + S.*exp(-q.*T) - K.*exp(-r.*T); % Convert Put to Call by Parity Relation |
| 25 Apr 2013 |
Added Comments |
| 01 May 2013 |
Re-factoring of anonymous functions in Householder root solver to re-calculate derivatives & for only those points which have not converged. This increases speed by 20-50% (depending on particular surface). |
|
Contact us