Hi,
Say that a StructuringCustomerA, through their Structuring.Service
provided by a StructuringProviderB, requests to structure a BondA and StructuringProviderB approves it, resulting in a new Instrument BondA on the ledger.
Then, a IssuanceCustomerC thinks: Hey, let’s issue 1 BondA through their Issuance.Service
provided by IssuanceProviderD - Anyway, StructuringCustomerA will pay the coupons (the issuer attribute in the Instrument BondA
is StructuringCustomerA. Hence the party who will pay the coupons after lifecycling happens)
Am I missing something?
Thanks!
Jose
2 Likes
Hi @jvelasco.intellecteu,
What you describe above is indeed a feasible scenario:
- two parties define the economic terms of an instrument (in this case, A and B define the economic terms of Bond A by creating the corresponding
Instrument
)
- two other parties enter into an ownership / liability agreement with regards to that financial instruments (in this case, C and D enter into a
Holding
contract where C owns units of Bond A against D)
This is very similar to the real-world scenario where you and I sign a piece of paper stating that I owe you 5 USD
:
- the FED defines the economic terms of the
USD
instrument
- you and I enter into an on-paper
Holding
contract where you are the owner
and I am the custodian
. The Holding
references the USD
instrument for an amount of 5 units
What is incorrect in the situation you describe above is to assume that the issuer
of the instrument is liable to pay the coupons:
- coupons (or lifecycle effects for a
Holding
in general) are always exchanged between the holding’s custodian
and the owner
. In this case, the coupon would be paid from D
to C
.
- the action of
lifecycling
the Instrument
contract is just used to
- determine the amount of the coupon to pay
- create the corresponding effect
I hope this helps to clarify the situation.
I believe that the source of confusion is the fact that, in the case of a real-world bond, the party referred to as the issuer
is also the party that pays out the bond coupons. If we wanted to model this scenario in Daml Finance, we would need a setup as below:
The coupon payment would then happen in two steps:
- P lifecycles the bond instrument to calculate the coupon amount and creates an
Effect
contract
- I or P use the
Holding
contract to claim the Effect
and generate Settlement Instructions
The settlement instructions would then look as follows:
-
owner
sends a holding on the old instrument to custodian
-
custodian
sends a holding on the new instrument to owner
-
custodian
sends the coupon amount to the owner
Matteo
3 Likes
Thanks for the clarification @Matteo_Limberto
As a follow-up question:
How would you implement the typical case where I have a Tesla bond at my bank?
Thanks!
Jose