Loan Modelling with multiple interest rates


Is it possible (or are there any examples) of modelling a loan using Strata that has several interest rates to replicate the behaviour of, for example, a mortgage with a fixed interest rate period followed by a remaining term that tracks a base rate + margin (e.g. Bank of England + 5%)?

The holiday, day count, and schedule generation looks like it’s exactly what I need to calculate the accrual periods. Should I model this as a Swap with a single SwapLeg? Do I then need to create some sort of custom market data to represent the interest rates that apply?

I’ve had a look at the examples in the repo, but can’t quite see one that matches this example.
Many thanks for your guidance!



There are no specific examples or code in Strata for this. As you surmise, you’d have to create a Swap in order to take advantage of the schedule and recurring payments. While unusual, it is perfectly possible to have a swap with 2 legs in the same direction where one leg is fixed for the first 2 years and one leg is floating for the remaining term:

Swap leg 1: Receive Fixed 5% 2019-06-01 to 2021-06-01
Swap leg 2: Receive Ibor variable% with a spread of 5% 2021-06-01 to 2039-06-01

The variable aspect would be obtained by adding an IborIndex via configuration that represents the Bank base rate. You would then pass in a Curve that represents the prediction of the base rate over time. SwapPricingExample might be the closest code example.




Excellent, thanks. I’ll take a look with this info!