ACTUS - The algorithmic representation of financial contracts

With the growing #defi community I was thinking how we could contribute to it in a more direct way, I then remembered an idea (circa 2014) called ACTUS - Algorithmic Contract Types Unified Standards, and decided to look them up.

ACTUS claims to describe the vast majority of all financial contracts with a set of about 32 generalized cash flow exchange patterns, or what they call Contract Types (CTs). They do this by by focusing on the main distinguishing features.

Their technical specification seems to have been well defined and stable, and while the original idea was to write these in Smart Contracts for use on-chain, they seem to have a reference implementation in Java. (Behind a registration form, but planned to be open source in future)

ACTUS aims to be the technological core of a future open source community (us?) that will maintain and evolve standardized financial contract representations for the use of regulators, risk managers, and researchers.

From what I recall ACTUS, combined with the successful completion of the FSB LEI effort, will impact every activity related to financial risk assessment: it will significantly improve regulation of individual institutions, monitoring of systemic risk, and enterprise risk management. It will also make possible new avenues of research into systemic risk that will make financial markets safer and more efficient.

Which is important given that the #defi community is currently becoming overzealous building derivatives on-top of derivatives lol.

Maybe this might be something you’re interested in @barry ?

1 Like

Nils Bundi got back to me:

ACTUS for Ethereum, the ACTUS Protocol developed by atpar AG, co-founded by me and others including early Ethereum contributors, is doing exactly that. You can find more infos here https://actus-protocol.io and our codebase here https://GitHub.com/atpar.

So looks like it already exists which is amazing!

I agree there should be standards and there has been some EIPs proposed as well: https://github.com/ethereum/EIPs/issues/2212

I think the biggest hurdle is the protocols with the most activity (https://loanscan.io/loans#borrow-volume) have been quiet on standards. This maybe for competitive reasons, like if compound and dY/dX both had the same withdraw and deposit interfaces it would make it much simpler to build a proxy that can shift balances balances between the two, right now there is some lock in due to having to build a custom integration for each.

It may also require Maker giving up their dogma of 5 characters or less function names.