Modeling Instrument Behavior in Tokenized Assets
In the introduction to this series, I touched on how important it is that a tokenized asset includes the actual behavior of the asset it represents. Unless you have this, your tokenization efforts simply add another layer to your existing technology stack. This is a common problem with “bearer instrument” type tokens that only record asset ownership.
In this post I’ll drill a little deeper into how Daml Finance allows a wide range of different instrument types to be represented. There are three approaches:
- Use the built-in instrument types.
- Use Contingent Claims, a library within Daml Finance that allows a wide range of asset types to be quickly and effectively modeled.
- Code your own custom implementation.
A key aspect of Daml Finance is that it is asset agnostic, meaning that activities such as issuance, custody, lifecycling and settlement will work with any instrument types, regardless of how they were created. This means that a new instrument type can be created (even dynamically built on the fly without coding) and it will work correctly in all of the aforementioned activities. With Daml Finance, there is no need to build siloed applications that provide similar functionality for different instrument types.
Furthermore, by providing a standard approach to instrument modeling, Daml Finance makes it easier to compose applications across multiple providers, such as may be achieved through the recently announced Canton Network. For example a bond issued by one organization may be held in custody with another, and used as collateral with a third.
Built-in Instrument Types
Out of the box, Daml Finance provides templates for the following instrument types:
- Tokens: A simple instrument often used to model financial instruments that do not exhibit complex lifecycling logic, such as currencies.
- Bonds: Fixed rate, floating rate, callable, inflation linked and zero coupon bonds.
- Equities: Including support for dividend payments, bonus issues, dividend options, rights issues, stock splits, reverse stock splits and mergers.
- Options: Cash settled European, physically settled European, barrier and dividend options.
- Swaps: Interest rate, currency, foreign exchange, credit default, asset and FpML swaps.
Use of these templates accelerates and de-risks development. They can also be used as a starting point or guide if creating your own instrument types.
In the Contingent Claims library, an instrument is represented by a tree of claims, which describe future cash flows and/or asset flows between two parties as well as the conditions under which these flows occur. This is a highly effective approach and is underpinned by financial engineering research¹. For example a fixed rate bond, such as we saw in the lifecycling example, is a set of payments at specific dates (coupon payments), followed by a single final payment (redemption).
Going into a little more detail, a more complex example is a forward to sell 20 TSLA for $5,000, which is represented by the following tree of claims:
Notice here the “When” at the top combines with the date branch on the left. When the date is passed, two branches are executed, as specified by the “And”. The “Give” reverses the direction, requiring the holder to deliver 20 (20x1) TSLA shares. On the far right branch, the “Scale” branch shows that the holder is due to receive $5,000.
The tree of claims can either be defined upfront when an instrument is created, or it can be dynamically created on the fly as needed. The former approach is better for quick creation of one-off instruments, whereas the latter approach has the benefits of being more flexible to handle very large claims trees or changes to holiday dates.
Create Your Own Asset Types
If required, new instrument types can be created by implementing standard interfaces in Daml Finance. Whether to use this approach or to leverage Contingent Claims depends on detailed requirements.
Observables and Elections
An instrument often needs to account for market observables, for example interest rates, asset prices or FX rates. These values are not known when the instrument is created, so Daml Finance provides a mechanism to provide these when they are required.
Whereas an observable is an external value that impacts an instrument, an election is a choice made by a stakeholder that impacts an instrument. Examples include deciding whether or not to exercise an option, and calling or not calling a callable bond. To handle elections, Daml Finance includes an Election template. Once an election has been made, it is lifecycled, claimed and settled using standard Daml Finance functionality.
Modeling instruments can be complex: Daml Finance derisks and accelerates it with a range of proven capabilities that provide a high level of flexibility.
Daml Finance models a range of commonly used instruments out-of-the-box; provides the Contingent Claims library to accelerate custom instrument modeling; and allows you to code your own instruments for ultimate flexibility. External factors such as market observables and stakeholder elections are efficiently handled.
The Contingent Claims library provides sufficient flexibility to allow business analysts to create new instrument types in real time, without the need for software development and releases.
Since Daml Finance is asset agnostic, activities such as issuance, custody, lifecycling and settlement will work with any instrument types, regardless of how they were created. There is no need to build siloed applications that provide similar functionality for different instrument types.
Finally, by providing a standard approach to instrument modeling, Daml Finance makes it easier to compose applications across multiple providers, such as may be achieved through the recently announced Canton Network.
More information on the out-of-the-box instruments in Daml Finance can be found here, Contingent Claims library is here, and custom coded instruments here. In addition, you can contact us to learn more and speak with an expert.