Skip to main content
7 votes
Accepted

Quantlib-Python: use zero rates to get the originally bootstrapped curve

To retrieve the original curve, you need to use the same key tenors of the original curve and with the same interpolation. For instance, when you create the original curve as: ...
Luigi Ballabio's user avatar
7 votes

Why use moneyness as an axis on a volatility surface

First off, there are different types of moneyness one can use when constructing a volatility surface. Each have their own advantages. Absolute-moneyness: using absolute spot-strike comparison as a ...
Transcending's user avatar
6 votes

Interpolation of $\mu(t,X(t))dt+\sigma(t,X(t))dW(t)$

That is a tricky question because interpolation seems to be ok if you need one point $\tau$ between $t_k$ and $t_{k+1}$ but it is not. The difficulty arise a direct way if you want two points inside $[...
lehalle's user avatar
  • 12.4k
5 votes

Best method for interpolating yield curve? [Multiple questions]

Typically, the yield curve used for performing relative value analysis should be built from off-the-run bonds. Different vendors select different bonds, but starting with all outstanding Treasury ...
Helin's user avatar
  • 11.8k
5 votes

Why use moneyness as an axis on a volatility surface

If you use constant strike, the moneyness changes as the underlying changes. Out of the money equity options tend to trade at a premium to at the money options (smiles/skew). Therefore, the ...
AlRacoon's user avatar
  • 6,642
5 votes
Accepted

Graeme West's VBA code Monotone Convex

As mentioned by Bob in the comments, if you follow the github issue, you'll get the link to the Graeme West's Excel sheet for monotone convex interpolation. The link is now dead, but a quick search on ...
autoencoder's user avatar
4 votes

Interpolation and extrapolation of Discount factors

Be careful with various naive smooth interpolations of discount factors that are easy to screw up and may lead to unrealistic rates between the nodes. But your choice depends on your planed usage. If ...
Dimitri Vulis's user avatar
3 votes
Accepted

Difference of polynomial interpolation for volatility smile

This is not really an answer but it's too long for a comment. The lagrange / cublic spline interpolation is very sensitive to the input data, given slightly different input data it can produce vastly ...
emot's user avatar
  • 886
3 votes

Quantlib ZeroCurve interpolation

The data stored in the object is adjusted such that compounding is Continuous and frequency is NoFrequency. The C++ source code ...
mmencke's user avatar
  • 845
3 votes
Accepted

How does Bloomberg arrive at stub rate for swaps/floaters?

Basic money markets arithmetic. Using day count convention ACT/ACT, 01 Dec 2016 to 13 Jan 2017 is 43 days, ...
rrg's user avatar
  • 979
3 votes
Accepted

What techniques can be used to get the missing maturities from the CMT yields?

The CMT yields published by the Fed/US Treasury are par yields calculated using a cubic spline model. In other words, these are the yields to maturity as well as coupon rates on bonds whose theoretic ...
Helin's user avatar
  • 11.8k
3 votes
Accepted

Excel Add-In Volatility Interpolation I am trying to Understand

They are lineary interpolating in total variance. I find the exact same answer as your add-in function returns. In other words the interpolation is made wrt time and between $z_1 = T_1 \times v_1 \...
Ivan's user avatar
  • 1,396
3 votes

QuantLib: How to bootstrap Yield Curve using 3M futures - Python

The theory and a worked-out example are in Ametrano and Bianchetti, Everything You Always Wanted to Know About Multiple Interest Rate Curve Bootstrapping but Were Afraid to Ask. Recently I reproduced ...
Luigi Ballabio's user avatar
3 votes
Accepted

Zero Curve Interpolation Does Not recover Node point input rates

For historical reasons, the curve implementation goes through discount factors to calculate zero rates, no matter what the underlying representation is; see https://github.com/lballabio/QuantLib/blob/...
Luigi Ballabio's user avatar
2 votes

Getting option volatility off vol surface

See the paper "FX Volatility Smile Construction, Dimitri Reiswich and Uwe Wystup" http://janroman.dhis.org/finance/FX/FX%20Volatility%20Smile.pdf for a comprehensive construction of the FX volatility ...
Antoine Conze's user avatar
2 votes

Simple approach to interpolate option surface

As has been said in the comments, unless you are working with an asset class that has a second dimension, i.e, swaptions where you have not only the option expiry but also the underlying tenor, a ...
David Duarte's user avatar
  • 5,835
2 votes

Interpolating a yield from two yields (giving more weight to one of the two)

If these are risky (e.g., corporate) bullet bonds, then I would not interpolate the yield directly, because their yield has two distinct components: a risk-free rate and an additional spread (to ...
Dimitri Vulis's user avatar
2 votes

How do you estimate the volatility of a sample when points are irregularly spaced?

A simple estimate of the volatility $\sigma$ of an asset given $N$ samples of asset prices $S_i$ at times $t_i$ is: $$ \sigma^2 = \frac{1}{N} \sum_{i=1}^{N} \frac{\log(S_i / S_{i-1})^2}{t_i - t_{i-1}}...
JoseOrtiz3's user avatar
2 votes
Accepted

How do people 'lookup' values from calculated surfaces?

A linear interpolation in 2d is not much more complicated that in 1d: \begin{align} \color{red}{f(x,y_i)}&=\frac{f(x_i,y_i)(x_{i+1}-x)+f(x_{i+1},y_i)(x-x_i)}{x_{i+1}-x_i}\,,\\[3mm] \color{red}{f(x,...
Kurt G.'s user avatar
  • 2,043
2 votes
Accepted

What kind of interpolation is this?

I don't understand why they not just use $$\tag{1} D=\sigma^2(t_k)(t_{k+1}-t_k) $$ which leads to the theoretically correct variance of $W_t-W_{t_k}$. Rewriting (3) gives for the increment over the ...
Kurt G.'s user avatar
  • 2,043
2 votes

QuantLib: How to bootstrap Yield Curve using 3M futures - Python

If you want a really easy answer, you can do the following: Convert your futures prices into rates e.g. $100 - price = rate$. Construct a LineCurve in ...
Attack68's user avatar
  • 11k
2 votes

Curve optimization to predict monetary policy path (OIS Curve)

The idea behind this is no different to the other currencies. I will just make up some data. First assume a Curve that has constant overnight forward rates between ...
Attack68's user avatar
  • 11k
2 votes

Cubic Spline Interpolation partial derivative to the point

In solving the coefficients of a spline you are solving a collocation equation (linear systemm). In your case you are solving the equation, $$ \mathbf{A(t) c} = \mathbf{\hat{z}} \quad \implies \quad \...
Attack68's user avatar
  • 11k
2 votes

When using quantlib's swaphelper to build a curve, is the fixing lag considered?

The helper doesn't support a custom fixing lag, but for standard quoted swaps (the ones you would use to create a curve) the fixing lag you're seeing is designed to cancel out with the index own ...
Luigi Ballabio's user avatar
1 vote

Quantlib Piecewise CubicZero Bond Curve Bootstrap

You can find the documentation for the general Cubic Interpolation C++ implementation here: https://www.quantlib.org/reference/class_quant_lib_1_1_cubic_interpolation.html The default values are ...
mmencke's user avatar
  • 845
1 vote

How do I calculate Hull White's Theta from the discount curve?

In practical situations you will never know $P^M(0,t\pm\epsilon)$ for a continuum of $t$ and $\epsilon\,.$ In other words, $\theta$ will practically always depend on an interpolation method between ...
Kurt G.'s user avatar
  • 2,043
1 vote
Accepted

Volatility surface interpolation for Black-Scholes delta hedging

A cubic polynomial curvature would be the most simple one.Otherwise,many practitioners are actually using a Gaussian process interpolation,which is more sophisticated.
lays's user avatar
  • 446
1 vote

Interpolating a yield from two yields (giving more weight to one of the two)

If you has a lot of points with wide matuirities you can use the specific Nelson–Siegel–Svensson (NSS) model. It closely follow academic researches for short-, mid- and long-term structures. Real ...
Whispered's user avatar
1 vote

Interpolating a yield from two yields (giving more weight to one of the two)

Linear interpolation. See, for e.g., https://en.wikipedia.org/wiki/Linear_interpolation. Easily implemented in Excel.
user42108's user avatar
  • 2,272
1 vote

Getting a daily forward OIS rate curve with QuantLib in Python

The problem is that in the first step, you are only fetching the forwards for the curve nodes. You could make a daily schedule and get forwards directly from the curve for each date. ...
David Duarte's user avatar
  • 5,835

Only top scored, non community-wiki answers of a minimum length are eligible