5

SOLUTION: Let $r_t$ be the log-return at time $t$, and $\hat{r}_t$ be the predicted log-return from the regression model. Initialize $loglik(0:T)=0$,$\epsilon_1=0$, $\sigma_1 = 0$, $\mu=U(0,1)*0.0001,\phi=U(0,1)*0.01$, $\alpha_0=U(0,1)*0.00002,\alpha_1=U(0,1)*0.01,\beta_1=0.9 + U(0,1)* 0.01$, $B=10,000$ For $b$ = 1 to $B$ $\quad$ For $t$ = 2 to $T$: $ \...


4

Unless all of your yields are par yields (yield of bonds trading at par), you'll get very unreliable results if you fit your curve using yields alone. This is because yields can be distorted by the coupon effect – given two bonds maturing on the same day and assuming the yield curve is upward sloping, a higher coupon bond will always have lower yield. What ...


3

Why don't you just use SSVI (https://arxiv.org/abs/1204.0646) or maybe even eSSVI (https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2971502)? With this parametric approaches an arbitrage free volatility surface is guaranteed and you only need a handfull of parameters. Gatheral and Jacquier even give you the calibration procedure which should be simple to ...


3

A curve is used to do calculations (e.g. discounting of cash flows) as of a given trade date. Bootstrapping a single curve for two different trade dates does not make sense. With the first set of data you should bootstrap an OIS curve for the 2017-02-09 trade date, with the second set of data you should bootstrap an OIS curve for the 2017-02-10 trade date.


3

This is a relative value application of equilibrium term structure models. There are really two steps in this exercise: Step 1 is a calibration procedure that gets you the model "parameters" (i.e., the mean reversion parameters, volatilities/correlation parameters, etc.). This is usually done using historical interest rate dat and either MLE or Kalman ...


3

For the US Treasury market, zero coupon bonds are traded and they are called STRIPS. You can access them through "S GOVT" (coupon Strips) or "SP GOVT" (principal strips) on BBG. With regard to relative value trading, it's actually pretty rare that we fit models to zeros, because a lot of them are not liquid and trade differently from their coupon ...


3

It could be much more simple: if you use the method of moments (MM) then you estimate the mean and the variance and for example the kurtosis of your sample. Then you fit the parameters to these statistics. Alternatively you use maximum-likelihood (MLE). For MM: from wikipedia you get the mean and the variance. In your notation you can fit $b = \bar{r}$ so $...


2

I think the following two questions and related answers should help in answering the question: Why use swap-rates in a yield curve? and Is there an Australian Interbank Rate? Essentially to derive funding curves you gotta use what is left with the constraint that the source instrument has to be liquid enough and closely enough reflect true market ...


2

It really depends on how/where do you plan to use final values. I would not use extrapolation since it will ignore market realities. Forward rates across long end tend to be increasing while dumb extrapolation might give you the opposite result. In case of treasuries one can use treasury and swap spread and while you do not have 50 Y treasuyy one can find ...


2

It depends on the market you're interested in and what the curve is used for. To build the USD swap curve, for example, you've got a ton of information available from actively traded market instruments – fed funds futures (monthly), OIS (even finer details at the front end), Eurodollar futures (quarterly), basis swap, etc. All of these should be ...


2

Can you not just measure the moments of your data, and then use them to find mu and v? where the second simplifies to


2

Note: It is computationally simple to determine the volatility of any given return series, so in fact there may be no need for this approximation. Let's start with the annualized return $r_a$, which is $$r_a = \sqrt[T]{1+R_t}-1$$ where $R_t$ is the cumulative return over the whole period $[0,T]$. Consider the Taylor-approximation $$log(1+y) = y - \frac{1}{...


2

Nelson-Siegel and models in its succession (e.g. Diebold-Li) attempt to fit the yield curve as you describe. The reason for the development and research of these models answers your first additional question. The yield curve can take different shapes and the models attempt to model rising, inverted, flat, and humped yield curves. For your second question, ...


2

Creating yield curves: Pick one fitting method and use it throughout e.g. a cubic spline interpolation Determine an approach that allocates bond securities in the dataset to a yield curve subset. e.g. should all Italian govt instruments go to a single curve? Can I further split by floater, linker, ccy, etc. It is as simple as that. Your data subset is: ...


1

@Lisa Ann: Typing an answer to my own post, mostly to share my "findings" for the benefit of anyone coming across this. Looking at the paper of Brigo, Mercurio and Rapisarda, they fit using a single forward price. This comes at the expense of being able to fit only smiles, where the minimum is ATMF. I asked why, and got the answer that choosing different ...


1

This is just an add-on to @rrg's answer. The first thing I recommend that you do is to talk to your manager and get a better grasp of the project scope (which you may have done already). More specifically, are they asking you to build issuer level curves (doesn't sound that way), or sector curves (more likely). How do they plan to define the sectors (by ...


1

if you use existing on the run bond yield for analysis. There are at least three ptoblems. The duration is change slightly every day on the run roll cause a yield jump actual yield influenced a lot by liquidy


1

I'm just guessing, but they might be talking about the continuity of time series. The chart below shows the modified durations of 10-year par bonds and rolling 10-year on-the-run Treasuries. As you can see, they have the same trends (as expected), but you don't have those jumps (caused by new on-the-run 10-year issues being issued).


1

RMSE (root mean squared error) is by far the most commonly used quantitative measure for the "goodness-of-fit" of a yield curve. It is simply $$ \text{RMSE} = \sqrt{\frac{\sum_{i=1}^n (P_i - \hat{P}_i)^2}{n}}, $$ where $P_i$ is the market price (or yield) of an input instrument, and $\hat{P}_i$ is its price calculated using the curve. RMSE is usually the ...


1

There seems to be a problem in the QuantLib code with using a face amount other than 100. If you initialize your bond helpers with face amount = 100 and rescale your price accordingly, the fit succeeds. I suggest you file an issue at https://github.com/lballabio/quantlib/issues so that this can be fixed. In the meantime, you can rescale your prices during ...


1

The new curve will look a bit strange no matter how you do it, although 1bp is not such a big move that will render it "useless". Two ways of doing it, as you point out, are (a) use a spline method, which will do whatever it will do, including moving some points that are far away from the point in question, and (b) do some linear interpolation, as you ...


1

You might have a look at the "sn" R package in CRAN: Link to standard R documentation for CRAN package sn It has a skewed t distribution implemented as well as an MLE function. Alternatively, a simple approach (which leads to a slightly ugly looking distribution) would be to model the positive returns and negative returns separately. In pseudocode: 1) ...


1

i think the fitdistrplus library in R could help you with this: fitdist(data, distr, method = c("mle", "mme", "qme", "mge"), start=NULL, fix.arg=NULL, discrete, keepdata = TRUE, keepdata.nb=100, ...) # for student t fitdistr(x, "t", start = list(m=mean(x),s=sd(x), df=3), lower=c(-1, 0.001,1))


1

Why do you think this is not apropriate? Matlabs documentation for 1-D Data interpolation states that interpl1 using method spline is the right way to go: Spline interpolation using not-a-knot end conditions. The interpolated value at a query point is based on a cubic interpolation of the values at neighboring grid points in each respective dimension. ...


1

As an additional (simple) solution I would use the probability integral transform (PIT) of the returns with respect to the generalized pareto distribution. Under the null hypothesis that the distribution is correctly specified, outcomes of the PIT should be independent uniform U[0; 1] random variables. Then you can use traditional independence tests.


1

I don't know if there are any additional issues that arise with using goodness off fit with a piece-wise function. When I have fit generalized pareto distributions to series like financial market returns, I have noticed that it is common to differences between the estimated distribution and observed returns at the cutoff points. This is going to be the main ...


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