Forums
FpML Discussion
General FpML Discussion › Technical & Implementation Questions › Notional step frequency must be an integer multiple of the stream calculation period frequency.
- This topic has 5 replies, 2 voices, and was last updated 9 years, 7 months ago by alexnotalex.
-
AuthorPosts
-
March 26, 2015 at 1:32 pm #2251romaParticipant
Hello. i’m working on the implementation of FpML at Moscow Exchange OTC market. And i have some issue with amortization. For example, i have simple 5y IRS with every 6m payment on float leg and one payment payment on fix leg in the end of term. For example i want to add amortization every 1y. On the swapStream/calculationPeriodAmount/calculation/notionalSchedule/notionalStepParameters/stepFrequency there is a limitation “This frequency must be an integer multiple of the stream calculation period frequency.” Definetly, notional step frequency must be the same on both streams. But on fix leg a have calculation period = 1T, so i can’t set any amortization frequency. 1. Should i set calculation period on both streams same as amortization period? 2. If yes, how i can define both amortization and compounding in one trade? (i.e. 1y swap with 6m payment frequency (with compounding), 3m reset dates frequency and amortization every 1m). Thank you
April 9, 2015 at 6:33 am #2253alexnotalexSpectatorHi Roma, This is my understanding: The integer multiple bit means that if the notional changes you need a new calculation period to describe the interest calculation based on the new notional. You can’t move the notional within a calculation period, the grammar can’t express that. You need to end the first period and start another. Set up your notionalStepSchedule as usual for both legs, amortizing each year stepFrequency = 1Y The fixed leg should have paymentFrequency = 1T and calculationPeriodFrequency = 1Y. Multiple calculationPeriods will contribute to one paymentCalculationPeriod, just specify the compoundingMethod for the leg and you’re half way done. 1y/1y = 1. The floating leg can pay every 6 months and step every year. Set up a paymentFrequency = 6M and calculationPeriodFrequency = 6M. each paymentCalculationPeriod will have a single calculationPeriod. The notional will change every year i.e. every second paymentCalculationPeriod. 1Y/6M = 2. For (2) you’d need 2 paymentCalculationPeriods, each with 6 calculationPeriods to handle the monthly amortization. The interest rate will reset every 3 months, which fits perfectly inside the schedule. Specify the compoundingMethod. The parameters and cashflow grammar should also support this level of detail for stubs. I hope this helps, I’m just a practitioner and do not represent fpml.org. Best, Alex
April 9, 2015 at 7:43 am #2256romaParticipantThank you, Alex. The problem with (2) is that for compounding i must set compoundingMethod = Flat (for exmpl), and for amortization compoundingMethod = None.
April 9, 2015 at 10:04 am #2259alexnotalexSpectatorI interpret compounding and amortization as two things that can happen together or apart. As soon as you have multiple calculationPeriods contributing to one paymentPeriod you should be using compoundingMethod to explain how the numbers should be put together. All my zero coupon swaps are flat compounded implicity, with or without amortization. The FpML grammar can describe all of this, it’s down to you to tell the right story. best, Alex
April 9, 2015 at 10:47 am #2261romaParticipantIf amortization dates = payment dates, everything ok) but i have some examples: 1) Payment frq = 6M Reset frq = 3M Calculation period = 3M Compounding Method = Flat 2) Payment frq = 6M Amortization frq = 1M Calculation Period = 1M Compounding Method = None 3) Payment frq = 6M Reset frq = 3M Amortization frq = 1M Calculation Period = 1M Compounding Method = ???
April 9, 2015 at 11:41 am #2262alexnotalexSpectatorif amortization frq > payment frq then you’ll have multiple calculation periods per payment period and should be indicating the compoundingMethod. This method applies to the whole payment period. If you want periods 1 2 4 and 5 None and 3 and 6 Flat then I think we can’t describe this with the parameters. cashflowsMatchParameters = false and lay it out in each cashflow period. Yuk. Alex
-
AuthorPosts
- You must be logged in to reply to this topic.
Search Forums
Recent Topics
-
Repo vs Reverse Repo
2 years, 1 month ago
-
resetFrequency for SOFR OIS
2 years, 6 months ago
-
FXD Option on strategy
2 years, 9 months ago
-
Forward Exercise
3 years, 1 month ago
-
Usage of IRSwap in Confirmation Process (requestConfirmation)
3 years ago