Blog
-
The Black-Scholes model in QuantLib
Today’s post was originally published as an article in the May 2023 issue of Wilmott Magazine, which was dedicated to the 50th anniversary of the Black-Scholes model.
-
Handling dependencies in QuantLib
Today’s post on handles was originally published as an article in the March 2023 issue of Wilmott Magazine.
-
Cross-currency swaps
From time to time, a question on the QuantLib mailing list or, as in this case, on the Quantitative Finance StackExchange causes me to answer with a notebook.
-
A QuantLib-Python companion for the Ametrano-Bianchetti paper
It recently occurred to me that it’s 10 years since the paper by F. M. Ametrano and M. Bianchetti, Everything You Always Wanted to Know About Multiple Interest Rate Curve Bootstrapping but Were Afraid to Ask, was published on SSRN. Given the nice, round anniversary, I’m publishing here a companion Jupyter notebook that reproduces the calculations in the paper.
-
Payment-in-kind bonds
This post was inspired by a question by Dagur Gunnarsson (thanks!) on the QuantLib mailing list. How do you price a bond that adds the coupon payment to its notional after each period?
-
The code from my Wilmott articles is now available
-
A QuantLib series on Wilmott magazine
-
Other QuantLib blogs
-
LIBOR fallback calculation
-
Oh, bother: email subscription is being turned off
-
Leaving C++03: for real this time
-
A few news items
-
QuantLib in 2020 and beyond
-
Implementing QuantLib is now available in Japanese
-
QuantLib in the last decade
-
Implementing QuantLib is now available in Chinese
-
A quick look at the QuantLib 1.16 release
-
A quick look at the QuantLib 1.15 release
-
Introductory training on QuantLib in Python
-
Leaving C++03: compiler compatibility so far
-
QuantLib notebook: using curves with different day count conventions
-
QuantLib notebook: discount margin calculation
-
Leaving C++03: more STL classes
-
QuantLib notebook: a glitch in forward rates
-
Leaving C++03: a recap
-
QuantLib notebook: more mischievous conventions
-
A quick look at the QuantLib 1.14 release
-
QuantLib notebook: mischievous bond conventions
-
QuantLib notebook: building irregular bonds
-
QuantLib notebook: pricing on a range of days
-
The QuantLib Python Cookbook is almost done
-
Leaving C++03: tooling, part 2
-
Leaving C++03: tooling, part 1
-
Leaving C++03: deprecated standard features
-
A quick look at the QuantLib 1.13 release
-
QuantLib notebook: dangerous day-count conventions
-
Leaving C++03: automation, part 3
-
Leaving C++03: automation, part 2
-
Leaving C++03: automation, part 1
-
Leaving C++03: standard smart pointers
-
Leaving C++03: an experiment
-
The benefits of procrastination
-
A quick look at the QuantLib 1.12 release
-
QuantLib notebook: rho for the Black process
-
The slides from QLUM17 are available
-
Screencast: my talk at the QuantLib user meeting 2017
-
A quick look at the QuantLib 1.11 release
-
A look back at the Implementing QuantLib series
-
Odds and ends: the Visitor pattern
-
Odds and ends: the Singleton pattern
-
Odds and ends: the Observer pattern
-
Odds and ends: disposable objects
-
Odds and ends: linear algebra
-
Odds and ends: statistics
-
Odds and ends: solvers and optimizers
-
QuantLib notebook: par and indexed coupons
-
Odds and ends: exercises and payoffs
-
A quick look at the QuantLib 1.10 release
-
More tools: Travis CI, Codacy, and Codecov
-
A visual history of QuantLib
-
Chapter 8, part 13: finite-difference schemes and solvers
-
Chapter 8, part 12: initial, boundary, and step conditions
-
Test coverage in QuantLib
-
Numerical Greeks
-
'Tis the season
-
Report from the QuantLib user meeting in Düsseldorf
-
Chapter 8, part 11: Black-Scholes finite-difference operators
-
Chapter 8, part 6.5: time-dependent operators
-
A quick look at the QuantLib 1.9 release
-
QuantLib notebook: market quotes
-
Odds and ends: market quotes
-
Chapter 8, part 10: basic finite-difference operators
-
QuantLib and SWIG
-
Chapter 8, part 9 of n: finite-difference iterators
-
Chapter 8, part 8 of n: finite-difference meshers
-
Chapter 8, part 7 of n: the new finite-difference framework
-
Report from the QuantLib user meeting in London
-
Translating QuantLib Python examples to C++
-
The ABCD of Interest Rate Basis Spreads
-
The QuantLib Python Cookbook is available
-
PSA: QuantLib User Meeting in London
-
A quick look at the QuantLib 1.8 release
-
New blog engine, old URL
-
QuantLib notebook: interest-rate sensitivities
-
Christmas break
-
Screencast: my talk at the QuantLib user meeting 2015
-
Report from the QuantLib user meeting in Düsseldorf
-
A quick look at the QuantLib 1.7 release
-
Chapter 8, part 6 of n: example, American option
-
Upcoming: QuantLib User Meeting 2015
-
QuantLib notebook: term structures and reference dates
-
Chapter 8, part 5 of n: finite-difference models
-
Chapter 8, part 4 of n: step conditions
-
MoneyScience Hangout available on YouTube
-
Chapter 8, part 3 of n: boundary conditions
-
PSA: Google Hangout
-
A quick look at the QuantLib 1.6 release
-
Chapter 8, part 2 of n: evolution schemes
-
Chapter 8, part 1 of n: the finite-differences framework.
-
An IPython notebook server with QuantLib on Docker
-
Odds and ends: interpolations
-
QuantLib notebook: duration of a floating-rate bond
-
Chapter 7, part 6 of 6: an example of tree-based engine
-
Chapter 7, part 5 of 6: tree-based lattices
-
Chapter 7, part 4 of 6: trinomial trees
-
Chapter 7, part 3 of 6: binomial trees
-
Chapter 7, part 2 of 6: examples of discretized assets
-
Chapter 7, part 1 of 6: the tree framework
-
Implementing QuantLib available from Leanpub
-
QuantLib notebook: numerical Greeks calculation
-
A quick look at the 1.5 release
-
Odds and ends: global settings
-
Quants Hub workshop available
-
Odds and ends: indexes
-
Report from the QuantLib user meeting in Düsseldorf
-
Odds and ends: date calculations
-
Announcement: QuantLib user meeting 2014
-
QuantLib notebook: implied term structures
-
Still on hiatus, and some news
-
Intermission: book update and summer schedule
-
Chapter 6, part 8 of 8: example
-
Chapter 6, part 7 of 8: Monte Carlo simulations
-
Chapter 6, part 6 of 8: Monte Carlo models
-
Chapter 6, part 5 of 8: path generators
-
QuantLib notebook: random numbers
-
Chapter 6, part 4 of 8: more processes
-
Chapter 6, part 3 of 8: the Black-Scholes process
-
Chapter 6, part 2 of n: stochastic processes
-
Chapter 6, part 1 of n: random-number generation
-
QuantLib notebooks
-
Still on hiatus
-
Screencast: term structures
-
Screencast: instruments and pricing engines
-
Chapter 4, part 5 of 5: cash-flow analysis
-
Chapter 4, part 4 of 5: generating cash-flow sequences
-
Chapter 4, part 3 of 5: coupon examples
-
Chapter 4, part 2 of 5: floating-rate coupons
-
Chapter 4, part 1 of 5: Cash flows and coupons
-
Chapter 3, part 7 of 7; interest-rate volatilities
-
Intermission: book update and holiday hiatus
-
Odds and ends: error reporting
-
The strange case of the changing implied term structure
-
Chapter 3, part 6 of n: volatility term structures
-
Screencast: my talk at the QuantLib User Meeting
-
Report from the QuantLib User Meeting
-
Intermission
-
Interlude: code archaeology
-
Chapter 3, part 5 of n: other term structures
-
Odds and ends: interest rates
-
Chapter 3, part 4 of n: adding z-spread to an interest-rate curve
-
Chapter 3, part 3 of n: bootstrapping an interest-rate curve
-
Chapter 3, part 2 of n: Yield term structures
-
Chapter 3, part 1 of n: Term structures
-
Odds and ends: basic types
-
Intermission: LaTeX style file and some musings.
-
Chapter 5, part 5 of 5: Model example
-
Chapter 5, part 4 of 5: Models and calibration
-
Chapter 5, part 3 of n: Model parameters
-
Chapter 5, part 2 on n: Example
-
Chapter 5, part 1 of n: Parameterized models and calibration
-
Odds and ends: smart pointers and handles
-
Chapter 2, part 4 of 4: Example
-
Chapter 2, part 3 of 4: Pricing engines
-
Chapter 2, part 2 of 4: Example
-
Chapter 2, part 1 of 4: Financial instruments
-
Interlude
-
The Plan of the Book
-
Introduction