From 6e53a071f9faaa2f7fc0a15a3f366ba8a653ea54 Mon Sep 17 00:00:00 2001 From: vfat Date: Thu, 4 Jul 2024 15:30:03 +0300 Subject: [PATCH 1/2] start adding automation docs --- automation/compound.md | 27 +++++++++++++++++++++++++++ automation/harvest.md | 25 +++++++++++++++++++++++++ automation/index.md | 11 +++++++++++ img/automation/compound.png | Bin 0 -> 13191 bytes img/automation/harvest.png | Bin 0 -> 14441 bytes img/automation/settings.png | Bin 0 -> 4895 bytes 6 files changed, 63 insertions(+) create mode 100644 automation/compound.md create mode 100644 automation/harvest.md create mode 100644 automation/index.md create mode 100644 img/automation/compound.png create mode 100644 img/automation/harvest.png create mode 100644 img/automation/settings.png diff --git a/automation/compound.md b/automation/compound.md new file mode 100644 index 0000000..5e68583 --- /dev/null +++ b/automation/compound.md @@ -0,0 +1,27 @@ +# Automatic Compound + +Auto-Compound automatically compounds your positions at the optimal frequency. + +This is calculated using a formula that takes in the position size, the APR and the current gas cost. + +There is a 1.8% auto-compound fee on rewards, part of which is used to pay for gas costs (no further user input needed). + +The setting can be enabled in two places: + +Firstly in the general settings (gear icon on the top right). + +![Settings](../img/automation/settings.png) + +Secondly in the Compound tab of any active position. + +![Compound](../img/automation/compound.png) + +It is enabled once per chain and applies to all positions on that chain. + +The general setting of Automation needs to be enabled as well, so this requires two transactions: +a) Enable Automation +b) Enable Auto-Compound + +These can then be disabled in the general settings. + +Auto-Compound and Auto-Harvest are mutually exclusive, only one per chain can be enabled. \ No newline at end of file diff --git a/automation/harvest.md b/automation/harvest.md new file mode 100644 index 0000000..441e40b --- /dev/null +++ b/automation/harvest.md @@ -0,0 +1,25 @@ +# Automatic Harvest + +Auto-Harvest automatically harvests your positions up to once per day, with the minimum earnings currently set to the equivalent of $50. + +There is a 1.2% auto-harvest fee on rewards, part of which is used to pay for gas costs (no further user input needed). + +The setting can be enabled in two places: + +Firstly in the general settings (gear icon on the top right). + +![Settings](../img/automation/settings.png) + +Secondly in the Harvest tab of any active position. + +![Harvest](../img/automation/harvest.png) + +It is enabled once per chain and applies to all positions on that chain. + +The general setting of Automation needs to be enabled as well, so this requires two transactions: +a) Enable Automation +b) Enable Auto-Harvest + +These can then be disabled in the general settings. + +Auto-Harvest and Auto-Compound are mutually exclusive, only one per chain can be enabled. \ No newline at end of file diff --git a/automation/index.md b/automation/index.md new file mode 100644 index 0000000..b8156bf --- /dev/null +++ b/automation/index.md @@ -0,0 +1,11 @@ +# Automation + +Sickle enables three different forms of automation: + +[Auto-Harvest](harvest.md) automatically harvests earnings and optionally converts them to a different token. + +[Auto-Compound](compound.md) automatically compounds earnings into each position. + +[Auto-Rebalance](rebalance.md) automatically rebalances a concentrated liquidity position once it is out of range. + +In order to use one of these, Automation first needs to be enabled on that chain (allowing our Automation contract to call these functions on behalf of your Sickle). For more information on how to enable each one please see their dedicated documents. \ No newline at end of file diff --git a/img/automation/compound.png b/img/automation/compound.png new file mode 100644 index 0000000000000000000000000000000000000000..83ff941da44dd39ebc2f18436240cd389a36797b GIT binary patch literal 13191 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 PrvY-(%2LJeKKuU{As1b5 literal 0 HcmV?d00001 diff --git a/img/automation/harvest.png b/img/automation/harvest.png new file mode 100644 index 0000000000000000000000000000000000000000..80e690907a4e372bf2c0e425e202c591c344fda1 GIT binary patch literal 14441 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 literal 0 HcmV?d00001 diff --git a/img/automation/settings.png b/img/automation/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..19523af012359f49e8751eefc3861a3a6a73d9fe GIT binary patch literal 4895 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 z zP+9pvp*D{x5NaAWm43smU?Ldc?(LmM-X@RTCKersu_63**jVk7Y%89vJTZ1i(wHy>Ga&xh#3o9CpUWiB{T~d+GjcLaKI7QyGMr|bNEaVK*DbE}bbp#SXpFsqo|~S#3jk2%!g)}b_1(4F)GcB% zG{sZ^7v-3`1MNd)r* z*-Gm^Riqy92_pzXely61|GhFBuuT+>Xu4wJ;UPip%IQzOA#4#em`hsHWMi1XZ48k7 PsRe-R8tYVQJq-Up^Z`e9 literal 0 HcmV?d00001 From 695eb244196ea0d74153b7d97999e54914640e43 Mon Sep 17 00:00:00 2001 From: vfat Date: Thu, 4 Jul 2024 18:45:15 +0300 Subject: [PATCH 2/2] add rebalance.md --- automation/rebalance.md | 53 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 automation/rebalance.md diff --git a/automation/rebalance.md b/automation/rebalance.md new file mode 100644 index 0000000..6d02696 --- /dev/null +++ b/automation/rebalance.md @@ -0,0 +1,53 @@ +# Automatic Rebalance + +When a concentrated liquidity (CL) position is out of range, it needs rebalancing. This is done by withdrawing the single token in the position (since out of range positions are only comprised of one token), swapping an appropriate amount of it for the other token, and then creating a new CL position in-range. + +Auto-Rebalance does this by monitoring all out of range positions in a loop. When one is found, we retrieve quotes for swaps from all supported aggregators, then simulate the transaction using the best one. If it results in less dust (leftover tokens) and price impact than the user has specified, the rebalance takes place, otherwise the attempt is repeated in the next loop. + +The new position will use the same width as the previous one, but centered under the new price. For example a -1% +2% width position (-100 ticks, +200 ticks from active tick space), will remain -1% +2% after rebalancing. + +Auto-Rebalance will automatically be activated for the new position as well, using the same settings as the last position. + +Enabling Auto-Rebalance is done in the Rebalance tab in an active CL position (whether in range or not). + +## Required Configuration + +### Rewards + +There are two ways to handle the rewards that a position has accumulated before it went out of range, they can be either compounded back into the position or harvested out to the user's wallet. Optionally when harvesting it can be converted to a different token. The fee charged is 1.8% of rewards. + +### Slippage + +The user has to select an appropriate slippage. This is used both for the dust calculation and for price impact. For instance in a pool with large liquidity rebalancing may work with as low as 0.1%, but for smaller pools or larger positions a higher value would be required. + +Further to slippage there are two advanced configuration options. These are optional, and they are used to create a custom range in which Auto-Rebalance should take place. The default setting, when not using advanced configuration, is to always attempt to rebalance when the position is out of range. + +## Advanced Configuration + +### Buffer + +This adds a buffer on either side of the position range, in which rebalancing should not take place. For example if a user's position is in the 3000-3300 range, a buffer of -1% on the lower side will mean that rebalance will not take place when the price is between 2970 and 3000. While the price is in that buffer the position will remain as is. + +Similarly in that example a buffer of +1% on the upper side will mean that rebalance will not take place between 3300 and 3333. + +Buffer settings are relative, so a buffer of -1% +1% will remain so when a position is rebalanced (-1% from the new lower end, +1% from the new upper end). + +### Stop Loss + +Lastly stop loss values can be set on either side. Continuing the previous example, a stop loss value of 2700 on the lower side will mean that automatic rebalancing will stop completely if the price drops below 2700. + +The same mechanism on the upper side if setting a stop loss of 3600 would disable all automatic rebalancing once hte price goes above 3600. + +Stop loss settings are absolute, so a stop loss setting of 2700, 3600 will remain the same when a position is rebalanced. + +### Advanced Settings Example + +Putting all advanced settings together, for the example position of 3000-3300, creates two ranges on either side of the user's position where automatic rebalance will take place: + +2700-2970 and 3333-3600 + +As well as four ranges where automatic rebalance will not take place: + +0-2700, 2970-3000, 3300-3333, 3600-infinite + +The advanced settings are entirely optional, the default behaviour when not setting a buffer and stop loss would be to rebalance whenever the position is out of range. \ No newline at end of file