13

The usual technique of computing the mean and standard deviation of returns happens to coincide with the maximum likelihood estimate when the data are regularly spaced. However, when the data are not regularly spaced, you can still do a maximum likelihood estimate. It's just more computationally intensive than before. That is to say, assume you have ...


7

This answer only deals with obtaining higher frequency data from low frequency data. The second method is taken from the draft of a master thesis of a friend of mine, i.e. most of this is taken from an unpublished source. Jones (1998) propose an algorithm to this using something similar to Gibbs sampler to get the most likely parameter values for a ...


5

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 issues, you'd usually remove the following: Treasury bills: Because of market segmentation concerns, bills are usually excluded, while short-term coupon bonds are ...


4

I think you need to say something about what you want to do with the "filled in" series. If you're interested in statistical properties, the usual technique is maximum likelihood estimation using the EM algorithm. That gives you something like a completion of the missing values, but only in the context of the statistic being extracted -- that is, you're "not ...


3

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 \times v_1$ and $z_2 = T_2 \times v_2 \times v_2$. $$z_t = \frac{t-T_1}{T_2-T_1} \times (z_2-z_1) + z_1.$$ $$v_t = \sqrt{z_t / t} = 13.5343.$$ Your formula ...


3

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: crv = ql.PiecewiseLinearZero(2, ql.TARGET(), deposits + futures + swaps, ql.Actual365Fixed()) the curve linearly interpolates zero rates between nodes given by the maturities of the ...


3

Basic money markets arithmetic. Using day count convention ACT/ACT, 01 Dec 2016 to 13 Jan 2017 is 43 days, (43-30)/(60-30)*(2m Libor - 1m Libor)+(1m Libor) = 0.675163


3

There is no such thing as a "proper" interpolation of CDS spreads. The only criterium your interpolation must obey is the absence of arbitrage. Note that, assuming that $spread(3M) < spread(6M)$, $spread(4M)$ can take any value between $spread(3M)$ and $spread(6M)$ without creating an arbitrage opportunity (actually it can be even slightly less than $...


3

There are quite a few strategies you could take. Use models that are more resistant to noises. As others have already mentioned, parametric models such as Nelson-Siegel or Svensson may do the trick. I have also used Merrill Lynch Exponential Spline Model successfully (http://www.bankofcanada.ca/wp-content/uploads/2010/02/wp04-48.pdf). Change your objective ...


3

You must apply the E-M algorithm to an invariant (time-homogenous i.i.d. variable) such as log-returns -- not prices. The key to the E-M is is the simplifying assumption that the invariant (namely the distribution of returns) as well as the distribution of missings are i.i.d. Prices do not obey this property. The trick of assuming an i.i.d. invariant and ...


2

5 minutes is a very short time period! If you have access to real time data of Implied Volatility and transaction Volume of the underlying of your option than you can take a look to the following article: Volatility Forecasts, Trading Volume, and the ARCH versus Option-Implied Volatility Trade-off In this article, the authors use the information from ...


2

I believe that your problem can be formulated as: Find PD matrix that is as close as possible to a given PD matrix (result of some previous calibration, or the matrix computed using average hazard rate, or any other "target", or the penalty on non-smoothness) subject to the following constraints: The values that are given must be matched exactly ...


2

The best way is to interpolate in volatility space. The reason is because it is closer to the intrinsic pricing of the option, and it is less likely to produce an arbitrage. Like Alex C noted in the comment - prices are nonlinear function of inputs, and interpolating in them does not make sense. Inputs are "free", and interpolated value of inputs will likely ...


2

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 prices are 100. With this information in mind, you can linearly interpolate between these yields, or use a cubic spline to fill in rates at other tenors, ...


1

What you are interested in is called extrapolation. In other words, you want to "extend" your function $r$ for $t < t_0$ and $t > t_n$. What the author suggests on page 109, below equation (37), is to extrapolate "flat", that is: $$r(t) = r(t_n), \space \forall t > t_n$$ Setting $t_0 = 0$ does not require extrapolation for $t < t_0$ as time ...


1

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 surface, and in particular converting deltas into strikes. In particular beware that even the notion of ATM may have a different meaning depending on the ...


1

I don't recommend linear interpolation of DFs and the swap rates you are applying this to are either against 12M libor which is illiquid or you are not accounting for Quarterly or Semi-Annual floating sides. And what I'm going to suggest uses a single curve framework which is long outdated. But that being said and given the nature of what's been asked... ...


1

A few observations: the coupon yield curve is never going to be smooth, because a high coupon Treasury and a low coupon Treasury with the same maturity do not yield the same. That's because in an upward sloping yield curve, then one with the lower coupon has effectively a longer duration and therefore a higher yield. Secondly, recently issued Treasuries ...


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

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

If you have an analytical form of the CDF, you can simply take the first derivative to obtain the PDF (for a continuous distribution). If you have numerical data points representing a CDF, you can construct a numerical approximation to the first derivative by using a finite difference method. If you're going the numerical route, you should use at least a ...


1

The typical approach is to try to fit a ratings migration matrix to available rating transition data. If default rates are all you have then that's going to be difficult. Instead, I might try to fit a separate reduced form credit model on survival probability $P_\ell$ for each rating $\ell$ by fitting the function $$ P_\ell(T) = \exp\left( -\int_0^T h(t) ...


1

Assume we have $r(t)$ continuously compounded spot rate for maturity $t$. The price of the 2-year bond with semi-annual coupon $C$ is known to be $P$. We already have $r(0.5)$ and $r(1)$. We need $r(2)$ and $r(1.5) = f(r(1), r(2))$. Then $$ P = C [e^{-0.5 \times r(0.5)} + e^{-r(1)}+e^{-1.5 \times r(1.5)}] + (1+C)e^{-2 \times r(2)} $$ Using linear ...


1

A really simple and arbitrage free solution is to extrapolate flat volatility on the same moneyness. Let's say that you want an implied volatility for strike $K$ at time $t<t_1$, and $t_1$ is the first pillar on the surface. You look at the moneyness level $k=K/F_t$, then look for $K'$ to get the volatility at the same moneyness level of the first ...


1

http://uk.reuters.com/article/2012/11/27/efsf-bond-idUKL5E8MR6I220121127 Nov 27: The order book on the European Financial Stability Facility one-year syndicated issue is over EUR 5bn according to a bookrunner on the deal. The eurozone rescue fund opened books this morning via JP Morgan, Morgan Stanley and Natixis at guidance of 0.23% to 0.25% with pricing ...


1

A weekly series of low-frequency (monthly) variables is obtained using an interpolation, or “adjustment” with respect to a related series. The interpolation of a time-series by means of a related series involves two steps: choosing the “benchmark” series, and then interpolating the wanted series using the related series. The related series is chosen so that ...


1

The basic rule to keep causality during resampling/interpolation of financial data is not to use information from future. You need to use stepwise interpolation by "dragging" the last known information along new samples until the next monthly update. You must know when exactly these monthly values where sampled/calculated. This guarantees causality, but ...


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