π¦Market Making (ZLP Vault)
Last updated
Last updated
Below are the topics that we will be covering in this section:
ZLP fund provides liquidity for leveraged traders and spot traders on Zeno. In addition, it also functions as the counter party to the traders who trade on Zeno. Consequently, the profits and losses from counter trading on the platform also accrue to liquidity providers.
The value of the ZLP fund is calculated using the following formula:
PnL = Net profit/loss of all the current open positions, where profits to traders are registered as losses to ZLP and losses to traders are registered as profits to the fund.
Mechanics of ZLP Vault:
ZLP depositors earn trading fees, borrowing fees, and swap fees from traders.
Liquidity in the ZLP is reserved to pay out profits to traders.
In the event of traders incurring losses, their collateral is seized and added to the ZLP as profit derived from counter trading.
Net long/short exposure of ZLP is maintained close to zero with minimal impact from individual trades through various protection mechanics.
Below, we share with you the technical architecture on our Market Making feature:
User deposits assets into Zenoβs ZLP & receive ZLP tokens
User stakes ZLP tokens at Zeno to earn yields & incentives
The liquidity in the ZLP vault is used to market make for traders at Zeno, and consequently accrues profits/losses from counter trading & fees in the form of m.USDC
Collected fees from traders are redistributes back to the ZLP depositors along with esZENO emission rewards
The ZLP fund will consist of the bluechip assets highlighted in the table below. As ZLP fund acts as liquidity for traders, it is highly important to ensure that there's sufficient liquidity for each type of asset for leveraged trading and swapping. Zeno has assigned a target weight to each of the asset in the ZLP fund to achieve an optimal allocation of the fund. Target weight could be adjusted in the future to suit the market and trading conditions.
By depositing assets in the ZLP vault, you will earn the following benefits:
50% of Zeno's protocol revenue, paid in m.USDC
Profits (or losses) from counter trading on Zeno
esZENO rewards based on the size of your ZLP deposits & emission rates
Users can choose to deposit any asset listed above into the ZLP fund. When users make a deposit, Zeno will mint ZLP tokens of equal value to the depositor. On the other hand, when users withdraw assets from the ZLP fund, their ZLP tokens are burned and they receive back assets in equal value.
Below, we highlight what happens when a user deposits or withdraws funds from the ZLP pool.
Deposits: Funds are deposited into the ZLP fund through the minting of ZLP tokens. e.g. if the price of ZLP is $1.00, a user can mint 1 ZLP by depositing $1.00 worth of eligible tokens (m.USDC, m.USDT, BTC, WETH, METIS)
Withdrawals: Funds can be withdrawn from the ZLP fund through the burning of ZLP tokens. e.g. if the price of ZLP is $1.00, a user can burn 1 ZLP to redeem $1.00 worth of eligible tokens (m.USDC, m.USDT, BTC, WETH, METIS)
Note that deposit fees are charged when you deposit an asset whose actual weight is higher than the target weight to prevent the fund from having excessive amount of one type of asset. To avoid paying deposit fees, users can deposit assets whose actual weight is lower than the target weight. Similarly, withdrawal fees are charged on an asset whose actual weight is lower than the target weight to prevent the asset from being withdrawn. To avoid paying withdrawal fees, users can take withdraws in assets whose actual weight is higher than the target weight.
Zeno put in multiple measures to minimize the risk of LPs taking on too much one-sided exposure, allowing them to continually earn on protocol generated fees.
Zeno reserves the liquidity in ZLP to be paid as profits to traders. There is a max utilization for ZLP, beyond which new positions are not allowed to be opened (traders are still allowed to reduce their OIs). This parameter is in place to ensure some liquidity is always available for LPs to withdraw.
Each individual trading position will have an in-profit price target where a position will be automatically closed for users. This guardrail is put in place to limit the downside to the LPs. The ADL price is market-specific and is a function of initial margin requirement. It is set at level that balances between the risk for LPs vs. the attractiveness for traders.
Zeno keeps track of the net global PnL of all traders against the ZLP pool. Once the net global PnL hits a percentage threshold relative to the ZLP's TVL, the protocol will start auto deleveraging open positions, starting from the most in-profit positions, to de-risk the overall platforms and LPs.
The Profit reserve buffer is calculated using the formula below:
ProfitReserveBuffer = 1 + NetGlobalPnL / (ZLP's TVL)
Each market will have its own open interest limit, which can be set separately for the short side and the long side.
The Open Interest Limit defines the maximum ongoing open interest that each asset can have on each side, beyond which new open interest are not allowed.
The Funding Rate is charged on the tradersβ position, similar to the borrowing rate. The Funding Rate helps bring a balance between long and short OI on Zeno, thus ensuring our LPs are not too exposed to one side of the market. Zeno utilizes a velocity-based funding rate model. Instead of the typical model where the long-short skew determines the funding rate, our model have the skew determine the velocity of the funding rate.
This slight adjustment in the formula has a large implication. With the traditional model, there is no incentive to completely eliminate the skew as funding would immediately go to zero, and some arbitrage strategies -e.g., carry trade, would no longer be viable.
Zeno employs a mechanism called "Adaptive Pricing" as another way to incentivize / penalize traders to help bring balance between the long and short open interest of each trading asset. When a user opens or closes a trading position, the Adaptive Pricing mechanism applies a premium or a discount on top of the oracle price based on the resulting skew after the transaction is executed between the long and short open interest of the asset.
If the long open interest is larger than the short open interest, a premium will be applied to the price of the asset. On the other hand, if the short open interest is larger than the long open interest, a discount will be applied to the oracle asset price. The premium/discount from the Adaptive Pricing mechanism will encourage or discourage traders to open long or short positions on the asset accordingly.
Below is a table summarizing the premium and discount applied to the price in different scenarios.
Max Skew Scale (USD): 300,000,000
ETH Oracle Price (USD): 1,800
ETH Open Interest: 0
Alice opens long position on ETHUSD with the position size of $1M. The price that Alice will get is calculated as follows:
marketSkew = 0
premiumDiscountBefore = 0 / 300,000,000 = 0
premiumDiscountAfter = (0 + 1,000,000) / 300,000,000 = 0.00333333
priceBefore = 1,800 + (1,800 * 0) = 1,800
priceAfter = 1,800 + (1,800 * 0.00333333) = 1,805.999994
adaptivePrice = (1,800 + 1,805.999994) / 2 = 1,802.999997
Alice will enter this position with the adaptive price of 1,802.999997. This price is not in favor of Alice, because Alice opened a long position that caused the market to skew towards the long side. Hence, Alice received a premium vs. Oracle price on her entry price from the Adaptive Pricing mechanism.
Bob then opens a short position on ETHUSD with the position size of $500k. Assuming there was no price movement after Alice opened her position and the Oracle Price of ETH is still at $1,800, the price that Bob will get is:
marketSkew = +1,000,000
premiumDiscountBefore = 1,000,000 / 300,000,000 = 0.00333333
premiumDiscountAfter = (1,000,000 + -500,000) / 300,000,000 = 0.00166667
Note that the size delta for Bob's position will be negative as he is shorting.
priceBefore = 1,800 + (1,800 * 0.00333333) = 1,805.999994
priceAfter = 1,800 + (1,800 * 0.00166667) = 1,803.000006
adaptivePrice = (1,805.999994 + 1,803.000006) / 2 = 1,804.5
Bob will enter his short position at the adaptive price of 1,804.5. This is a favorable price to Bob because Bobβs position reduced the market skew from the long.
For more information, please check out the Adaptive Pricing calculator here.
# | Asset Type | Assets | Target Weight |
---|---|---|---|
Open Interest Skew | Adaptive Pricing Applied on Entry / Close Price |
---|---|
1
Stablecoin
m.USDC
25%
2
Stablecoin
m.USDT
25%
3
Volatile Asset
WETH
50%
Long > Short
Premium
Short > Long
Discount