1.07k likes | 1.29k Vues
Computational Finance. Zvi Wiener 02-588-3049 http://pluto.mscc.huji.ac.il/~mswiener/zvi.html. Plan. 1. Introduction, deterministic methods. 2. Stochastic methods. 3. Monte Carlo I. 4. Monte Carlo II. 5. Advanced methods for derivatives. Other topics:
E N D
Computational Finance Zvi Wiener 02-588-3049 http://pluto.mscc.huji.ac.il/~mswiener/zvi.html Bank Hapoalim
Plan 1. Introduction, deterministic methods. 2. Stochastic methods. 3. Monte Carlo I. 4. Monte Carlo II. 5. Advanced methods for derivatives. Other topics: queuing theory, floaters, binomial trees, numeraire, ESPP, convertible bond, DAC, ML-CHKP. CF1
Linear Algebra 1 -2 1 Vectors {1, 1}, {-2, 1} rows or 1 -2 columns 1 1 CF1
Linear Algebra CF1
Basic Operations 1 2 3 2 + -1 = 1 -2 1 -1 1 3 3 2 = 6 2 6 CF1
Linear Algebra vector Vectors form a linear space. Zero vector Scalar multiplication CF1
Linear Algebra Matrices also form a linear space. matrix Zero matrix Unit matrix CF1
Linear Algebra Matrix can operate on a vector How does zero matrix operate? How does unit matrix operate? CF1
Linear Algebra Transposition of a matrix A symmetric matrix is A=AT for example a variance-covariance matrix. CF1
Linear Algebra Matrix multiplication CF1
Scalar Product a is orthogonal to b if ab = 0 CF1
Linear Algebra Scalar product of two vectors Euclidean norm CF1
Determinant Determinant is 0 if the operator maps some vectors to zero (and can not be inverted). CF1
Linear Algebra • Matrix multiplication corresponds to a consecutive application of each operator. • Note that it is not commutative! ABBA. • Unit matrix does not change a vector. • An inverse matrix is such that AA-1=I. CF1
Linear Algebra • Determinant of a matrix ... • A matrix can be inverted if det(A)0 • Rank of a matrix • Matrix as a system of linear equations Ax=b. • Uniqueness and existence of a solution. • Trace tr(A) – sum of diagonal elements. CF1
Linear Algebra • Change of coordinates C-1AC. • Jordan decomposition. • Matrix power Ak. • Matrix as a quadratic form (metric) xTAx. • Markov process. • Eigenvectors, eigenvalues Ax=x, optimization. CF1
Problems Check how the following matrices act on vectors: CF1
Simple Exercises • Show an example of ABBA. • Construct a matrix that inverts each vector. • Construct a matrix that rotates a two dimensional vector by an angle . • Construct a covariance matrix, show that it is symmetric. • What is mean and variance of a portfolio in matrix terms? CF1
Examples • Credit rating and credit dynamics. • Variance-covariance model of VaR. • Can the var-covar matrix be inverted • VaR isolines (the ovals model). • Prepayment model based on types of clients. • Finding a minimum of a function. CF1
Calculus • Function of one and many variables. • Continuity in one and many directions. • Derivative and partial derivative. • Gradient and Hessian. • Singularities, optimization, ODE, PDE. CF1
Linear and quadratic terms $ x CF1
Taylor series CF1
Variance-Covariance Gradient vector: CF1
Variance-Covariance For a short time period , the changes in the value are distributed approximately normal with the following mean and variance: CF1
Variance-Covariance Then VaR can be found as: CF1
Weighted Variance covariance Volatility estimate on day i based on last M days. CF1
Weighted Variance covariance Covariance on day i based on last M days. It is important to check that the resulting matrix is positive definite! CF1
Positive Quadratic Form For every vector x a we have x.A.x > 0 Only such a matrix can be used to define a norm. For example, this matrix can not have negative diagonal elements. Any variance-covariance matrix must be positive. CF1
Positive Quadratic Form Needs["LinearAlgebra`MatrixManipulation`"]; ClearAll[ positiveForm ]; positiveForm[ a_?MatrixQ ] := Module[{aa, i}, aa = Table[ Det[ TakeMatrix[ a, {1, 1}, {i, i}] ], {i, Length[a]}]; { aa, If[ Count[ aa, t_ /; t < 0] > 0, False, True]} ]; CF1
Stochastic (transition) Matrix Used to define a Markov chain (only the last state matters). A matrix P is stochastic if it is non-negative and sum of elements in each line is 1. One can easily see that 1 is an eigenvalue of any stochastic matrix. What is the eigenvector? CF1
Markov chain • credit migration • prepayment and freezing of a program CF1
Stochastic (transition) Matrix Theorem: P0 is stochastic iff (1,1,…1) is an eigenvector with an eigenvalue 1 and this is the maximal eigenvalue. If both P and PT are stochastic, then P is called double stochastic. CF1
Cholesky decomposition The Cholesky decomposition writes a symmetric positive definite matrix as the product of an uppertriangular matrix and its transpose. In MMA CholeskyDecomposition[m] CF1
Generating Random Samples We need to sample two normally distributed variables with correlation . If we can sample two independent Gaussian variables x1 and x2 then the required variables can be expressed as CF1
Generating Random Samples We need to sample n normally distributed variables with correlation matrix ij, ( >0). Sample n independent Gaussian variables x1…xn. CF1
ODE CF1
ODE CF1
Bisection method f If the function is monotonic, e.g. implied vol. x CF1
Newton’s method f x2 x3 x x1 CF1
Solve and FindRoot Solve[ 0 = = x2- 0.8x3- 0.3, {x}] {{x -> -0.467297}, {x ->0.858648 -0.255363*I}, {x -> 0.858648 + 0.255363*I}} FindRoot[ x2 + Sin[x] - 0.8x3 - 0.3, {x, 0,1}] {x -> 0.251968} CF1
Max, min of a multidimensional function • Gradient method • Solve a system of equations(both derivatives) CF1
Gradient method CF1
Level curve of a multivariate function ContourPlot[ x^2+y^3, {x,-2,2}, {y,- 2,2}] ContourPlot[ x^2+y^3, {x,-2,2}, {y,- 2,2}], Contours->{1 ,-0.5}, ContourShading->False]; CF1
ContourPlot[ x^2+y^3, {x,-2,2}, {y,- 2,2}], Contours->{1 ,-0.5}, ContourShading->False]; CF1
Example Consider a portfolio with two risk factors and benchmark duration of 6M. The VaR limit is 3 bp. and you have to make two decisions: a – % of assets kept in spread products q – duration mismatch we assume that all instruments (both treasuries and spread) have the same duration T+q months. CF1