Welcome to Python / 1: |
Why Python? / 1.1: |
Python is a general-purpose high-level programming language / 1.1.1: |
Python integrates well with data analysis, visualisation and GUI toolkits / 1.1.2: |
Python 'plays well with others' / 1.1.3: |
Common misconceptions about Python / 1.2: |
Roadmap for this book / 1.3: |
The PPF Package / 2: |
PPF topology / 2.1: |
Unit testing / 2.2: |
doctest / 2.2.1: |
PyUnit / 2.2.2: |
Building and installing PPF / 2.3: |
Prerequisites and dependencies / 2.3.1: |
Building the C++ extension modules / 2.3.2: |
Installing the PPF package / 2.3.3: |
Testing a PPF installation / 2.3.4: |
Extending Python from C++ / 3: |
Boost.Date_Time types / 3.1: |
Examples / 3.1.1: |
Boost.MultiArray and special functions / 3.2: |
NumPy arrays / 3.3: |
Accessing array data in C++ / 3.3.1: |
Basic Mathematical Tools / 3.3.2: |
Random number generation / 4.1: |
N(.) / 4.2: |
Interpolation / 4.3: |
Linear interpolation / 4.3.1: |
Loglinear interpolation / 4.3.2: |
Linear on zero interpolation / 4.3.3: |
Cubic spline interpolation / 4.3.4: |
Root finding / 4.4: |
Bisection method / 4.4.1: |
Newton-Raphson method / 4.4.2: |
Linear algebra / 4.5: |
Matrix multiplication / 4.5.1: |
Matrix inversion / 4.5.2: |
Matrix pseudo-inverse / 4.5.3: |
Solving linear systems / 4.5.4: |
Solving tridiagonal systems / 4.5.5: |
Solving upper diagonal systems / 4.5.6: |
Singular value decomposition / 4.5.7: |
Generalised linear least squares / 4.6: |
Quadratic and cubic roots / 4.7: |
Integration / 4.8: |
Piecewise constant polynomial fitting / 4.8.1: |
Piecewise polynomial integration / 4.8.2: |
Semi-analytic conditional expectations / 4.8.3: |
Market: Curves and Surfaces / 5: |
Curves / 5.1: |
Surfaces / 5.2: |
Environment / 5.3: |
Data Model / 6: |
Observables / 6.1: |
LIBOR / 6.1.1: |
Swap rate / 6.1.2: |
Flows / 6.2: |
Adjuvants / 6.3: |
Legs / 6.4: |
Exercises / 6.5: |
Trades / 6.6: |
Trade utilities / 6.7: |
Timeline: Events and Controller / 7: |
Events / 7.1: |
Timeline / 7.2: |
Controller / 7.3: |
The Hull-White Model / 8: |
A component-based design / 8.1: |
Requestor / 8.1.1: |
State / 8.1.2: |
Filler / 8.1.3: |
Rollback / 8.1.4: |
Evolve / 8.1.5: |
Exercise / 8.1.6: |
The model and model factories / 8.2: |
Concluding remarks / 8.3: |
Pricing using Numerical Methods / 9: |
A lattice pricing framework / 9.1: |
A Monte-Carlo pricing framework / 9.2: |
Pricing non-callable trades / 9.2.1: |
Pricing callable trades / 9.2.2: |
Pricing Financial Structures in Hull-White / 9.3: |
Pricing a Bermudan / 10.1: |
Pricing a TARN / 10.2: |
Hybrid Python/C++ Pricing Systems / 10.3: |
nth_imm_of_year revisited / 11.1: |
Exercising nth_imm_of_year from C++ / 11.2: |
Python Excel Integration / 12: |
Black-scholes COM server / 12.1: |
VBS client / 12.1.1: |
VBA client / 12.1.2: |
Numerical pricing with PPF in Excel / 12.2: |
Common utilities / 12.2.1: |
Market server / 12.2.2: |
Trade server / 12.2.3: |
Pricer server / 12.2.4: |
Appendices |
Python / A: |
Python interpreter modes / A.1: |
Interactive mode / A.1.1: |
Batch mode / A.1.2: |
Basic Python / A.2: |
Simple expressions / A.2.1: |
Built-in data types / A.2.2: |
Control flow statements / A.2.3: |
Functions / A.2.4: |
Classes / A.2.5: |
Modules and packages / A.2.6: |
Conclusion / A.3: |
Boost.Python / B: |
Hello world / B.1: |
Classes, constructors and methods / B.2: |
Inheritance / B.3: |
Python operators / B.4: |
Enums / B.5: |
Embedding / B.7: |
Hull-White Model Mathematics / B.8: |
Pickup Value Regression / D: |
Bibliography |
Index |
Welcome to Python / 1: |
Why Python? / 1.1: |
Python is a general-purpose high-level programming language / 1.1.1: |
Python integrates well with data analysis, visualisation and GUI toolkits / 1.1.2: |
Python 'plays well with others' / 1.1.3: |
Common misconceptions about Python / 1.2: |