Tag Info

Hot answers tagged

6

Your observations are pretty much correct. The groupings are because of the fine print "Note how I have expanded the drift and volatility terms at $t = T$; in the above these are evaluated at $r$ and $T$." on the same page (p.528). Basically, $w$ is a function of both $r$ and $t$. Since we want to use $w(r,T)$ instead of $w(r,t)$, we taylor expand ...


6

This is called on the run/off the run arbitrage, a type of convergence trade. The basic idea is that as the liquidity premium disappears for the on-the-run issue, the price will fall and converge to the price of previous issues. Here are a couple papers - http://people.stern.nyu.edu/lpederse/courses/LAP/papers/SearchBargaining/VayanosWeill.pdf ...


5

I assume that you are working in a single curve theory. While this theory used to do well, it is not adapted to today's market and — as Brian B pointed it out — you cannot get a useful information from swap rates alone. The swap rate $S(t)$ at $t$ for a given tenor $T$ and period $P$ is the fixed rate such that a swap starting at $t$ and ending at $t+T$ ...


5

I'm familiar with the library, but not with the way it is exported to R. Anyway: gearings are optional multipliers of the LIBOR fixing (some bonds might pay, for instance, 0.8 times the LIBOR) and spreads are the added spreads. In your case, the gearing is 1 and the spread is 0.0140 (that is, 140 bps; rates and spread must be expressed in decimal form). ...


4

There are two different issues at play here. One is that, of course, you want only the future cash flows to enter the calculation. This is taken care when you set the evaluation date to 6 months from today. In C++, you would say Settings::instance().evaluationDate() = today + 6*Months; I don't remember the corresponding function in QuantLibXL, but you ...


4

I believe it's correct. However, consider that it would be easy enough, and more clear, to create a new class (at least in C++; the task is more difficult if you also want to export it to Excel). The new instrument should only inherit from Bond and implement a constructor that builds the desired cash flows via a call to FixedLeg and another to IborLeg; you ...


4

Generally, there are few or no zero-coupon instruments traded in the market, especially for longer maturities. However, pricing of many derivatives relies on having a zero curve, so it becomes necessary to construct one using available instruments. Aside from derivatives, one can use a zero curve fitted to liquid bonds to price new or less liquid issues.


3

As @michipilli said, if $Z = 1+ as + bs^2 + cs^3$ (where I have substituted $T-t$ by $s$ for ease of notation and also suppressed the dependencies of $a$, $b$ and $c$) and $\log (1+\zeta) = \zeta - \frac{1}{2}\zeta^2 + \frac{1}{3}\zeta^3 + ...$ then, \begin{align*} \log Z &= (as + bs^2 + cs^3) - \frac{1}{2}(as + bs^2 + cs^3)^2 + \frac{1}{3}(as + ...


3

The Hull-White model can represents the risk free rate as a stochastic process, that is, in terms of expected return and volatility. The zero curve only gives you expected returns and you have to find a source to calibrate volatility, as FQuant told you. Common volatility sources used for this calibration are historical series of the zero curve or ...


3

The one-factor Hull-White model is given by $$dr(t) = (\theta(t) - \alpha\; r(t))\,dt + \sigma\, dW(t)\,\!.$$ The zero curves are only sufficient for the calibration of the parameter $\theta(t)$, which is given in terms of them by $$\theta\mathrm{(t)=}\frac{\partial f(0,t)}{\partial T}+\alpha f(0,t)+\frac{\sigma^2}{2a}(1-e^{-2\alpha t}),$$ where ...


3

You are missing the rates in your question you need to derive your DFs. The only difference between day count convention is how you adjust your rate to convert to the actual rate applicable between the date of the cash flow and the date to which you pv the future cf. Generally the following function applies: 1/((1+r/360)^360*T), where T is the time in ...


3

There are tons of quant related blogs out there, some of which contain relatively sophisticated content, others less so. Have a look at the following, which aggregates blogs: MoneyScience Otherwise I could point you to bank/sell-side research. Have a look at the freely available Reuters Messenger (RM), they maintain channels where you can be permissioned ...


3

I dont think you can see convexity in such a plot, since each of these prices are not observed from a single bond deliverable, but from different coupon bond deliveries. If the delivery was always based on same coupon type bond and quite similar maturity ...


3

It's hard to be sure without seeing the inputs, but I'm guessing that the implied curve changes shape because the original curve does (which you can see from your output: except for the 1-year and 5-years points, the actual discounts are different). The reason the original curve changes is probably the different position of weekends or holidays (so that, ...


3

Look into OLF's Findur http://www.olf.com/software/financial-capital.html highly customizable trading platform, will not give you everything you mentioned out of the gate but has capability to get there with some development effort


2

Let's approximate the time to maturity to be 3 years and 10 months. Assume that coupon is paid on March 6 each year. Let face value $F=100$ and coupon $c=0.07375F$. Let the discount factor be $d(0,T)=e^{−r T}$ where $r=0.06535$. The price of the bond is $$ce^{−10/12 \bullet r}+ce^{−22/12 \bullet r}+ce^{−34/12 \bullet r}+(F+c)e^{−46/12 \bullet r}=103.24 \; ...


2

Recovery rates are rarely "modeled" per se, in the sense that most practitioners avoid treating them as random variables. I doubt you want to buck that trend here. As jeff m implies in the comments, it's the cash flow that you really want to know about, so you'll find it more useful to think in terms of the mechanism behind recovery. If the issuer ...


2

I see 98.81 as well, so that is definitely correct. From hearing that you are about a dollar off it looks to me as if you may have omitted accrued interest which should come to around that value given the last coupon payment date was in April and settlement is in the middle of July and a coupon of around 4 dollars. Note the distinction between clean vs. ...


2

Do you have any strict definition of YTM of FRN? I googled and asked many times but I failed to find good and clear explanation. The problem with FRNs is that we do not know what are the future coupons except for only one. If we solved this problem, we could treat FRN just like standard bond. In the text below I will first consider spread to be zero. In ...


2

I assume the sinking fund is optional and non-cumulative. In effect the issuer of the bond holds 10 European call options on 1 million at 4% each. These are valued using a binomial tree and are interest rate dependent. To value the bond price the bond as if there were no options embedded (I.e. it's single bullet, plain vanilla bond) and then add (really ...


2

A sinking fund provides credit enhancement for the investor and reduces interest rate risk for the issuer. The obligor will purchase a pre-determined amount of bonds to be retired in the open market if they're trading below par, or they will make payments to the appointed trustee who will buy-back the bonds in a lottery(typically at a pre-determined call ...


2

US market uses the STREET convention. UK market uses the DMO convention. EUR market uses the ICMA convention (Germany uses also a lot MOOSMULLER convention). The main difference between these conventions are: - the way the number of days is calculated for the discount factors - the day count convention used - the calendar used in case of adjsuted ...


2

I am not sure if the exact upcoming coupon dates can be retrieved in BBG, but using the fields: DAYS_TO_NEXT_COUPON or NXT_CPN_DT (Days to next coupon / next coupon date) plus CPN_FREQ (coupon frequency) it should be easy to calculate the time until each upcoming coupon date. Of course, these coupon dates would be an approximation (ie: they might be ...


2

I think to have the answer: use qlBondPreviousCashFlowDate() pointing at your FloatingRateBond object to get the last date of payment; use qlInterestRateIndexFixingDate() to get the fixing date referring to the last payment date; use qlIndexAddFixings() to add a fixing rate to the fixing date you got above; repeat for each one of your bonds if they share ...


2

These are relatively common, especially in convertible bonds. You are correct that the effective maturity of the bond becomes the call/put date. The reason for issuing them is fairly prosaic: a 10 year bond with a 3 year call/put date counts as a 10 year liability for accounting purposes, and of course a 3 year instrument for trading purposes. The latter ...


2

If you look at wikipedia then you find the definition that a par-yield is the coupon rate, such that bond prices are $100$. This is the definition. Consider $N$ bond with a given coupon rates $c_i$, times to maturity $T_i$ prices $P_i$,for $i=1,\ldots,N$. Then you can calculated the yield-to-maturity for each bond $y_i$. Some mathematics reveal that a bond ...


2

Normally, you do indeed add a credit spread $s$ to the risk-free spreads to price the bond. That is, if the coupons are $c_i$ at times $t_i$ and the notional is $Y$ then you price it as $$ R\!B(t) =Y \exp{\left( -\int_t^T s(x)+r(x) dx \right) } +\sum_{i \ni t_i>t}^{N_c} c_i \exp{\left( -\int_t^{t_i} s(x)+r(x) dx \right) } $$ Normally you have too ...


2

Your steps 1. to 3. sound reasonable. I am not sure about industry practice (what industry?) I always do step 1. using PCA on historical correlations. If you plan to do a regulatory exercise better check with your regulator what he prefers. Most interesting to me is step 4. which - I think - is in general impossible to do. This can be achieved only in very ...


2

This is not a perfect solution but perhaps the following approach could also serve you well as an indicator. Assuming you are only using a finite number (e.g. $n$) of bonds with fixed yields $r_i$ you can write $r_f(w_1, \dots,w_n)=\frac{\sum_0^n w_ir_i}{\sum_0^n w_i}$ with most of the weights being zero. Using the quotient rule you can now calculate ...


2

Depending upon how much data you have, you might find Violi (2004) useful. Nickell et al. (2000), while principally considering time-dependent stability tests, refers a bit to significance testing between the matrices of different agencies and might also provide some insight.



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