Vektor Launches Concentrated Liquidity Support!
🎉 We're very excited to announce the new support for concentrated liquidity in Vektor. With this powerful upgrade, you can now use Vektor's existing LP
function set to create, interact with, and manage your concentrated (aka 'range') positions across all supported chains and venues. Now Uniswap v3 (and other concentrated liquidity venues) can seamlessly work with VXL functions like LP.DEPOSIT
, LP.WITHDRAW
, LP.POOLS
, LP.POSITIONS
etc. See some powerful use cases below.
🔧 Deposit and Withdraw Range positions
It's easy to create, add to, reduce, or withdraw range positions with Vektor. Just use the existing LP.DEPOSIT
or LP.WITHDRAW
functions, but include a RANGE=[min,max]
parameter. Vektor takes care of the rest!
You can also use the LP
functions with PAIR
type pools (e.g. Sushiswap) or MULTI
type pools (e.g. Curve). Vektor's job is to make the experience slick and consistent, without you needing to worry about the technical differences.
🔧 Alert me when a position is no longer in range
Our remarkable formulaic alerts functionality can keep your finger on the pulse when it comes to monitoring your range positions, even if you're not using the app. Is your position no longer in range? - we can let you know by email!
🤓 For the VXL nerds: you could also set up an alert for when you are 'almost' out of range (say within 10% of the upper or lower ends of the range). Behold the below.
VXL code for "almost out of range" Alert (click to view)
ALERT(OR((LP.POSITION(LP.POOL([WMATIC, USDC], UNISWAP_V3, POLYGON), MY_WALLET).RANGE.PRICE > (0.9 * LP.POSITION(LP.POOL([WMATIC, USDC], UNISWAP_V3, POLYGON), MY_WALLET).RANGE.UPPER)),(LP.POSITION(LP.POOL([WMATIC, USDC], UNISWAP_V3, POLYGON), MY_WALLET).RANGE.PRICE < (1.1 * LP.POSITION(LP.POOL([WMATIC, USDC], UNISWAP_V3, POLYGON), MY_WALLET).RANGE.LOWER))), NAME="ALMOST OUT OF RANGE!")
Explanation:
The ALERT()
is the function to create the alert
The OR( , )
sets up two conditions to trigger the alert; either when the current pool price is greater than 90% of the upper bound, or less than 110% of the lower bound.
The LP.POSITION(...).RANGE
is used to access the position range information:.RANGE.UPPER
extracts the upper range value, for comparison using >
.RANGE.LOWER
extracts the lower range value, for comparison using <
.RANGE.PRICE
extracts the current pool price
🔧 Simulate entering a position before doing it, with live-updating data
Use our LP.DEPOSIT_QUOTE
or LP.WITHDRAW.QUOTE
to compute and display all the important data about your proposed range positions, including required amounts and prospective ownership. Play around with different ranges, watch them update live based on pool conditions, build alerts on the data points, or go ahead and execute!
There's so much more to tell you about Vektor's LP
functionality. To learn more you could read our previous announcement, Vektor Launches LP functionality, where we also highlight general LP use cases including:
- Query and filter multi-chain pools, with live updates;
- Deposit and withdraw liquidity, with minimum steps;
- Understand all of your on-chain LP positions in one view; and
- Set an Alert for when a pool becomes imbalanced
Or, for the ultimate detail, you can browser our LP function spotlight full documentation which includes an explanation of the Vektor LP model, full function specifications, and loads of examples.
More updates coming soon... or check out our Product Update History for updates you may have missed. 😎