Hello, my name is pyramidmaker, and I am one of the founders of Solidi Labs. In this post, you will find our draft grant proposal for Shorty. We have been working on hedged and short strategies using decentralized lending protocols for a while now, and we are very excited about building with Ajna.
Shorty
Request
Receiving Address: 0x4060550F3E6687F0269E73B9179Ff05d0A84B208
AJNA Amount: 1,800,000 ($160k, assuming Ajna price = $0.10, and ~10% average slippage cost)
Applicant and Team Information
Applicant Name: @pyramidmaker
Email: louloufromtheblock@gmail.com
About you and/or the team:
Solidi Labs: Team of Engineers and technical PMs, specialized in web3 product development, smart contract development, and on-chain quant strategies. Maker ecosystem actor. The founding members are:
@pyramidmaker: Former Starknet CU facilitator. Former PM and CEO of a quant risk solution for crypto lenders. 10 years leading products in startups from seed to series C. Engineering and Quant Finance background.
@lakonema2000 : Data, Quant, and smart contract Engineer. Former tech lead for Aave on Starknet. Former tech lead at Consensys (RWA tokenization, protocol engineering). Quant background (PhD on causality statistical estimation), tech lead on Quant products in early stage to late stage companies.
Additional Links: Our last build is Hedgerly, which we will make available for investment by the Maker subDAOs, and which aims at solving the very old problem of impermanent losses (and straight up losses). Hedgerly is an hedged LP position that brings 15-35% APY at 1.5-2% volatility, for a share ratio between 8 and 20. Hedgergly leverages decentralized lending protocols integration to take a short position in a very similar fashion as we propose to integrate Ajna in this project. Hedgerly has gone through 3 different iterations since October and is now production-ready.
Project Information
1. What is it?
The dream of both degens and more buttoned-up crypto traders, a way to short mid-cap token pairs in a fully decentralized fashion, with leverage.
Shorty is a set of short position management smart contracts and an interface enabling users to open, manage, and close short positions on token pairs (basequote, e.g., PEPE-ETH) that meet two conditions:
i. A pool base-quote (e.g., PEPE-ETH) on Ajna exists
ii. A DEX pool base-quote exists with sufficient liquidity
2. What problem is being solved, how?
1st problem: Most tokens can’t be shorted in a decentralized fashion. Only large-cap tokens (and token pairs) can be shorted using fully decentralized protocols like Aave. Using Ajna, we will enable users to short a much wider set of tokens.
2nd problem: Even if people were using Ajna directly, managing short positions is an involved process (even more with leverage) which not many people can or want to handle. We make it very easy for users to open, monitor, manage, and close their short positions.
3rd problem: Ajna is a more complex protocol than Aave. Unlike a traditional margin position, the health of the positions won’t just depend on the price of the shorted asset (against the quote) and the amount of collateral, it will also depend on the state of the Ajna pool (i.e., the LUP, and the liquidity in the orderbook between the LUP and TP).
Our objective is to provide an easy-to-use interface that abstracts the complexity from the users while providing actionable metrics and notifications.
3. How will this project be a source of growth or success for Ajna? Please include a step-by-step summary of how you imagine the completed project will affect Ajna.
i. The project will attract TVL to Ajna by abstracting the complexity of opening, managing, and closing leveraged and unleveraged short positions. Shorting mid-cap tokens using only decentralized infrastructure has been impossible until now, and only and infrastructure like Ajna can enable it. Daily, about $10Bn of short volume is traded on mid-cap tokens on centralized exchanges.
For a sense of the potential, on a centralized exchange like Binance, the long short ratio for liquid pairs like BTCUSDT hovers around 1, which means that there are as many long positions as short positions (see Coinglass dashboard).
ii. The project will share revenues with Ajna, and use revenues to provide liquidity on Ajna pools. The funds assigned to providing liquidity on Ajna will provably not be used for any other purpose until year 5.
Year 1 to 3: 25% of revenues are sent to Ajna treasury. 25% of revenues are kept in a wallet dedicated to providing liquidity on targeted pairs on Ajna.
Year 4 and 5: 12.5% of revenues are sent to Ajna treasury. 25% of revenues are kept in a wallet dedicated to providing liquidity on targeted pairs on Ajna
We reserve the right to pick which pair to provide liquidity on. We will prioritize pairs that already have short demand, or new pairs that our users would like to short.
Going through the main user flows step-by-step assuming the user is looking to short PEPE-ETH for 1 ETH. Note that the user is shorting the pair PEPE-ETH, for her PEPE is the base and ETH is the quote, and we will use this convention below. It might be confusing to experienced readers because in the code, white paper, and documentation PEPE would be referred to as the quote and ETH as the base.
A. Open a position
- We check that there is an Ajna pool for PEPE-ETH (PEPE being quote as per Ajna definition). A pool with the base asset could in fact suffice to short (e.g., PEPE-DAI pool would do)
- We check that there is an AMM PEPE-ETH that has enough liquidity vs. the size of the trade. We use off-chain quant models to assess the risk
- The user chooses a health factor for their position. We use health factor because it is a simple concept to grasp for users. From this health factor, the LUP, and the liquidity around the LUP, we derive the price bucket at which the user will deposit their ETH
- The user gives an allowance of 1 ETH to the ShortyPool contract
- The ShortyPool contract deposits 1 aETH and borrows PEPE
- The ShortyPool contract exchanges PEPE against ETH on the AMM (if user wants to keep leveraging, or DAI, if it’s the last loop)
B. Trade with leverage
Users can then put the DAI or ETH back in Ajna, borrow more PEPE, sell PEPE against DAI or ETH, etc. We will provide “quantized” leverage to remain gas efficient and simple in a first iteration, i.e., the users will have the choice between different leverage multipliers but won’t be able to choose any value on a continuum.
C. Manage a position
The user can check the health of their position, and add collateral if need be. A healthy position has a health factor > 1. We compute the health of a position as a function of TP, the LUP, the liquidity between TP and LUP, and a liquidity benchmark to compare the liquidity between TP and LUP to.
D. Liquidations
If a position has a health factor < 1 on Shorty, they will be liquidated automatically on Ajna.
4. What is/are the objective(s)?
i. Increase Ajna TVL
ii. Solve the problem of shorting mid-cap tokens through a super easy-to-use interface for experienced and less experienced traders
iii. Re-use part of the revenues to directly provide liquidity to Ajna pools
iv. Provide advantageous token incentives to AJNA token holders
Tokenomics proposal
We want to incentivize Ajna token holders community to use and promote Shorty. We will put forward a proposal for a tokenomics scheme that would heavily benefit Ajna token holders.
5. What is/are the deliverable(s)?
Note that we split our original proposal into phase I and II. Phase I is the scope of this proposal, we will still keep enough details for phase II for community members to understand the roadmap.
Phase I
Smart contracts
- ShortyPool: one contract for each pair. Managing all the short positions on that pair
openPosition(uint256 _amount, uint8 _leverage)
closePosition(uint256 _amount)
addCollateral(uint256 _amount)
removeCollateral(uint256 _amount)
getHeathFactor()
increaseHealthFactor(uint256 _targetHF)
decreaseHealthFactor(uint256 _targetHF)
Interface
We will develop a minimal interface on a single pair so community members can test and provide feedback.
Phase II
Smart contracts
- ShortyFactory: deploys a ShortyPool for a new pair
- ShortyToken: shorty token contract + incentives for users and community members
Interface
User workflows:
- Open short positions (if necessary conditions are met)
- Choose leverage
- Collateral management (add or remove)
- Manage positions (increase or decrease health of a position)
- Receive notifications about positions that are getting close to liquidation due to the pool state rather than price evolution
- Close positions (unwind position and withdraw funds)
We will design the user flows in greater details, and will present them to the community for feedback, but to give you a sense, we would have a very simple interface:
6. What is the timeline for completing the deliverables?
Phase I to be delivered within 3-4 months. Bi-weekly updates to be provided on the forum.
Phase II will be about incorporating user feedback, making the product scalable (on any pairs, permissionless deployment), full audit, and building all the user workflows in the interface.
7. What level of support do you anticipate needing through the duration of the project?
We mostly expect support in testing the solution, providing feedback, and promoting it once feedback will be satisfactory. We will be putting forward incentives for Ajna token holders.
8. How often will progress reports be published to the forum?
We will provide updates on the forum twice a month. We will engage the community around the UX we are building and the choice of health metrics for short positions. After testnet launch, we will be actively seeking feedback and testers.
9. What are the estimated costs associated with the full completion of this project?
To allow us to deliver phase I, we need ask a little less than 50% of the total price we originally quoted, i.e., $160k.
- Smart contract development cost: $60k
- Off-chain quant models, notifications back-end: $60k
- UX, Technical product management, tokenomics, and market-making program: $20k
- Front-end development: $20k
10. If applicable, How will the project be maintained after completion of the grant?
The most important for the maintenance of the project is to create a business model. We are sharing revenues with Ajna, so the incentives are fully aligned between us and the Ajna token holders. We reserve the right to update the business model based on user feedback and market context.
We are proposing:
- 50 bps cut of the traded volume
- 200 bps cut of the profits our users make on profitable positions
Additional Information
11. How will you handle a delay in your project timeline?
- We will inform the community as soon as we understand there will be a delay
- We will provide transparency on the reasons for the delay
- We will keep on delivering. We will complete the scope and might ask for retroactive funding if the delay is justified
12. How will you handle a scenario where the project can’t be completed due to insufficient funding or other factors?
- If we realize within 1-2 months, give the funds back
- If we don’t realize early, we will finish the project anyway and might ask for a retroactive grant if there is a good reason for the extended scope
13. How will you handle a scenario where the project is completed, but significantly under-budget?
We will give the extra funds back, or propose to token holders that we provide those funds as incentives via our interface