Fast Exits via Market Makers
In situations where users seek to exit more quickly than the native vPool liquidity allows, a fast exit flow can be enabled through the use of market makers. This allows users to liquidate their positions (either the tokens or the exit tickets) without waiting for queue fulfillment.
There are two primary mechanisms available for fast exits:
Selling the liquid token directly
Selling the exit queue ticket (NFT)
1. Selling the Liquid Token
If the receipt token representing staked ETH is liquid, it can be sold on secondary markets or through OTC trades. The user can initiate this action at any time to receive ETH (or another asset) instantly.
Considerations:
This method bypasses the unstaking process.
Token price may trade below intrinsic value, especially in volatile or illiquid conditions.
User does not interact with the exit queues.
2. Selling the Exit Queue Ticket (NFT)
Instant liquidity for the seller
Yield opportunity or arbitrage for the buyer
Flow for Ticket Transfer
User initiates exit request
send $INTEGRATION_CONTRACT_ADDRESS "requestExit(uint256)" $AMOUNT_OF_TOKENS_TO_EXIT
User receives exit queue ticket(s) (ERC-721).
User lists or negotiates sale of ticket
An integration with one or multiple market maker can allow user to sell the exit tickets.
Pricing may depend on ticket status (
unfulfillable
,partially fulfillable
, orfulfillable
), size, and estimated time to fulfillment.
Transfer ticket
Execute an ERC-721
safeTransferFrom
to move ticket ownership to buyer: This can be done by the buyer after approval from the user, through a smart contract for example.send $TICKET_CONTRACT_ADDRESS \ "safeTransferFrom(address,address,uint256)" \ $FROM_ADDRESS $TO_ADDRESS $TICKET_ID
Buyer eventually claims ETH
When ticket becomes fulfillable, the new owner (market maker) submits a claim:
send $EXIT_HELPER_CONTRACT_ADDRESS \ "multiClaim(address[],uint256[][],uint32[][])" \ $ARRAY_OF_EXIT_QUEUE_ADDRESSES \ $ARRAY_OF_ARRAYS_OF_TICKET_IDS \ $ARRAY_OF_ARRAYS_OF_CASK_IDS
Last updated
Was this helpful?