Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow negative paymentlag #224

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

kohnech
Copy link
Contributor

@kohnech kohnech commented Mar 8, 2024

This pull request incorporates modifications from QuantLib, enabling the handling of negative payment lags, as implemented in QuantLib PR #1818.

It is recommended to merge this pull request after updating ORE QuantLib with the corresponding changes.

Aligning with the modification in QuantLib (PR 1818), this commit implements the update to the payment lag in ORE. The adjustment now accommodates negative values using Integer data type.
@kohnech kohnech changed the title Feature/allow negative paymentlag Allow negative paymentlag Mar 9, 2024
@kohnech
Copy link
Contributor Author

kohnech commented Mar 11, 2024

There are still some places left where Natural payment lag is still being used in ORE but these where not changed and we are not certain they should allow a negative payment lag:

  • EquityCoupon
  • EquityMarginCoupon
  • DurationAdjustedCMSCoupon
  • FormulaBasedCoupon/Leg

Should we add to the user guide that there are exceptions for a negative payment lag?

@pcaspers
Copy link
Collaborator

pcaspers commented Mar 27, 2024

Generally, all coupon types should support negative payment lag as long as the resulting payment date makes sense economically, i.e. the amount is fully determined before or on the payment date. But that's already the case for in arrears fixed term rates or the old ibor coupons.

In particular, DurationAdjustedCMSCoupon, FormulaBasedCoupon should support the feature, they are not different than any other coupon. The other two probably too, as long as the above restriction is fulfilled.

It's also generally desirable to have the same technical treatment in all coupon classes. They should throw an error instead if the resulting pay date does not make sense.

Does that make sense?

@damienbarker damienbarker self-assigned this Apr 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants