Converting Rates by Matching Discount Factors Across Conventions
Summary
The note describes how to convert an interest rate quoted with one compounding frequency and day-count convention into an equivalent rate under another convention. First calculate the accrual year fraction for the relevant dates under the source convention, then use the source rate and compounding frequency to compute the discount factor for the future payment. Solve under the target convention for the rate that reproduces that same discount factor.
The example shows that day-count conventions can assign different year fractions to the same calendar period, so there is no single conversion independent of dates. For a single future cash flow, preserving its discount factor gives a direct conversion. The note cautions that instruments with multiple payment dates require handling the full cash-flow schedule and associated discount factors. It assumes discrete compounding for its main equations and indicates that continuous compounding needs a corresponding formula. The material offers a method and examples, not market-specific conventions or implementation guidance.
Key ideas
- Day-count rules determine accrual year fractions and can differ for the same dates.
- Convert a rate by computing its source discount factor and solving for a target rate that matches it.
- A single equivalent rate depends on the specific dates and conventions being converted.
- Multiple-cash-flow instruments require applying the conversion across their payment schedule.
Tags
Full text
# Rate Converstion Using Different Day Count and Frequency # Rate Converstion Using Different Day Count and Frequency Can anyone help on this question? I failed to find any public material discussing this topic. I have rate, say 5%, quoted in Monthly payment, using Actual/360 basis. Now, I need to convert it to an equivalent rate, quoted in Semi-Annual payment, using 30/360 basis. How should I tackle this? How about convert semi-Annual payment, actual/365 basis? ## Answer by Bernd (score 3) https://quant.stackexchange.com/a/39840 Act/360 and 30/360 is the 'day count convention'. It is used to determine the 'year fraction'. Computing this year fraction for different day count conventions gives different values depending on the concrete starting date and end date of the considered period. Example: ``` print( ActualActual().yearFraction(Date(15,1,2016), Date(15,1,2017)) ) print( Thirty360().yearFraction(Date(15,1,2016), Date(15,1,2017)) ) print( Actual360().yearFraction(Date(15,1,2016), Date(15,1,2017)) ) 1.000104798263343 1.0 1.0166666666666666 ``` Start and end dates one year later: ``` print( ActualActual().yearFraction(Date(15,1,2017), Date(15,1,2018)) ) print( Thirty360().yearFraction(Date(15,1,2017), Date(15,1,2018)) ) print( Actual360().yearFraction(Date(15,1,2017), Date(15,1,2018)) ) 1.0 1.0 1.0138888888888888 ``` Putting this differently, there is no general answer to your question. What you could do is converting a monthly compounding rate into a quarterly-compounding or so. - Take this equation from Brigo/Mercurio (2006), page 8: rate = k / ( P^(1/(k*tau)) ) - k - Set tau according to concrete number computed above - Set k equal to the compounding type k you are interested (monthly=1/12) - Set rate equal to the rate you want to convert, e.g. 5% - Solve for P - Write down the equation above for the P you got and the other compounding type you want to convert to (quarterly=1/4). ## Answer by David (score 1) https://quant.stackexchange.com/a/59629 When one is considering an interest rate that holds to a single date in the future, it is straightforward to convert an interest rate from a source compounding frequency and day count to a target compounding frequency and day count. The key insight is that, however constructed using compounding frequencies and day counts, there is only one discount factor (the present value of $1) associated with a given future date for a given credit quality. The algorithm is as follows. One starts by computing the discount factor for the future date using the source compounding frequency and day count. Then one uses the discount factor to solve for the rate that recovers the same discount factor using the target compounding frequency and day count. Let R_S = source interest rate in decimal form R_T = target interest rate in decimal form (what we are solving for) F_S = source rate comp freq (1=ann. ,2=semi-ann,…12=monthly etc.) F_T = target rate compounding frequency AF_S = accrual factor (time in years) using the source rate day count AF_T = accrual factor (time in years) using the target rate day count DF = the discount factor for the future date (the PV of $1) Assuming discrete compound rates, we have from the source rate information (slightly different equations are used for continuous compounding but the idea id the same): ``` DF = 1/(1 + R_S/ F_S)^( AF_S*F_S) ``` Suppose R_S = 0.02, F_S = 2, and AF_S = 2, we then have ``` DF = 1/(1 + .02/2)^4 = 0. 0.9609803445 ``` This is the discount factor we must recover. Now assume that the target rate has the following: F_T = 1 and AF_T = 1.98 (different due, say, to an assumed different day count) - 0.9609803445 = 1/(1 + R_S/ 1)^( 1.98*1) Solving, R_S = 0.02030507783 or 2.0305… percent Finally, we verify that the solved target interest rate generates the same discount factor DF = 1/(1 + R_T/ F_T)^( AF_TF_T) = 1/(1+0.02030507783/1)^(1.981) DF = 0. 0.9609803445 If, on the other hand, one is dealing with a bond or a swap that has multiple cash flow dates, the work gets more complicated and involves a cumulative or summed discount factor.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.