Git Product home page Git Product logo

legato-finance's People

Contributors

pisuthd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

legato-finance's Issues

USDC as Settlement

Having a separate YT for each vault negatively impacts user experience. We should use a single currency such as USDC, that users can buy and claim yield for all pools simultaneously. The DEX router should be added accordingly.

PT includes accumulated staking rewards

The current logic lacks the inclusion of accumulated staking rewards prior to the time of conversion.

For example, if we have 1 Staked SUI object containing 1 SUI that has been staked for 10 epochs, the rewards from the 10 epochs will be excluded when converting the object into PT tokens.

Yield Claim Panel

Create a UI panel for buying and selling YT tokens on the AMM. This panel should allow YT token holders to claim yield from the surplus.

Enhance Pending Withdrawal Efficiency

When withdrawing, the system selects Staked SUI with the lowest value from the vault to unstake and return SUI tokens to the user. The remaining SUI tokens are locked up in the pending pool.

We may need to improve capital efficiency and find a way to stake SUI tokens back with a certain logic ideally implementing together with #42

vUSD

We would like to extend the use case of PT as well as allow staking SUI with stablecoins and issue vUSD that earns staking rewards without the risk of volatile SUI price.

At a high level, a portion of the input will be used for delta hedging on a third-party external platform. This feature may need to set a cap.

[API] Track SUI Historical APY

We have the backend that tracks necessary info like token price, as the project is closely related to the network's APY. If possible, we may update the API to be able to track and store APY data, allowing the frontend to conveniently access the data and display the historical APY of the Sui network.

Re-Implement Claim Logic

The logic for claiming rewards from the surplus has been removed in the latest version of the vault.

Once the relevant DEX has been updated, we should reimplement this logic.

Exit the Position with YT & PT

The vault is supposed to use a combination of PT and YT to exit the position. Since PT is typically minted at a value lower than the matured vault, YT is needed to fill the gap.

New Method for Listing Validators

Listing validators with the input dropdown has limited space to display information. Although we have a sliding panel, it would be much better to have a single modal to show all the information.

Unstoppable Vault

As mentioned in #23, we should allow PT token holders from the expired vault to migrate their PT to the new ongoing vault.

The concept eases the pain of manually interacting when the vault reaches its maturity date. The system must have two active vaults at the same time unless the system enters a paused state.

Minting PT at certain amounts doesn't get tokens

Due to an unknown reason, as shown in the screenshot below, when minting PT tokens at a certain amount, the contract won't send back PT as expected. We need to investigate further to confirm the issue.

Screenshot from 2024-03-14 22-07-15

Redesign Portfolio Page

The current portfolio page is a bit confusing, with unclear sections. It could benefit from a more intuitive layout and additional information to make it user-friendly.

Coin Metadata

Both PT and YT lack coin metadata, which doesn't look good when using third-party services like wallets or block explorers. I suggest implementing the same approach as in create_currency()

New Landing Page

Building out a new landing page to replace the existing Canva website.

Also, the new landing page is merged with the dapp, allowing us to maintain everything under a single roof.

LP Deployment Failed

By unknown reasons, LP deployment has failed when calling add_yt_circulation(), which was supposed to internally setup LP. It's assumed that the type is supposed to be passed instead of being hard-coded.

Finalize Public Vault

Finalize the public version of the protocol by adding all necessary test cases. Ideally, enable trading of PT and YT through Legato's DEX.

Update Gitbook

Update the Gitbook to align with the latest information of the project and then attach the link to the website.

Helper API

We need to build an API for two main purposes:

  • Store SUI token prices in USD instead of fetching directly from CoinMarketCap to save external API call quota.
  • Store historical data on Legato's DEX.

Logic for Issuing VAULT Tokens

We've introduced the VAULT token to pair with YT tokens in the AMM. Unlike SUI, which may result in the loss of staking opportunities and be costly. The VAULT token is designed to function as the settlement currency for the entire system.

However, there's a need to create the logic for a fair launch, specifying the amount released per epoch and identifying who qualifies to receive it.

Lag Staking

When staking, we require at least 1 SUI. Currently, 1 SUI is valued at $1.8 USD. However, if the price of SUI increases like $100 USD, 1 SUI may be not affordable for most of users.

Given the nature of SUI, where every smart contract is a self-sovereign object, we could allow users to deposit their desired amount, even as low as 0.1 SUI, until it reaches a certain threshold. At that point, the object would internally stake the tokens to the staking pool.

New DEX Spec

We've our internal DEX for vault tokens using the constant product formula k = x * y, where we must provide token pairs equivalent to the value of vault tokens. Considering the system issues vault tokens (PT) for each timelock vault, the more timelock vaults we set up, the more liquidity we must prepare.

Legato vault tokens possess distinct characteristics that must be taken into account during the development of a new DEX. These include:

  • PT tokens represent future derivative forms of staked SUI across various timeframes
  • PT tokens are capable of being burned and minted into other PT tokens
  • The liquidity pool of PT-to-PT tokens is not as stable as that of USDC-USDT but is mathematically predictable

We may need to draft out the DEX specification that is suitable for trading our vault tokens and requires less liquidity to operate.

Hybrid DEX

AMM is convenient but requires someone to add liquidity first and take the risk of impermanent loss. The order book is an alternative where upfront liquidity is not needed.

We would need to implement an order book system alongside AMM to allow users to trade Staked SUI and PT conveniently

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.