Skip to content

feat: lifi swaps levered #823

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 113 commits into
base: development
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
99e1e95
feat: lifi swaps levered
rhlsthrm Dec 4, 2024
b9f6f68
feat: test
rhlsthrm Dec 4, 2024
5aba4d2
test fix
vminkov Dec 6, 2024
58c006d
testing the aggregator swap changes on mode leveraged positions for w…
vminkov Dec 6, 2024
2219fe7
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 9, 2024
a9ea977
feat: lev
rhlsthrm Dec 9, 2024
3404c0c
compiling expected slippage input refactoring
vminkov Dec 9, 2024
aee9a0c
merged with upstream
vminkov Dec 9, 2024
8d9e300
leveraged tests fixes
vminkov Dec 9, 2024
0c7849a
testing the aggregator swaps for mode weth-usdc leveraged positions
vminkov Dec 9, 2024
9ea07aa
working test for min/max leverage ratio with aggregator swaps
vminkov Dec 10, 2024
684f752
close position with aggregator test
vminkov Dec 10, 2024
84047b9
whitelisted swap routers config
vminkov Dec 10, 2024
9bdd02b
assumed slippage defaults refactoring
vminkov Dec 10, 2024
311bc80
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 11, 2024
4816bed
feat: generate
rhlsthrm Dec 11, 2024
a3c5f30
moved calculateAdjustmentAmountDeltas in the factory
vminkov Dec 11, 2024
af68c89
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Dec 11, 2024
5ca05f5
fixing the leveraged positions aggregator swaps tests
vminkov Dec 11, 2024
5865877
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 12, 2024
681914e
lint fix
vminkov Dec 12, 2024
fa0e431
fix: build
rhlsthrm Dec 12, 2024
444074b
removing an unnecessary param
vminkov Dec 12, 2024
5e98c58
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Dec 12, 2024
daa757e
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 12, 2024
67aa95c
refactoring to reduce the code size of the factory 2nd ext
vminkov Dec 12, 2024
96b5ba6
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 16, 2024
e85bde1
Merge pull request #852 from ionicprotocol/refactoring/factory-code-s…
rhlsthrm Dec 16, 2024
e27e5fa
feat: deploy
rhlsthrm Dec 16, 2024
92abaa7
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 17, 2024
fa39637
feat: deploy
rhlsthrm Dec 17, 2024
3d4a661
feat: front end for levered
rhlsthrm Dec 17, 2024
f781120
feat: extra sim
rhlsthrm Dec 17, 2024
f929d49
fix: slippage
rhlsthrm Dec 18, 2024
83b9cfe
previewDeposit and previewRedeem fns for the CToken
vminkov Dec 20, 2024
3832e4e
tested the previewDeposit/previewRedeem fns
vminkov Dec 20, 2024
701bee6
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Dec 30, 2024
31f93d1
code size fix - the moved fns are not tested if they work anymore
vminkov Dec 30, 2024
46880cf
tested the ionic fees fn
vminkov Dec 30, 2024
926a762
feat: generated
rhlsthrm Dec 30, 2024
7cc540d
feat: frontend
rhlsthrm Dec 30, 2024
1c74025
feat: deployments
rhlsthrm Dec 30, 2024
5cc5eae
feat: lev configure
rhlsthrm Dec 30, 2024
3e6b2d2
optimism position test
vminkov Dec 30, 2024
d95260a
feat: leverage
rhlsthrm Jan 2, 2025
f35a9d8
fix: leverage
rhlsthrm Jan 3, 2025
2276159
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 3, 2025
513a71d
fix: imports
rhlsthrm Jan 3, 2025
615997d
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 3, 2025
2e35231
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 4, 2025
5b17dcb
supply delta calcs refactoring
vminkov Jan 4, 2025
4e85346
delta calcs refactoring
vminkov Jan 4, 2025
d06fc53
the current ratio is known from the other params of the calc delta fn
vminkov Jan 4, 2025
c3f7326
dynamic swap amount calcs for the aggregator data
vminkov Jan 5, 2025
32e0156
feat: readme
rhlsthrm Jan 6, 2025
4e47b92
adjusting the ratio of a position and closing a position frontend logic
vminkov Jan 7, 2025
e28e280
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 7, 2025
5158b13
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 7, 2025
f28e37a
fix: issues
rhlsthrm Jan 7, 2025
11f19e7
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 7, 2025
8c03d3f
feat: fix lev
rhlsthrm Jan 7, 2025
36ff8ed
feat: add loop
rhlsthrm Jan 8, 2025
d31e26e
feat: hh
rhlsthrm Jan 9, 2025
1468452
testing the levered positions on optimism with forge
vminkov Jan 9, 2025
682e022
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 9, 2025
aa288b6
test to check why there is some difference between the quote swap amo…
vminkov Jan 9, 2025
c7750ec
fixing the slippages of the aggregator swaps in the levered positions…
vminkov Jan 9, 2025
5440256
initial refacctoring for the special levered positions with aggregato…
vminkov Jan 10, 2025
15c2a51
levered positions separation - compiling, but over the code size limit
vminkov Jan 13, 2025
5c9b267
levered positions factory third extension - not integrated yet
vminkov Jan 13, 2025
20fd1dc
increase leverage ratio logic for the separated leveraged positions w…
vminkov Jan 14, 2025
6bd0124
decrease leverage ratio for positions with aggregator swaps tested
vminkov Jan 14, 2025
66e893c
refactoring the tests for the removal of the adjust ratio fn of the l…
vminkov Jan 14, 2025
ec551c5
test fix
vminkov Jan 15, 2025
0f4905d
little fixes
vminkov Jan 15, 2025
e7ef916
optimism forge vix
vminkov Jan 15, 2025
34b9454
little fixes
vminkov Jan 17, 2025
feace44
Merge pull request #941 from ionicprotocol/feat/aggregator-swaps-leve…
rhlsthrm Jan 17, 2025
18cf353
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 20, 2025
416f04b
feat: deploy
rhlsthrm Jan 20, 2025
c87fec5
testing and small changes
vminkov Jan 25, 2025
fd323cc
ui fn fix to create aggr positions
vminkov Jan 25, 2025
3d4996b
feat: deploy
rhlsthrm Jan 26, 2025
c95fa0d
merge
vminkov Jan 26, 2025
9166be7
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 26, 2025
1e493ab
feat: compile
rhlsthrm Jan 27, 2025
127686b
feat: deploy script for levered
rhlsthrm Jan 27, 2025
5b60c24
converting unused fns to fallback fns
vminkov Jan 27, 2025
e4787c6
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 27, 2025
60ccf76
feat deploy
rhlsthrm Jan 27, 2025
4d6627e
even lower than the code size limit
vminkov Jan 27, 2025
bea7fb7
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 27, 2025
04bde80
feat: deploy
rhlsthrm Jan 27, 2025
fc7754e
feat: egenerated
rhlsthrm Jan 27, 2025
8733179
frontend logic fixes according to the contracts changes - aggr swaps …
vminkov Jan 27, 2025
36d824c
feat: levered
rhlsthrm Jan 27, 2025
e8f8e13
fix: build
rhlsthrm Jan 27, 2025
f424b5d
fix: lint
rhlsthrm Jan 28, 2025
89e772e
int number fix
vminkov Jan 28, 2025
5b3b2af
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
vminkov Jan 28, 2025
096647f
slippage scaling fix
vminkov Jan 28, 2025
1c638bd
typo fix
vminkov Jan 28, 2025
3d17581
fixing once again the slippage calcs
vminkov Jan 28, 2025
a2b4fff
reverting the expected slippage param for at ratio calls
vminkov Jan 28, 2025
d8751eb
feat: deplou
rhlsthrm Jan 29, 2025
b315510
feat: deploy
rhlsthrm Jan 29, 2025
15ef30b
ui contracts call fix
vminkov Jan 29, 2025
e4e3768
fix: generated
rhlsthrm Jan 29, 2025
9f2bc6c
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
rhlsthrm Jan 29, 2025
e8037d5
ui interface fix
vminkov Jan 29, 2025
338cbe0
feat: funding
rhlsthrm Jan 29, 2025
96ddff4
Merge branch 'feat/lifi-swaps-levered' of github.com:ionicprotocol/mo…
rhlsthrm Jan 29, 2025
aba5781
Merge branch 'development' into feat/lifi-swaps-levered
rhlsthrm Jan 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,13 @@ interface ILeveredPositionFactoryFirstExtension {

function removeClosedPosition(address closedPosition) external returns (bool removed);

function closeAndRemoveUserPosition(
LeveredPosition position,
address aggregatorTarget,
bytes memory aggregatorData,
uint256 expectedSlippage
) external returns (bool);

function closeAndRemoveUserPosition(LeveredPosition position) external returns (bool);

function getPositionsByAccount(address account) external view returns (address[] memory, bool[] memory);
Expand All @@ -51,7 +58,13 @@ interface ILeveredPositionFactoryFirstExtension {

function getPositionsExtension(bytes4 msgSig) external view returns (address);

function getAllWhitelistedSwapRouters() external view returns (address[] memory);

function isSwapRoutersWhitelisted(address swapRouter) external view returns (bool);

function _setPositionsExtension(bytes4 msgSig, address extension) external;

function _setWhitelistedSwapRouters(address[] memory newSet) external;
}

interface ILeveredPositionFactorySecondExtension {
Expand All @@ -61,7 +74,23 @@ interface ILeveredPositionFactorySecondExtension {
ICErc20 _collateralMarket,
ICErc20 _stableMarket,
IERC20Upgradeable _fundingAsset,
uint256 _fundingAmount
uint256 _fundingAmount,
address aggregatorTarget,
bytes memory aggregatorData,
uint256 expectedSlippage
) external returns (LeveredPosition);

function createAndFundPositionAtRatio(
ICErc20 _collateralMarket,
ICErc20 _stableMarket,
IERC20Upgradeable _fundingAsset,
uint256 _fundingAmount,
uint256 _leverageRatio,
address _fundingAssetSwapAggregatorTarget,
bytes memory _fundingAssetSwapAggregatorData,
address _adjustLeverageRatioAggregatorTarget,
bytes memory _adjustLeverageRatioAggregatorData,
uint256 _expectedSlippage
) external returns (LeveredPosition);

function createAndFundPositionAtRatio(
Expand Down
Loading
Loading