Swap Start Dates, LIBOR Accrual, and Discounting in Bloomberg SWPM
Summary
The discussion explains why a USD three-month LIBOR coupon in a cross-currency swap can accrue over 90 days even when its payment arrives 92 days after the deal date. The trade starts at settlement, two days after the valuation or deal date, and the LIBOR fixing applies from that start date through the first payment date. The coupon therefore uses the accrual period from swap start to payment, with the stated Act/360 convention, rather than counting from the earlier deal date.
A follow-up distinguishes the curve or market-data date from the valuation date and says cash flows are discounted back to the valuation date. It also cautions that curve-stripping and discounting treatment can differ for currencies such as RUB and TRY: applying a USD LIBOR curve to those cash flows can distort valuation through a basis difference. These explanations describe conventions and the specific example raised; they do not establish a universal Bloomberg setup, and the answer itself retracts an earlier side remark about curve stripping.
Key ideas
- The swap’s accrual period begins at its settlement or start date, not necessarily on the deal date.
- A three-month LIBOR coupon uses the accrual day count from swap start to payment under the stated Act/360 convention.
- Cash flows are discounted to the valuation date, which may differ from the market-data curve date.
- Discounting and curve-stripping treatment for RUB or TRY can require special care and may create basis-related valuation differences.
Tags
Full text
# Bloomberg SWPM: Day count to calculate discount factor for US0003M # Bloomberg SWPM: Day count to calculate discount factor for US0003M I'm trying to replicate price I get for CCIRS in SWPM. This is USD3m float vs RUB 1Y. Second leg doesn't matter for my question. Suppose today is 7th of Jan 2019, deal date. Settlement will happen on 9th of Jan 2019. I look at cash flow screen. Fixing is 2.80388. The first USD Libor 3m payment will happen in 92 days from now (31+28+31). And I see that it is 90/360*2.80388=0.006992053338 (on the screen this figure you can find if divide payment 1042.06 by notional 148659.09). Also I see that it is discounted with discount 0.993039, which is zero rate (equal to fixing) * 90: 0.993039 = 1/(1+0.0280388 * 90/360). Could you please explain, - why do they apply 90 days discount factor for payment which happen in 92 days? - why do they use libor 3m to calculate this discount if actually this is forward F(2, 92) (here I rely on answer by Helin on quant.stackexchange), but not spot F(0, 92) ? I'm asking here because I was not able to get response from help desk. ## Answer by AlRacoon (score 3) https://quant.stackexchange.com/a/43542 The swap convention is that on swap start, the swap has 0 value. In your example, you entered into a swap to start in two days. The convention for Libor is that the fix applies from settlement date for the tenor of rate, calculated on an Act/360 basis. From the start of the swap, 1/9/19, to the first payment date of 4/9/19, there is exactly 90 days hence using the 3M Libor fix of 2.80388 multiplied by Act/360 (90/360). ## Answer by AKdemy (score 1) https://quant.stackexchange.com/a/69991 Curve date: the date the market data is fetched Valuation date: date to which future CF are discounted (usually T+2 at inception) - NPV is discounted back to valuation date - any date before that date doesn’t show in CF table unless you tick (show) historical CF - Notional exchange is on valuation date - this is in line with the question / answer you posted (T+2) and convention and multiple markets EDIT: My previous comment for DC stripping was not correct. Some currencies like RUB and TRY were stripped with 3m Libor regardless of whether DC stripping is enabled or not. Insofar, when valuing a XCCY trade involving RUB, DC stripping should be disabled for it to have a meaningful valuation. Otherwise, the RUB leg will be discounted using "3m$libor discounting for RUB cashflows" and the USD leg will be discounted using "FF discounting for EUR cashflows" (now SOFR, but back in 2019 FF) and there will be a valuation difference equal to FF-LIBOR basis. The below is wrong for currencies like RUB or TRY: Side remark, you unticked DC curve stripping. That is not recommended. The correct use case to value a trade against a non-CSA counterparty is to choose the Libor curve for discounting but keep DC stripping on. The idea is you build your family of curves using OIS discounting, because that's what the definition of the quoted market swap rates is. Then, from that family of curves you have built, you choose to use the Libor curve for discounting when pricing your particular trade, because that trade is facing a non-csa counterparty.
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.