Handling instrument events for repurchase agreements

Prev Next

You can model a repurchase agreement as a buyer or a seller using the FlexibleRepo instrument type in LUSID. See how to do this.

LUSID provides the following instrument lifecycle events for a FlexibleRepo, which you can handle or trigger as required:

  • FlexibleRepoCashFlowEvent. This event is automatically emitted on the start date and again on the maturity date specified in the instrument definition. More information.

  • FlexibleRepoCollateralEvent. This event is automatically emitted on the start date and again on the maturity date. More information.

  • FlexibleRepoInterestPaymentEvent. This event is automatically emitted for an OpenRepo on the interest payment date for each window. More information coming soon.

  • FlexibleRepoPartialClosureEvent. This event is not automatically emitted by LUSID, but can be manually loaded to trigger a partial closure. More information coming soon.

  • FlexibleRepoFullClosureEvent. This event is not automatically emitted by LUSID, but can be manually loaded to close an OpenRepo. More information coming soon.

  • MaturityEvent. This event is automatically emitted on the maturity date. More information coming soon.

Mastering instruments and establishing positions

Imagine we have two portfolios in LUSID with holdings in the following instruments:

  • Each has a FlexibleRepo instrument that is identical except one has a repoType of Buyer and the other Seller.

  • Each has the the same fixed-rate Bond instrument with monthly coupons specified as collateral using MasteredInstrument.

See how to set this scenario up. In summary:

Instrument type

Positions

FlexibleRepo

Units: 1

Transaction date: 1 January 2025

Start date: 2 January 2025

Maturity date: 31 March 2025

Length of contract: 88 days

Purchase price: £1,000,000

Repurchase price: £1,012,054.79

Bond collateral coupons: Seller keeps

Bond

Units: 3

Transaction date: 1 January 2025

Coupon date: 28th of each month

Coupon amount: Approximately £20.80 per unit held

Since the date of a transaction to establish a position in a FlexibleRepo must be before the start date of the instrument, our holdings on 1 January 2025 are the identical as follows (click to enlarge):

Buyer portfolio

Seller portfolio

Handling cash transfer on start and maturity dates

LUSID emits FlexibleRepoCashFlowEvent on the:

  • Start date specified in the instrument definition to transfer the purchase price from the buyer to the seller.

  • Maturity date to transfer the repurchase price from the seller to the buyer.

To handle this event, you must create a FlexibleRepoCashTransfer transaction type in the default scope and default source. See our recommendation.

Start date

On 2 January 2025 we examine holdings to see that LUSID has transferred £1,000,000 from the buyer to the seller:

Buyer portfolio

Seller portfolio

We can examine the output transaction automatically generated by FlexibleRepoCashFlowEvent in each portfolio to implement this transfer:

Buyer portfolio

Seller portfolio

Maturity date

On 31 March 2025 we examine holdings to see that LUSID has transferred £1,012,054.79 from the seller to the buyer:

Buyer portfolio

Seller portfolio

We can examine the output transaction automatically generated by FlexibleRepoCashFlowEvent in each portfolio to implement this transfer:

Buyer portfolio

Seller portfolio

Handling collateral transfer on start and maturity dates

LUSID emits FlexibleRepoCollateralEvent on the:

  • Start date specified in the instrument definition to transfer collateral unit(s) from the buyer to the seller.

  • Maturity date to transfer collateral unit(s) from the seller to the buyer.

To handle this event, you must create a FlexibleRepoCollateralTransfer transaction type in the default scope and default source. See our recommendation.

Note: If you do not want to transfer collateral units between buyer and seller you can simply ignore this event by not creating the FlexibleRepoCollateralTransfer transaction type.

Start date

On 2 January 2025 we examine holdings to see that LUSID has transferred one Bond collateral unit from the seller to the buyer:

Buyer portfolio

Seller portfolio

We can examine the output transaction automatically generated by FlexibleRepoCollateralEvent in each portfolio to implement this transfer:

Buyer portfolio

Seller portfolio

Maturity date

On 31 March 2025 we examine holdings to see that LUSID has transferred one Bond collateral unit from the buyer to the seller:

Buyer portfolio

Seller portfolio

We can examine the output transaction automatically generated by FlexibleRepoCollateralEvent in each portfolio to implement this transfer:

Buyer portfolio

Seller portfolio

Understanding cashflow ownership for collateral transferred

In our example, coupons for the Bond collateral during the lifetime of the FlexibleRepo are due on the following dates: 28 January, 28 February, 28 March.

Providing LUSID is set up to handle BondCouponEvent, a coupon for approximately £20.80 per bond collateral unit held is automatically generated, so for example on 28 January:

  • In the buyer portfolio with four units held, LUSID generates a coupon for £83.33.

  • In the seller portfolio with two units held, LUSID generates a coupon for £41.67.

However, since the FlexibleRepo is set up for the seller to keep bond coupon payments, LUSID automatically handles refunding the seller the coupon for the transferred unit.

If we examine holdings on 28 January we see we have equal bond coupon payments of £62.50, despite the Bond collateral units held being different:

Buyer portfolio

Seller portfolio

We can examine the output transaction generated by FlexibleRepoCashFlowEvent in each portfolio to implement this refund. Note the Manufactured tag in the transaction ID:

Buyer portfolio

Seller portfolio

Handling intermediate interest payments for an open repo

More information coming soon

Partially closing a repo

More information coming soon

Fully closing an open repo

More information coming soon

Handling repo maturity

More information coming soon