If the spread on each individual asset in a portfolio is known (and the duration and market value of these assets is also known), is there a relationship that can be used to deduce the spread on the overall portfolio containing these assets?

  • $\begingroup$ Hi,could you please define ‚spread‘? $\endgroup$ Commented Aug 16, 2021 at 14:09
  • $\begingroup$ The additional gross redemption yield on the asset/portfolio above the risk free rate of interest $\endgroup$
    – J. Chapman
    Commented Aug 17, 2021 at 8:15
  • $\begingroup$ So we are talking yield spread, ok. I’ll think on it :) $\endgroup$ Commented Aug 17, 2021 at 9:58

2 Answers 2


You need to define what you mean by the portfolio spread. Here I define it as if the portfolio is itself a single bond and you want to calculate its yield spread over the risk-free rate $r$. Here I consider the gross redemption yield and the yield-to-maturity. You choose which is better. This makes the resulting spread comparable to that of other fixed income securities of the same maturity and similar credit quality.

If you have a portfolio of $N$ fixed income securities each with a yield spread $s_i$, full price $p_i$ and portfolio weight $w_i$, then the yield spread of each security equals $s_i=y_i-r$ where $y_i$ is the yield of each asset $i$.

We can calculate $y_i$ if the full price of asset $i$ is $p_i$ and the coupon of asset $i$ is $c_i$ using either the gross redemption formula

$y_i = c_i/p_i$

or you solve for the YTM $y_i$ using the standard price-yield formula

$p_i = \sum_{t=1}^T \frac{c_i}{(1+y_i)^t} + \frac{1}{(1+y_i)^T}$.


In the simplifying case when all the assets are priced at par $p_i=1$, and have the same maturity date, we have $y_i=c_i$. Note that $\sum_{i=1}^N w_i = 1$. Hence the value of the total portfolio $p$ is also par as

$p= \sum_{i=1}^N w_i p_i = 1$

The total coupon is $c = \sum_{i=1}^N w_i c_i$. As the bonds are priced at par, the gross redemption yield spread of the portfolio equals

$s = \sum_{i=1}^N w_i c_i - r$.

This is also the same if we are using the YTM in the spread definition. Note that if $c_i$ is the same for all assets then $s=s_i$ as all yield spreads are the same.


When the bonds are not priced at par, you must find the portfolio yield. Using the gross redemption yield gives

$y = c/p-r$

and for the YTM you need to solve for $y$ using

$p = \sum_{t=1}^T \frac{c}{(1+y)^t} + \frac{1}{(1+y)^T}$

where $p, c$ are the portfolio value and coupon as defined above. From this you can get a yield spread $y-r$. In this case it's not a simple formula of the coupons. Instead you need to calculate $c$, $p$ to calculate $y$ and then $s$. This is simple to do in a spreadsheet. The portfolio yield spread will of course be related to the values of the $y_i$, but not in a simple formula.

If the bonds have different maturities then this complicates matters a bit but the method is basically the same. In this case the YTM is preferable.


If you have access to the spread duration of each asset in the portfolio then it is possible to estimate the spread on the portfolio. You can get an even better estimate with spread convexities. Let $s^{*}$ be the spread of the portfolio. The key observation is that when the individual bonds are PV'd at $s^{*}$, the sum of the changes in the values must add up to zero. For example, in a simple two bond case:

$$ \Delta \mbox{Spread} (A_1) \times \mbox{Spread Duration} (A_1) \times \mbox{Market Value} (A_1) + \Delta \mbox{Spread} (A_2) \times \mbox{Spread Duration} (A_2) \times \mbox{Market Value} (A_2)= 0 $$

Since $\Delta \mbox{Spread} (A_i) = s^{*} - s_{A_i}$, where $s_{A_i}$ is the prevailing spread on asset $A_i$, we can solve for $s^{*}$.

In words, the spread of a portfolio is approximately equal to the weighted-average of the spreads of the individual assets, with the weights being equal to the spread duration weights as defined above. For example, given two bonds with spread values of 100bps and 30bps respectively, spread durations of 3 and 6, and equal market values, the portfolio spread is 53.3.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.