Swaps for Dummies

A big hello to all the Level 2 candidates. Thankfully I passed level 2 this time last year but one area I had needlessly struggled with while studying was Swaps.

That is, until I dug up the best Swap explanations ever from previous AnalystForum Posts.

As it helped me a great deal and made Swaps extremely simple to understand and value for me I wanted to pass on the info to all of you as karmic balance.

I didn’t write the posts below but the guy deserves a medal for services to CFA Level 2 :slight_smile:

Anyway good luck to all in the forthcoming exams.

Author was JScott24. I have no idea if he is still around on the site or not so all thanks should be to him.


Cmon guys give it one more chance

Let’s say that two parties enter into a 1-year swap with quarterly fixed payments priced at 6.052%. At initiation, the 90-day LIBOR was 5.5%. 30 days later, we observe the following chart on a $30 million dollar notional

60-day LIBOR – 6.0% 150-day LIBOR – 6.5% 240-day LIBOR – 7.0% 330-day LIBOR – 7.5%

What is the value of the swap?

Step 1: Calculate the fixed payment at each payment period 6.052% X (90/360) = 1.513%

It’s easier to calculate in terms of $1.00. After all, we’re trying to find the net amount Day 90 - $0.01513 Day 180 - $0.01513 Day 270 - $0.01513 Day 360 - $1.01513 Remember the principal is returned in the last payment

Step 2: Calculate the present values of the fixed rate payments Now that we’re 30 days in, we need to calculate the discount factors for 60, 150, 240, and 330 days using the new LIBORS In 60 days - Z1 = 1 / 1 + (0.06 * (60/360) = 0.99010 In 150 days - Z2 = 0.97363 In 240 days - Z3 = 0.95541 In 330 days - Z4 = 0.93567 These are usually given so we don’t have to go through the process

CF1 = $0.0153 * 0.99010 = 0.01498 CF2 = $0.0153 * 0.97363 = 0.01473 CF3 = $0.0153 * 0.95541 = 0.01446 CF4 = $1.0153 * 0.93567 = 0.94999

PV of Fixed-Payer = $0.99399

Step 2: Calculate the floating rate payment at each period. There are four payments for each of the 4 quarters. Because 30 days have passed, the payments are at 60, 150, 240, and 330. However, we only need to know 1 payment, and we already know it. How can that be? Unlike the fixed-payment, the floating-rate payment is reset to the market value every payment date, therefore the par value is always equal to 100. As for the payment, well that was identified in the question 5.5%. Remember the floating-rate payment is always set for the next payment date, therefore on day 90 (60 days away) the value of the payment will be 5.5%. Also, we add the value of the principal as well as discount back at the 60-day (first payment) discount factor.

0.055*(90/360) = $0.01375 This is the floating rate payment undiscounted. Since it is 60-days out, we need to discount it back + the $1.00 bond value immediately after the payment is made.

CF1 = 1.01375 * 0.99010 = 1.00371 = PV of the floating-rate payer

Remember that it doesn’t matter what the floating rate coupon payments are at the last three settlement dates because the floating rate bond will be worth $1.00 plus the coupon of $0.01375 at day 90

Step 3: Determine the value to the fixed-rate payment The present value of the floating-payments are greater than the present value of the fixed-payments, therefore, the fixed payer stands to gain

Swap value to the fixed payer = 1.00371 – 0.99399 = 0.00972 Swap value to the fixed payer = $30,000,000 * 0.00972 = $291,630

Present value of the fixed payments + principal at the last payment period compared to the present value of the next floating payment (usually given) + principal at the next payment period. Just remember how to calculate the discount factors (which are usually given anyway) and to discount based on where you stand in the contract, 60 days away, 30 days away etc. And remember to stop valuing the floating rate after the next payment date.

Currency Swaps:

Alright let’s try it.

Let’s consider a fixed-for-floating currency swap. The term is 1-year, the notional 5 million. The exchange rate at the beginning of the contract was 0.50 L/. The dollar is floating and the L is fixed at 6.8%. Payments are by quarter. Let’s say that 300 days have passed. At the last settlement date (30 days ago), the 90-day LIBOR for the and L;, was 5.6% and 6.4% respectively. Let’s say that after 300 days (meaning 60 days left), the LIBOR 60-day interest rate is 5.4% and the LIBOR 60-day L interest rate is 6.6%, and the exchange rate is 0.52 L/. Calculate the value of the swap to the L fixed payer, who receives floating.

Okay wow, let’s start with what we know. Both the fixed and the floating have one payment left 60-days from now that is equal to the coupon payment + principal. The fixed pays the 6.8% which was set at the beginning of the contract plus the par value principal back. Because there are 60 days left in the contract, we use the 60-day L LIBOR to calculate our discount rate (although chances are they will provide this).

Fixed Payment L Discount Factor: = 1 / 1 + [0.066 X (60/360)] = 0.98912 Payment = [0.068 X (90/360)] + 1 (principal) = 1.017 Discounted payment = 1.017 X 0.98912 = 1.00594

Now for the floating payment, we take the 90-day LIBOR rate (remember the floating payer is the guy) that was set at the last settlement day (30 days ago). The discount factor is the 60-day LIBOR $ rate.

Floating Payment $ Discount Factor = 1 / 1 + [0.054 X (60/360)] = 0.99108 Payment = [0.056 X (90/360)] + 1 = 1.014 Discounted Payment = 1.014 X 0.99108 = 1.00496

Calculate the values of the floating payment Floating Payment = 1.00496 X 50,000,000 = $5,024,776

Remember in the case of currency swaps, the two parties exchange the currency at the beginning of the swap because the idea is to hedge the holding effect (FSA name-drop there). Therefore, when we are calculating the value to the fixed or the floating payer, we must take the entire payment including the principal into account when netting the amounts

Calculate the values of the fixed payment. Now this is a little different because the fixed payment is in L, we need to first translate the notional amount over at the beginning exchange rate which was $0.50, multiply it by the discounted payment, and then translate it back at $0.52. This is extremely important to remember in currency swaps. If we were doing a fixed-for-fixed currency swap, this would be all that matters. However, in a fixed-for-floating currency swap, gains/losses are subject to both (a) fluctuations in the floating rate (b) appreciation/depreciation in the exchange rates.

Initial principal in $ X Initial Exchange Rate = 5million X 0.5 L/ = L 2.5 million Initial principal in ₤ X discounted payment = L2.5 million X 1.00594 = L2,514,850 L value of discounted fixed payment X new exchange rate = L2,514,850 X 1 / 0.52 = $4,836,227

As we can see the dollar has appreciated from 0.5 L/ to 0.52 L/, so the L fixed payer gains (on that front) because they are paying the depreciated currency and receiving the appreciated. Let’s think about the gains conceptually. To paint a picture, let’s assume that the floating payer is in the UK, and the fixed payer is in the US. At the initiation of the contract, there is $5 million dollars exchanged. The U.S. guy holds $5 million dollars worth of pounds, and the U.K. holds $5 million dollars. Also for simplicity, let’s assume for the moment that they both are paying fixed rates, contract value at initiation = 0. Then, over the course of the contract, as the pound depreciates and the dollar appreciates, the U.S. guy paying a fixed rate on the depreciated pound and receiving a fixed rate on the appreciated dollar is gaining. In the case of a fixed-for-floating, the gains/losses of the interest rate hedge and the currency hedge cumulate to the total gains/losses. So the first thing you do with a currency swap is value the swap like a plain vanilla swap. The next step would be taking into account the currency fluctuations, as I did above.

Value to the fixed = 5,024,776 – 4,836,250 = $118,549

A question might be in the case of a fixed-for-floating currency swap, what are the gains attributable to currency fluctuations and what are the gains attributable to interest rate fluctuations? Also the number above won’t add completely due to the rounding.

2 Likes

Thanks to you for reposting this and thanks to Jscott for orginally writing it. Although, I havent read it yet so thanks might be premature, but Ill give you the benefit of the doubt!

Calculate the values of the floating payment Floating Payment = 1.00496 X 50,000,000 = $5,024,776

For those going through this, they added an extra zero in the above portion.

This should be = 1.00496 X 5,000,000 = $5,024,776

I should also note, this was well written. Thanks for the repost, and the original poster

A few tips on swaps. Don’t get used to the item set providing the discount factors for each of the rates. Learn them without, and then if you get them on the exam, all the better. Not worth risking not knowing how to find the fixed rate b/c you need the discount factors and don’t know where they come from. (This goes for FRA’s as well).

Also, I’m assuming most people now how to use the STO and RCL functions on the BAII Plus, but if not, you really need to use these. They makes these problems much easier and removes potential rounding error (There’s no way you miss a problem by NEVER rounding throughout the problem b/c the answer shown was solved by rounding to 4 decimal places throughout). You can also solve the problems much faster by not writing each answer down and re-entering into your calculator.

if you dont mind can you give me a quick tutorial how to use the sto and rcl . i actually don’t know how to use them with problems.

This is super easy. There are 2 buttons on the bottom left of the calculator, STO and RCL. Store and Recall I guess.

To store a number for later usage, simply hit the STO button and then any of the number (i.e. 0-9), this will save whatever number is on screen into memory.

Later, when you want to recall that number, simply hit the RCL and then whatever number you used to store it (0-9). Doing this will bring up the number back on screen.

I religiously use STO and RCL…but I also write down the numbers to keep them in order in my mind. But yes, those functions are a must

seriously, if you haven’t been using these you have to start. Massive time saver. For example if you are doing a multi period DDM, I always write out the formulas, then calc each component and write the STO number above the formula on my paper (i.e. 0-9 instead of the answer). Then I just RCL 1 + RCL 2 + RCL 3 + RCL 4. Easy and eliminates rounding, retyping errors.

And remember that LIBOR rates are nominal; if they give you the 180-day LIBOR rate as 5%, the discount factor is:

1 / (1 + 5% / 2) = 0.975610.

If they give you the 720-day LIBOR rate as 7%, the discount factor is:

1 / (1 + 7% × 2) = 0.877193.

Do not compound LIBOR rates.

1 Like

Thanks very much. This is well written.

for 720 day you can look at it this way too

1/ (1 + 0.07(720/360)) = 0.877

Nice

Any video for STO,RCL usage ?

This is really good explanation of the swaps, after reading this I thought I can even handle the currency swap maybe but my expectation quickly vanished when I saw the 2 currency swap questions on 2013 CFA PM mock. No chance to solve and definitely not within 6 minutes

lol THE SAME THING HAPPENED TO ME WTF

1 Like

Man - maybe I’m dense but this is actually super confusing and wayyy to wordy. I’m thankful he helped but Schweser’s example is 100x better

I found this guy on YouTube a few days ago and he covers a handful of topics for the CFA curriculum, including swaps and other derivative contracts. His explanation and walk through of the calculation is very very good. https://www.youtube.com/channel/UCXtLWdplccvbVjgbeFtEGVw

Happy studies!

Hi, I know this this late, but can someone plz shine some light on my concussion. For this original intersect rate swap example given by JScott24, I used the formula (1-0.93567)/(0.9901+0.97363+0.95541+0.93567)=0.0167 to get the new fixed rate. And (0.0167 - 0.06052/4) * (0.9901 + 0.97363 +0.95541+ 0.93657) * 30,000,000 = 181,561 to get the value of the swap but the answer is way off. Can someone plz let me know what I did wrong. Much appreciation!