Inspiration
The world of digital assets creates more opportunity in this increasingly digital world. More and more, traditional intermediaries and new entrants into the financial services industry are realizing that the potential of blockchain, its widespread distribution of financial products, is the benefit of liquidity.
Liquidity is very crucial in financial markets; the lack of it is very costly and very problematic for both the issuers and the holders of the financial assets, the blockchain technology presents another way to distribute and get your product out there to those that want it.
Effectively enabling and making distribution of financial products fairer, cheaper, more cost effective and therefore, enhancing the liquidity profile of what typically has been very illiquid assets.”
What it does
Our mission is to transform the traditional asset management and lower the barrier to entry for capital and talents.
DEXTF is a protocol on blockchain that lets anyone create a digital fund in minutes and enables investors to seamlessly invest in funds worldwide. Our technology stack can be used to create, launch and invest in funds with any tokenized digital assets and can be customized to the needs of large financial institutions.
Essentially DEXTF is an enabling technology that allows delegation of investment decisions to professional third-parties without transferring ownership of Digital Assets.
DEXTF provides, among others, decentralized custody for digital portfolio managers, increased transparency and a more cost efficient solution.
The proposed application is part of a larger project that aims at addressing four fundamentals:
- Custody: the underlying blockchain technology must enable the investor to retain full control of the owned assets without intermediaries, while enabling the Portfolio Manager to operate on them;
- Pricing: we needed to deal with the problem of pricing of both the components and the fund itself;
- Rebalancing: A structure that allows Portfolio Managers to rebalance portfolios without giving them the full control over the component assets;
- Execution: we wanted a platform that allows cheap real-time subscription, redemption and transferability.
These are required to support a thriving digital asset management infrastructure. By addressing all these four challenges, DEXTF will not only allow a much more secure development of digital asset management, but also reduce infrastructure costs (e.g., custody), and increase transparency. In this proposal we focus on the first and most important point: custody. Indeed we believe that the Solana blockchain is quite unique because it provides high speed and a better user experience without sacrificing security.
Our final objective is for the Applicant to become one of the first solutions that allows the transition from a traditional management of tokenized assets to a real cryptographically-secure asset management of digital assets -- and provide professional asset managers with the appropriate infrastructure and decentralized custody services to be able to securely manage cryptographic assets. Therefore in the proposed solution we use the characteristics of the blockchain to solve the custody problem of digital assets, so that the custodian is not a legal entity, but a certified program that acts as an escrow for the fund components.
How we built it
Solana architecture
Given the Solana blockchain’s peculiar stateless architecture, multiple accounts are needed in order to store funds’, asset’ and tokens’ information. The architecture’s core consists of one main program, called escrow program, which is responsible for the management of each fund and the creation of every account needed for the platform to properly function.
This program cooperates with both:
- the system program, which is the native program able to create new accounts
- the token program, a utility program which manages the creation of new token’s instances and the initialization of new accounts able to hold tokens. In order to create a new fund, it is necessary to create:
- the mint account of the fund’s token, which will define the token representing the fund, its supply and will allow token holders to freely transferfund tokens;
- a token account for every asset that composes the fund, owned by the escrow program. These accounts will allow the escrow program to hold and manage the assets of the users wanting to participate in a given fund;
- an asset state account for every asset token account, these accounts will help store additional information about every single asset, such as the quota of the asset granting a unit of the fund token;
- a state account related to the fund, which holds all the information such as the address of the fund, token, the number of assets included in the fund, etc. The following schema represents the entire programs and accounts architecture related to the management of one fund.
The key parts are:
On-chain Program
The on-chain program is developed in Rust programming language and represents the core of the project. It contains the business logic and the rules to create new funds with all underlying assets and make them available to investors. The shares of a fund owned by an investor are represented by LP tokens that are specific for each fund.
Protocol library
A set of JS modules to manage the interactions with the Solana blockchain (creation of a fund, issuance of a fund, etc.)
Web Ðapp
The front-end is a web-based app that can run on any browser, allowing the system to be platform independent. It has been developed using NuxtJS and it is currently compatible with Phantom Wallet only.
The User Experience (UX) is designed to make the actions of the various users (fund managers and investors) as simple as possible.
The user interface is divided in two parts:
Fund Manager UI
The “Manage Funds” section shows all the funds that the Fund Manager created and manages. A step-by-step wizard will guide the Fund Manager through the creation of a new fund.
Investor UI
The “Invest/Redeem Funds” section shows all the publicly available funds. The Investor can perform, by a step-by-step wizard, two operations: Invest in a fund and Redeem fund.
Challenges we ran into
Migrating from Ethereum to Solana is not easy. The structure of a program and the way accounts are managed between the two blockchains are very different, therefore the system has been totally redesigned to make it compatible. Even if the official documentation is very comprehensive, there is a lack of tutorials and examples due to the early stage of the Solana project, making it harder for developers to start working on this blockchain.
Accomplishments that we're proud of
The migration of our V1 protocol has been completed and is now available on solana devnet. Transactions are very fast and the user experience has been improved a lot. We think we achieved great results in performance and scalability, without losing decentralization.
What we learned
Starting with a very easy use case is always a good choice. The first implementation should do the very minimum actions that have been planned for the whole project, then it can be integrated and expanded with little steps. Tests are very important for both front-end and on-chain program development in order to make the integration as smooth as possible.
The community is awesome and you should never be afraid of asking for support in the dedicated channel if you need it.
What's next for DEXTF decentralized traded funds
Our plan into 2021 and beyond is to work with market participants to understand their needs to accelerate innovation and contribute to the creation of a regulatory framework that can help financial institutions to enter the digital asset management space in a controlled and compliant way.
Going forward we will also work to involve market makers and exchanges (decentralized and non) for our rebalancing function to get access to best execution (best rates and minimal slippage).
Built With
- javascript
- nuxtjs
- phantomwallet
- rust
Log in or sign up for Devpost to join the conversation.