defi-state-querier 0.5.28__py3-none-any.whl → 0.5.29__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- defi_services/__init__.py +1 -1
- defi_services/abis/lending/ionic/__init__.py +0 -0
- defi_services/abis/lending/ionic/ionic_ctoken_abi.py +1108 -0
- defi_services/abis/lending/moonwell/__init__.py +0 -0
- defi_services/abis/lending/moonwell/moonwell_comptroller_abi.py +1500 -0
- defi_services/abis/lending/moonwell/moonwell_ctoken_abi.py +1431 -0
- defi_services/abis/lending/radiant_v2/radiant_reward_converter.py +817 -0
- defi_services/abis/token/trc20_abi.py +304 -0
- defi_services/abis/vault/tcv_abi.py +1523 -0
- defi_services/constants/chain_constant.py +8 -1
- defi_services/constants/entities/dex_info_constant.py +2 -2
- defi_services/constants/entities/dex_services.py +13 -1
- defi_services/constants/entities/lending_constant.py +11 -5
- defi_services/constants/entities/lending_services.py +31 -4
- defi_services/constants/entities/vault_constant.py +2 -2
- defi_services/constants/entities/vault_services.py +7 -1
- defi_services/constants/network_constants.py +20 -361
- defi_services/constants/token_constant.py +3 -1
- defi_services/jobs/processors/cosmos_state_processor.py +3 -2
- defi_services/jobs/processors/ton_state_processor.py +5 -4
- defi_services/jobs/queriers/call_state_querier.py +2 -0
- defi_services/jobs/queriers/state_querier.py +3 -0
- defi_services/jobs/tcv.py +144 -0
- defi_services/services/dex/dex_info/uniswap_info.py +29 -1
- defi_services/services/dex/uniswap_v3_service.py +6 -2
- defi_services/services/lending/aave_v2_services.py +44 -29
- defi_services/services/lending/aave_v3_services.py +41 -20
- defi_services/services/lending/compound_v3_services.py +9 -5
- defi_services/services/lending/granary_services.py +6 -4
- defi_services/services/lending/ionic_service.py +167 -0
- defi_services/services/lending/justlend_service.py +4 -3
- defi_services/services/lending/lending_info/arbitrum/aave_v3_arbitrum.py +1 -1
- defi_services/services/lending/lending_info/arbitrum/compound_v3_arbitrum.py +96 -6
- defi_services/services/lending/lending_info/arbitrum/venus_arbitrum.py +10 -0
- defi_services/services/lending/lending_info/base/__init__.py +0 -0
- defi_services/services/lending/lending_info/base/aave_v3_base.py +61 -0
- defi_services/services/lending/lending_info/base/compound_v3_base.py +116 -0
- defi_services/services/lending/lending_info/base/granary_base.py +62 -0
- defi_services/services/lending/lending_info/base/ionic_base.py +173 -0
- defi_services/services/lending/lending_info/base/moonwell_base.py +89 -0
- defi_services/services/lending/lending_info/base/radiant_v2_base.py +57 -0
- defi_services/services/lending/lending_info/base/sonne_base.py +53 -0
- defi_services/services/lending/lending_info/base/zerolend_base.py +109 -0
- defi_services/services/lending/lending_info/bsc/aave_v3_bsc.py +68 -0
- defi_services/services/lending/lending_info/bsc/apeswap_bsc.py +1 -1
- defi_services/services/lending/lending_info/ethereum/aave_v3_eth.py +1 -140
- defi_services/services/lending/lending_info/ethereum/compound_v3_eth.py +180 -5
- defi_services/services/lending/lending_info/ethereum/old_aave_v3_eth.py +150 -0
- defi_services/services/lending/lending_info/ethereum/radiant_eth.py +69 -0
- defi_services/services/lending/lending_info/ethereum/venus_eth.py +10 -0
- defi_services/services/lending/lending_info/ethereum/zerolend_eth.py +96 -0
- defi_services/services/lending/lending_info/optimism/compound_v3_optimism.py +116 -0
- defi_services/services/lending/lending_info/optimism/moonwell_optimism.py +9 -0
- defi_services/services/lending/lending_info/polygon/compound_v3_polygon.py +35 -5
- defi_services/services/lending/lending_info/zksync/__init__.py +0 -0
- defi_services/services/lending/lending_info/zksync/aave_v3_zksync.py +47 -0
- defi_services/services/lending/lending_info/zksync/venus_zksync.py +10 -0
- defi_services/services/lending/lending_info/zksync/zerolend_zksync.py +138 -0
- defi_services/services/lending/moonwell_service.py +120 -0
- defi_services/services/lending/morpho_aave_v2_services.py +3 -3
- defi_services/services/lending/morpho_aave_v3_services.py +2 -2
- defi_services/services/lending/radiant_v2_services.py +52 -10
- defi_services/services/lending/sonne_service.py +64 -0
- defi_services/services/lending/trava_services.py +2 -2
- defi_services/services/lending/uwu_services.py +3 -3
- defi_services/services/lending/valas_services.py +2 -2
- defi_services/services/lending/venus_services.py +9 -3
- defi_services/services/lending/zerolend_services.py +36 -0
- defi_services/services/multicall/multicall_v2.py +0 -317
- defi_services/services/vault/tcv_vault_services.py +108 -0
- defi_services/services/vault/vault_info/arbitrum/__init__.py +0 -0
- defi_services/services/vault/vault_info/arbitrum/tcv_arb.py +58 -0
- {defi_state_querier-0.5.28.dist-info → defi_state_querier-0.5.29.dist-info}/METADATA +1 -1
- {defi_state_querier-0.5.28.dist-info → defi_state_querier-0.5.29.dist-info}/RECORD +84 -47
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/__init__.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/aave_v2_event_abi.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/aave_v2_incentives_abi.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/lending_pool_abi.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/oracle_abi.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/staked_incentives_abi.py +0 -0
- /defi_services/abis/lending/{aave_v2_and_forlks → aave_v2_and_forks}/uwu_incentives_abi.py +0 -0
- {defi_state_querier-0.5.28.dist-info → defi_state_querier-0.5.29.dist-info}/WHEEL +0 -0
- {defi_state_querier-0.5.28.dist-info → defi_state_querier-0.5.29.dist-info}/licenses/LICENSE +0 -0
- {defi_state_querier-0.5.28.dist-info → defi_state_querier-0.5.29.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,96 @@
|
|
1
|
+
ZEROLEND_ETH = {
|
2
|
+
"address": "0x3bc3d34c32cc98bf098d832364df8a222bbab4c0",
|
3
|
+
"name": "ZeroLend Lending Pool",
|
4
|
+
"stakedIncentiveAddress": '0x854138f891fe0a86270f6f153a06fbfabf69e0ad',
|
5
|
+
"rewardTokensList": [],
|
6
|
+
"oracleAddress": "0x1cc993f2c8b6fbc43a9bafd2a44398e739733385",
|
7
|
+
"type": "LENDING_POOL",
|
8
|
+
"poolToken": "0x11dcc26d4bdac03ffa8841f69313c38240fc429e",
|
9
|
+
"forked": "aave-v3",
|
10
|
+
"reservesList": {
|
11
|
+
"0x6b175474e89094c44da98b954eedeac495271d0f": {
|
12
|
+
"tToken": "0x29a3a6af690942a3b7665bb2839a3f563c6f987b",
|
13
|
+
"sdToken": "0x8569052157069ed81f603001596ee8ae1c85e049",
|
14
|
+
"dToken": "0x0047cac82cf5fb36954de1b9d86d657915ab3b47",
|
15
|
+
"loanToValue": 0.0,
|
16
|
+
"liquidationThreshold": 0.85
|
17
|
+
},
|
18
|
+
"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48": {
|
19
|
+
"tToken": "0xb2feb2c46305329a340e6188532f31fce9347a5c",
|
20
|
+
"sdToken": "0x7fae822dc0a2ae436ec10b83ae5686c008fca718",
|
21
|
+
"dToken": "0x227f86fbfccb5664403b62a5b6d4e0e593968275",
|
22
|
+
"loanToValue": 0.8,
|
23
|
+
"liquidationThreshold": 0.85
|
24
|
+
},
|
25
|
+
"0xdac17f958d2ee523a2206206994597c13d831ec7": {
|
26
|
+
"tToken": "0x6c735966bc965bd4066c14fca3df443496ce14fb",
|
27
|
+
"sdToken": "0x14b0f7edb2471350dee88b1c423e0df25c37b638",
|
28
|
+
"dToken": "0xdaccf47046ae4fee3f9f3bcfe68696a95db6ccb7",
|
29
|
+
"loanToValue": 0.0,
|
30
|
+
"liquidationThreshold": 0.85
|
31
|
+
},
|
32
|
+
"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2": {
|
33
|
+
"tToken": "0xfb932a75c5f69d03b0f6e59573fde6976af0d88c",
|
34
|
+
"sdToken": "0x346623faf3cd1dbe9024c1d160cd40e6a90092ed",
|
35
|
+
"dToken": "0x7ef98cd28902ce57b7aeec66dfb06b454cda1941",
|
36
|
+
"loanToValue": 0.8,
|
37
|
+
"liquidationThreshold": 0.825
|
38
|
+
},
|
39
|
+
"0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee": {
|
40
|
+
"tToken": "0x84e55c6bc5b7e9505d87b3df6ceff7753e15a0c5",
|
41
|
+
"sdToken": "0x4931dae3f419649931918d9e545d0f52cae0dbec",
|
42
|
+
"dToken": "0x53c94fd63ef4001d45744c311d6bbe2171d4a11e",
|
43
|
+
"loanToValue": 0.7,
|
44
|
+
"liquidationThreshold": 0.8
|
45
|
+
},
|
46
|
+
"0xbf5495efe5db9ce00f80364c8b423567e58d2110": {
|
47
|
+
"tToken": "0x68fd75cf5a91f49effad0e857ef2e97e5d1f35e7",
|
48
|
+
"sdToken": "0x1e7f2afd1d534077656a0cfa7871358cb346f578",
|
49
|
+
"dToken": "0x27c1706ddd2467622ca63aaec03332127919a690",
|
50
|
+
"loanToValue": 0.7,
|
51
|
+
"liquidationThreshold": 0.8
|
52
|
+
},
|
53
|
+
"0xa1290d69c65a6fe4df752f95823fae25cb99e5a7": {
|
54
|
+
"tToken": "0xef4a41e692319ae4aa596314d282b3f2a3830bed",
|
55
|
+
"sdToken": "0x3af8bad4ca56afae60fa3a2f116cdea803c80fbc",
|
56
|
+
"dToken": "0xe4fe2d282dead5759199df364f3f419dfac17339",
|
57
|
+
"loanToValue": 0.7,
|
58
|
+
"liquidationThreshold": 0.8
|
59
|
+
},
|
60
|
+
"0xd9a442856c234a39a81a089c06451ebaa4306a72": {
|
61
|
+
"tToken": "0xdd7afc0f014a1e1716307ff040704fa12e8d33a3",
|
62
|
+
"sdToken": "0x0155719a1401fdbaa62e7c6ccd46207a0de3282a",
|
63
|
+
"dToken": "0xf99728a4b9f3371cfcf671099edf00f49b006125",
|
64
|
+
"loanToValue": 0.7,
|
65
|
+
"liquidationThreshold": 0.8
|
66
|
+
},
|
67
|
+
"0xf951e335afb289353dc249e82926178eac7ded78": {
|
68
|
+
"tToken": "0xb7cadc9cdfbbef6d230dd99a7c62e294fc44bfc6",
|
69
|
+
"sdToken": "0x9924462b20a93551efbec5eecc437b632b3cb48c",
|
70
|
+
"dToken": "0xb04adaff2f221f63b977185f5a7d8ee49aacbaff",
|
71
|
+
"loanToValue": 0.5,
|
72
|
+
"liquidationThreshold": 0.8
|
73
|
+
},
|
74
|
+
"0x8c9532a60e0e7c6bbd2b2c1303f63ace1c3e9811": {
|
75
|
+
"tToken": "0xd9855847ffd9bc0c5f3effbef67b558dbf090a71",
|
76
|
+
"sdToken": "0x7333113ac92a86e7d562fbe9f03c62d2007cd295",
|
77
|
+
"dToken": "0x8e3e54599d6f40c8306b895214f54882d98cd2b5",
|
78
|
+
"loanToValue": 0.7,
|
79
|
+
"liquidationThreshold": 0.9
|
80
|
+
},
|
81
|
+
"0x7baf258049cc8b9a78097723dc19a8b103d4098f": {
|
82
|
+
"tToken": "0x7740f60f773bc743ed76310ac1d054a4a4a17e7c",
|
83
|
+
"sdToken": "0x8983845311f9df4465b8a94713a2d5824b943251",
|
84
|
+
"dToken": "0xb8d45c7fbbbc6e1d36bc1caa7d43dcc7d0513cfd",
|
85
|
+
"loanToValue": 0.0,
|
86
|
+
"liquidationThreshold": 0.95
|
87
|
+
},
|
88
|
+
"0xf7906f274c174a52d444175729e3fa98f9bde285": {
|
89
|
+
"tToken": "0xb2db477a6c198f5c524302bb67085f8f3ab06059",
|
90
|
+
"sdToken": "0x11acaa3c40a2885dbab3265df94272ecfeb2b8fb",
|
91
|
+
"dToken": "0x8eb2f05a24b6859aadb5d26abbc129f53d10e934",
|
92
|
+
"loanToValue": 0.9,
|
93
|
+
"liquidationThreshold": 0.95
|
94
|
+
}
|
95
|
+
}
|
96
|
+
}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
COMPOUND_V3_OPTIMISM = {
|
2
|
+
"name": "Compound V3 Lending Pool",
|
3
|
+
"rewardToken": "0x7e7d4467112689329f7e06571ed0e8cbad4910ee",
|
4
|
+
"rewardAddress": "0x443ea0340cb75a160f31a440722dec7b5bc3c2e9",
|
5
|
+
"factoryAddress": "0xfa454de61b317b6535a0c462267208e8fdb89f45",
|
6
|
+
"poolToken": "0x7e7d4467112689329f7e06571ed0e8cbad4910ee",
|
7
|
+
"type": "LENDING_POOL",
|
8
|
+
"forked": "compound-v3",
|
9
|
+
"reservesList": {
|
10
|
+
"0x4200000000000000000000000000000000000006": {
|
11
|
+
"comet": "0xe36a30d249f7761327fd973001a32010b521b6fd",
|
12
|
+
"assets": {
|
13
|
+
"0x1f32b1c2345538c0c6f582fcb022739c4a194ebb": {
|
14
|
+
"priceFeed": "0x295d9f81298fc44b4f329cbef57e67266091cc86",
|
15
|
+
"loanToValue": 0.88,
|
16
|
+
"liquidationThreshold": 0.93
|
17
|
+
},
|
18
|
+
"0x9bcef72be871e61ed4fbbc7630889bee758eb81d": {
|
19
|
+
"priceFeed": "0x5d409e56d886231adaf00c8775665ad0f9897b56",
|
20
|
+
"loanToValue": 0.9,
|
21
|
+
"liquidationThreshold": 0.93
|
22
|
+
},
|
23
|
+
"0x68f180fcce6836688e9084f035309e29bf0a2095": {
|
24
|
+
"priceFeed": "0x4ed39cf78ffa4428de6bcedb8d0f5ff84699e13d",
|
25
|
+
"loanToValue": 0.8,
|
26
|
+
"liquidationThreshold": 0.85
|
27
|
+
},
|
28
|
+
"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58": {
|
29
|
+
"priceFeed": "0xddc326838f2b5e5625306c3cf33318666f3cf002",
|
30
|
+
"loanToValue": 0.8,
|
31
|
+
"liquidationThreshold": 0.85
|
32
|
+
},
|
33
|
+
"0x0b2c639c533813f4aa9d7837caf62653d097ff85": {
|
34
|
+
"priceFeed": "0x403f2083b6e220147f8a8832f0b284b4ed5777d1",
|
35
|
+
"loanToValue": 0.8,
|
36
|
+
"liquidationThreshold": 0.85
|
37
|
+
},
|
38
|
+
"0x2416092f143378750bb29b79ed961ab195cceea5": {
|
39
|
+
"priceFeed": "0x69dd37a0ee3d15776a54e34a7297b059e75c94ab",
|
40
|
+
"loanToValue": 0.88,
|
41
|
+
"liquidationThreshold": 0.91
|
42
|
+
},
|
43
|
+
"0x5a7facb970d094b6c7ff1df0ea68d99e6e73cbff": {
|
44
|
+
"priceFeed": "0x5a20166ed55518520b1f68cab1cf127473123814",
|
45
|
+
"loanToValue": 0.9,
|
46
|
+
"liquidationThreshold": 0.93
|
47
|
+
},
|
48
|
+
"0x87eee96d50fb761ad85b1c982d28a042169d61b1": {
|
49
|
+
"priceFeed": "0xee7b99dc798eae1957713bbbede98073098b0e68",
|
50
|
+
"loanToValue": 0.88,
|
51
|
+
"liquidationThreshold": 0.91
|
52
|
+
}
|
53
|
+
}
|
54
|
+
},
|
55
|
+
"0x0b2c639c533813f4aa9d7837caf62653d097ff85": {
|
56
|
+
"comet": "0x2e44e174f7d53f0212823acc11c01a11d58c5bcb",
|
57
|
+
"assets": {
|
58
|
+
"0x4200000000000000000000000000000000000042": {
|
59
|
+
"priceFeed": "0x0d276fc14719f9292d5c1ea2198673d1f4269246",
|
60
|
+
"loanToValue": 0.65,
|
61
|
+
"liquidationThreshold": 0.7
|
62
|
+
},
|
63
|
+
"0x4200000000000000000000000000000000000006": {
|
64
|
+
"priceFeed": "0x13e3ee699d1909e989722e753853ae30b17e08c5",
|
65
|
+
"loanToValue": 0.83,
|
66
|
+
"liquidationThreshold": 0.9
|
67
|
+
},
|
68
|
+
"0x68f180fcce6836688e9084f035309e29bf0a2095": {
|
69
|
+
"priceFeed": "0x718a5788b89454aae3a028ae9c111a29be6c2a6f",
|
70
|
+
"loanToValue": 0.8,
|
71
|
+
"liquidationThreshold": 0.85
|
72
|
+
},
|
73
|
+
"0x1f32b1c2345538c0c6f582fcb022739c4a194ebb": {
|
74
|
+
"priceFeed": "0x4f90c34def3516ca5bd0a8276e01516fb09fb2ab",
|
75
|
+
"loanToValue": 0.8,
|
76
|
+
"liquidationThreshold": 0.85
|
77
|
+
},
|
78
|
+
"0x57f5e098cad7a3d1eed53991d4d66c45c9af7812": {
|
79
|
+
"priceFeed": "0x7e86318cc4bc539043f204b39ce0ebed9f0050dc",
|
80
|
+
"loanToValue": 0.88,
|
81
|
+
"liquidationThreshold": 0.9
|
82
|
+
}
|
83
|
+
}
|
84
|
+
},
|
85
|
+
"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58": {
|
86
|
+
"comet": "0x995e394b8b2437ac8ce61ee0bc610d617962b214",
|
87
|
+
"assets": {
|
88
|
+
"0x4200000000000000000000000000000000000042": {
|
89
|
+
"priceFeed": "0x0d276fc14719f9292d5c1ea2198673d1f4269246",
|
90
|
+
"loanToValue": 0.65,
|
91
|
+
"liquidationThreshold": 0.7
|
92
|
+
},
|
93
|
+
"0x4200000000000000000000000000000000000006": {
|
94
|
+
"priceFeed": "0x13e3ee699d1909e989722e753853ae30b17e08c5",
|
95
|
+
"loanToValue": 0.83,
|
96
|
+
"liquidationThreshold": 0.9
|
97
|
+
},
|
98
|
+
"0x68f180fcce6836688e9084f035309e29bf0a2095": {
|
99
|
+
"priceFeed": "0x718a5788b89454aae3a028ae9c111a29be6c2a6f",
|
100
|
+
"loanToValue": 0.8,
|
101
|
+
"liquidationThreshold": 0.85
|
102
|
+
},
|
103
|
+
"0x1f32b1c2345538c0c6f582fcb022739c4a194ebb": {
|
104
|
+
"priceFeed": "0x6846fc014a72198ee287350ddb6b0180586594e5",
|
105
|
+
"loanToValue": 0.8,
|
106
|
+
"liquidationThreshold": 0.85
|
107
|
+
},
|
108
|
+
"0x57f5e098cad7a3d1eed53991d4d66c45c9af7812": {
|
109
|
+
"priceFeed": "0x66228d797eb83ecf3465297751f6b1d4d42b7627",
|
110
|
+
"loanToValue": 0.88,
|
111
|
+
"liquidationThreshold": 0.9
|
112
|
+
}
|
113
|
+
}
|
114
|
+
}
|
115
|
+
}
|
116
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
MOONWELL_OPTIMISM = {
|
2
|
+
"name": "MoonWell Lending Pool",
|
3
|
+
"rewardToken": "",
|
4
|
+
"comptrollerAddress": "0xca889f40aae37fff165bccf69aef1e82b5c511b9",
|
5
|
+
"lensAddress": "",
|
6
|
+
"poolToken": "0xa88594d404727625a9437c3f886c7643872296ae",
|
7
|
+
"type": "LENDING_POOL",
|
8
|
+
"forked": "compound",
|
9
|
+
}
|
@@ -12,18 +12,18 @@ COMPOUND_V3_POLYGON = {
|
|
12
12
|
"assets": {
|
13
13
|
"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619": {
|
14
14
|
"priceFeed": "0xf9680d99d6c9589e2a93a78a04a279e509205945",
|
15
|
-
"loanToValue": 0.
|
16
|
-
"liquidationThreshold": 0.
|
15
|
+
"loanToValue": 0.8,
|
16
|
+
"liquidationThreshold": 0.85
|
17
17
|
},
|
18
18
|
"0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6": {
|
19
19
|
"priceFeed": "0xde31f8bfbd8c84b5360cfacca3539b938dd78ae6",
|
20
|
-
"loanToValue": 0.
|
21
|
-
"liquidationThreshold": 0.
|
20
|
+
"loanToValue": 0.75,
|
21
|
+
"liquidationThreshold": 0.85
|
22
22
|
},
|
23
23
|
"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270": {
|
24
24
|
"priceFeed": "0xab594600376ec9fd91f8e885dadf0ce036862de0",
|
25
25
|
"loanToValue": 0.65,
|
26
|
-
"liquidationThreshold": 0.
|
26
|
+
"liquidationThreshold": 0.8
|
27
27
|
},
|
28
28
|
"0xfa68fb4628dff1028cfec22b4162fccd0d45efb6": {
|
29
29
|
"priceFeed": "0x5d37e4b374e6907de8fc7fb33ee3b0af403c7403",
|
@@ -36,6 +36,36 @@ COMPOUND_V3_POLYGON = {
|
|
36
36
|
"liquidationThreshold": 0.65
|
37
37
|
}
|
38
38
|
}
|
39
|
+
},
|
40
|
+
"0xc2132d05d31c914a87c6611c10748aeb04b58e8f": {
|
41
|
+
"comet": "0xaeb318360f27748acb200ce616e389a6c9409a07",
|
42
|
+
"assets": {
|
43
|
+
"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270": {
|
44
|
+
"priceFeed": "0xab594600376ec9fd91f8e885dadf0ce036862de0",
|
45
|
+
"loanToValue": 0.65,
|
46
|
+
"liquidationThreshold": 0.8
|
47
|
+
},
|
48
|
+
"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619": {
|
49
|
+
"priceFeed": "0xf9680d99d6c9589e2a93a78a04a279e509205945",
|
50
|
+
"loanToValue": 0.8,
|
51
|
+
"liquidationThreshold": 0.85
|
52
|
+
},
|
53
|
+
"0xfa68fb4628dff1028cfec22b4162fccd0d45efb6": {
|
54
|
+
"priceFeed": "0x5d37e4b374e6907de8fc7fb33ee3b0af403c7403",
|
55
|
+
"loanToValue": 0.6,
|
56
|
+
"liquidationThreshold": 0.7
|
57
|
+
},
|
58
|
+
"0x3a58a54c066fdc0f2d55fc9c89f0415c92ebf3c4": {
|
59
|
+
"priceFeed": "0x97371df4492605486e23da797fa68e55fc38a13f",
|
60
|
+
"loanToValue": 0.6,
|
61
|
+
"liquidationThreshold": 0.7
|
62
|
+
},
|
63
|
+
"0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6": {
|
64
|
+
"priceFeed": "0xde31f8bfbd8c84b5360cfacca3539b938dd78ae6",
|
65
|
+
"loanToValue": 0.75,
|
66
|
+
"liquidationThreshold": 0.85
|
67
|
+
}
|
68
|
+
}
|
39
69
|
}
|
40
70
|
}
|
41
71
|
}
|
File without changes
|
@@ -0,0 +1,47 @@
|
|
1
|
+
AAVE_V3_ZKSYNC = {
|
2
|
+
"address": "0x78e30497a3c7527d953c6b1e3541b021a98ac43c",
|
3
|
+
"name": "AAVE Lending Pool",
|
4
|
+
"stakedIncentiveAddress": '0x37c972c9ddfc2138ebe33ec19dba063ab9f8966e',
|
5
|
+
"oracleAddress": "0xc7f58fca663a8d377b6d0c9703c697f56dc40088",
|
6
|
+
"rewardTokensList": [],
|
7
|
+
"type": "LENDING_POOL",
|
8
|
+
"poolToken": "",
|
9
|
+
"forked": "aave-v3",
|
10
|
+
"reservesList": {
|
11
|
+
"0x1d17cbcf0d6d143135ae902365d2e5e2a16538d4": {
|
12
|
+
"tToken": "0xe977f9b2a5ccf0457870a67231f23be4daecfbdb",
|
13
|
+
"sdToken": "0x4b57579c895cb5cd2e7bf6e94888fc6289f3ae95",
|
14
|
+
"dToken": "0x0049250d15a8550c5a14baa5af5b662a93a525b9",
|
15
|
+
"loanToValue": 0.75,
|
16
|
+
"liquidationThreshold": 0.78
|
17
|
+
},
|
18
|
+
"0x493257fd37edb34451f62edf8d2a0c418852ba4c": {
|
19
|
+
"tToken": "0xc48574bc5358c967d9447e7df70230fdb469e4e7",
|
20
|
+
"sdToken": "0x4b57579c895cb5cd2e7bf6e94888fc6289f3ae95",
|
21
|
+
"dToken": "0x8992db58077fe8c7b80c1b3a738eae8a7bddba34",
|
22
|
+
"loanToValue": 0.75,
|
23
|
+
"liquidationThreshold": 0.78
|
24
|
+
},
|
25
|
+
"0x5aea5775959fbc2557cc8789bc1bf90a239d9a91": {
|
26
|
+
"tToken": "0xb7b93bcf82519bb757fd18b23a389245dbd8ca64",
|
27
|
+
"sdToken": "0x4b57579c895cb5cd2e7bf6e94888fc6289f3ae95",
|
28
|
+
"dToken": "0x98dc737ea0e9bcb254c3f98510a71c5e11f74238",
|
29
|
+
"loanToValue": 0.75,
|
30
|
+
"liquidationThreshold": 0.78
|
31
|
+
},
|
32
|
+
"0x703b52f2b28febcb60e1372858af5b18849fe867": {
|
33
|
+
"tToken": "0xd4e607633f3d984633e946aea4eb71f92564c1c9",
|
34
|
+
"sdToken": "0x4b57579c895cb5cd2e7bf6e94888fc6289f3ae95",
|
35
|
+
"dToken": "0x6ad279f6523f6421fd5b0324a97d8f62eecd80c8",
|
36
|
+
"loanToValue": 0.71,
|
37
|
+
"liquidationThreshold": 0.76
|
38
|
+
},
|
39
|
+
"0x5a7d6b2f92c77fad6ccabd7ee0624e64907eaf3e": {
|
40
|
+
"tToken": "0xd6cd2c0fc55936498726cacc497832052a9b2d1b",
|
41
|
+
"sdToken": "0x4b57579c895cb5cd2e7bf6e94888fc6289f3ae95",
|
42
|
+
"dToken": "0x6450fd7f877b5bb726f7bc6bf0e6ffabd48d72ad",
|
43
|
+
"loanToValue": 0.4,
|
44
|
+
"liquidationThreshold": 0.45
|
45
|
+
}
|
46
|
+
}
|
47
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
VENUS_ZKSYNC = {
|
2
|
+
"projectName": "Venus",
|
3
|
+
"name": "Venus Lending Pool",
|
4
|
+
"rewardToken": "0xd78abd81a3d57712a3af080dc4185b698fe9ac5a",
|
5
|
+
"comptrollerAddress": "",
|
6
|
+
"lensAddress": "",
|
7
|
+
"poolToken": "0xd78abd81a3d57712a3af080dc4185b698fe9ac5a",
|
8
|
+
"type": "LENDING_POOL",
|
9
|
+
"forked": "compound",
|
10
|
+
}
|
@@ -0,0 +1,138 @@
|
|
1
|
+
ZEROLEND_ZKSYNC = {
|
2
|
+
"address": "0x4d9429246ea989c9cee203b43f6d1c7d83e3b8f8",
|
3
|
+
"name": "ZeroLend Lending Pool",
|
4
|
+
"stakedIncentiveAddress": '0x86bd524c09508df7b4b9027464975351b1bc2c92',
|
5
|
+
"rewardTokensList": [],
|
6
|
+
"oracleAddress": "0x785765de3e9ac3d8eeb42b4724a7fea8990142b8",
|
7
|
+
"type": "LENDING_POOL",
|
8
|
+
"poolToken": "0x27d0a2b5316b98088294378692f4eabfb3222e36",
|
9
|
+
"forked": "aave-v3",
|
10
|
+
"reservesList": {
|
11
|
+
"0x3355df6d4c9c3035724fd0e3914de96a5a83aaf4": {
|
12
|
+
"tToken": "0x016341e6da8da66b33fd32189328c102f32da7cc",
|
13
|
+
"sdToken": "0x5fac4fd2e4bce392d34600d94aa1114274e54dff",
|
14
|
+
"dToken": "0xe60e1953af56db378184997cab20731d17c65004",
|
15
|
+
"loanToValue": 0.8,
|
16
|
+
"liquidationThreshold": 0.85
|
17
|
+
},
|
18
|
+
"0x5aea5775959fbc2557cc8789bc1bf90a239d9a91": {
|
19
|
+
"tToken": "0x9002ecb8a06060e3b56669c6b8f18e1c3b119914",
|
20
|
+
"sdToken": "0x9c9158bff47342a20b7d2ac09f89e96f3a209b9b",
|
21
|
+
"dToken": "0x56f58d9be10929cda709c4134ef7343d73b080cf",
|
22
|
+
"loanToValue": 0.8,
|
23
|
+
"liquidationThreshold": 0.825
|
24
|
+
},
|
25
|
+
"0x493257fd37edb34451f62edf8d2a0c418852ba4c": {
|
26
|
+
"tToken": "0x9ca4806fa54984bf5da4e280b7aa8bb821d21505",
|
27
|
+
"sdToken": "0x6f977fd05962d67eb7b16b15684fbea0462f442d",
|
28
|
+
"dToken": "0xa333c6ff89525939271e796fbde2a2d9a970f831",
|
29
|
+
"loanToValue": 0.75,
|
30
|
+
"liquidationThreshold": 0.8
|
31
|
+
},
|
32
|
+
"0x90059c32eeeb1a2aa1351a58860d98855f3655ad": {
|
33
|
+
"tToken": "0x52846a8d972abbf49f67d83d5509aa4129257f46",
|
34
|
+
"sdToken": "0x10eb1198b55e709309d1e6c94dbee2b9b4977924",
|
35
|
+
"dToken": "0x77dced4833e3a91437ed9891117bd5a61c2ad520",
|
36
|
+
"loanToValue": 0.0,
|
37
|
+
"liquidationThreshold": 0.0
|
38
|
+
},
|
39
|
+
"0x503234f203fc7eb888eec8513210612a43cf6115": {
|
40
|
+
"tToken": "0xd97ac0ce99329ee19b97d03e099eb42d7aa19ddb",
|
41
|
+
"sdToken": "0x029214a5cd528433b8a4eccd7ef798210db3518c",
|
42
|
+
"dToken": "0x41c618cce58fb27caf4eeb1dd25de1d03a0daac6",
|
43
|
+
"loanToValue": 0.0,
|
44
|
+
"liquidationThreshold": 0.8
|
45
|
+
},
|
46
|
+
"0xbbeb516fb02a01611cbbe0453fe3c580d7281011": {
|
47
|
+
"tToken": "0x7c65e6ec6feceb333092e6fe69672a3475c591fb",
|
48
|
+
"sdToken": "0x3f574632d049f7cded52c529238e5c530e589b36",
|
49
|
+
"dToken": "0xabd3c4e4ac6e0d81fcfa5c41a76e9583a8f81909",
|
50
|
+
"loanToValue": 0.7,
|
51
|
+
"liquidationThreshold": 0.75
|
52
|
+
},
|
53
|
+
"0xfd282f16a64c6d304ac05d1a58da15bed0467c71": {
|
54
|
+
"tToken": "0x54330d2333adbf715eb449aad38153378601cf67",
|
55
|
+
"sdToken": "0xba0ba840a827aa9f3c5ec0e6e13e6bb4dd026dde",
|
56
|
+
"dToken": "0x963cc035edd4bc0f4a89987888304580dfa9be60",
|
57
|
+
"loanToValue": 0.0,
|
58
|
+
"liquidationThreshold": 0.85
|
59
|
+
},
|
60
|
+
"0x2039bb4116b4efc145ec4f0e2ea75012d6c0f181": {
|
61
|
+
"tToken": "0xb727f8e11bc417c90d4dcaf82eda06cf590533b5",
|
62
|
+
"sdToken": "0xd47c789f91cef19c124d53087d99860ce34be4a5",
|
63
|
+
"dToken": "0x3e1f1812c2a4f356d1b4fb5ff7cca5b2ac653b94",
|
64
|
+
"loanToValue": 0.0,
|
65
|
+
"liquidationThreshold": 0.8
|
66
|
+
},
|
67
|
+
"0x4d321cd88c5680ce4f85bb58c578dfe9c2cc1ef6": {
|
68
|
+
"tToken": "0x2b1bbe3ba39b943eeef675d6d42607c958f8d20f",
|
69
|
+
"sdToken": "0xeea10809dd23febf628003b4b998821bc6af4217",
|
70
|
+
"dToken": "0x0eede84dd0dea309382d23dd5591077127759a77",
|
71
|
+
"loanToValue": 0.5,
|
72
|
+
"liquidationThreshold": 0.85
|
73
|
+
},
|
74
|
+
"0x240f765af2273b0cab6caff2880d6d8f8b285fa4": {
|
75
|
+
"tToken": "0xdb87a5493e308ee0deb24c822a559bee52460afc",
|
76
|
+
"sdToken": "0xea8d6ce63498dda36a58374106fd6dd3bed9dff7",
|
77
|
+
"dToken": "0x1f3da58fac996c2094eec9801867028953a45325",
|
78
|
+
"loanToValue": 0.0,
|
79
|
+
"liquidationThreshold": 0.0
|
80
|
+
},
|
81
|
+
"0x99bbe51be7cce6c8b84883148fd3d12ace5787f2": {
|
82
|
+
"tToken": "0x1f2da4ff84d46b12f8931766d6d728a806b410d6",
|
83
|
+
"sdToken": "0xba15a3ac405c7311dd1234bfc21cc9e1f5c1b52f",
|
84
|
+
"dToken": "0x9bad0035b31c0193fed4322d1eb2c29aead799f8",
|
85
|
+
"loanToValue": 0.0,
|
86
|
+
"liquidationThreshold": 0.3
|
87
|
+
},
|
88
|
+
"0x0e97c7a0f8b2c9885c8ac9fc6136e829cbc21d42": {
|
89
|
+
"tToken": "0xc3b6d357e0beadb18a23a53e1dc4839c2d15bdc2",
|
90
|
+
"sdToken": "0x0b272319cf39cf5fa8d2976d54189dade1e90c2c",
|
91
|
+
"dToken": "0xa734abe2a512dabf23146c97307cfc5b347ae50a",
|
92
|
+
"loanToValue": 0.6,
|
93
|
+
"liquidationThreshold": 0.9
|
94
|
+
},
|
95
|
+
"0x4b9eb6c0b6ea15176bbf62841c6b2a8a398cb656": {
|
96
|
+
"tToken": "0x15b362768465f966f1e5983b7ae87f4c5bf75c55",
|
97
|
+
"sdToken": "0xb6abb4183b98a2a85e1d8e9ac93542446461e2d7",
|
98
|
+
"dToken": "0x0325f21eb0a16802e2bacd931964434929985548",
|
99
|
+
"loanToValue": 0.0,
|
100
|
+
"liquidationThreshold": 0.8
|
101
|
+
},
|
102
|
+
"0x3a287a06c66f9e95a56327185ca2bdf5f031cecd": {
|
103
|
+
"tToken": "0x0a2374d4387e9c8d730e7c90eed23c045938fdbb",
|
104
|
+
"sdToken": "0x033599b0bc6012be8cd08b258569773b610e680b",
|
105
|
+
"dToken": "0xf001d84605b2e7dbaaec545b431088bbf8e21dea",
|
106
|
+
"loanToValue": 0.0,
|
107
|
+
"liquidationThreshold": 0.0
|
108
|
+
},
|
109
|
+
"0x703b52f2b28febcb60e1372858af5b18849fe867": {
|
110
|
+
"tToken": "0xe855e73cad110d2f3ee2288d506d6140722c04c7",
|
111
|
+
"sdToken": "0xad99d8aafb6aaa110e7883f0b91ab912219f965d",
|
112
|
+
"dToken": "0xa351d9eb46d4fb3269e0fe9b7416ec2318151bc0",
|
113
|
+
"loanToValue": 0.0,
|
114
|
+
"liquidationThreshold": 0.0
|
115
|
+
},
|
116
|
+
"0x5a7d6b2f92c77fad6ccabd7ee0624e64907eaf3e": {
|
117
|
+
"tToken": "0x072416442a0e40135e75c0eefb4be708b74b6c8a",
|
118
|
+
"sdToken": "0x09990d77de57895c9227321811afe2d6f3c8b55c",
|
119
|
+
"dToken": "0x863cd5f43a50e1141574b796d412f73232cba60c",
|
120
|
+
"loanToValue": 0.8,
|
121
|
+
"liquidationThreshold": 0.85
|
122
|
+
},
|
123
|
+
"0xe757355edba7ced7b8c0271bba4efda184ad75ab": {
|
124
|
+
"tToken": "0xafe91971600af83d23ab691b0a1a566d5f8e42c0",
|
125
|
+
"sdToken": "0xf84e6afeab770e08299f20c1f039de2c07175a12",
|
126
|
+
"dToken": "0x8450646d1ea5f4fef8ab6af95cffbb29664af011",
|
127
|
+
"loanToValue": 0.5,
|
128
|
+
"liquidationThreshold": 0.85
|
129
|
+
},
|
130
|
+
"0x1d17cbcf0d6d143135ae902365d2e5e2a16538d4": {
|
131
|
+
"tToken": "0x9e20e83d636870a887ce7c85cecfb8b3e95c9db2",
|
132
|
+
"sdToken": "0x8f44d6ab626b2c3831b9a0d84322961e20d94b26",
|
133
|
+
"dToken": "0x5c9fa0a3ee84cbc892ab9968d7c5086cc506432d",
|
134
|
+
"loanToValue": 0.8,
|
135
|
+
"liquidationThreshold": 0.85
|
136
|
+
}
|
137
|
+
}
|
138
|
+
}
|
@@ -0,0 +1,120 @@
|
|
1
|
+
import logging
|
2
|
+
|
3
|
+
from defi_services.abis.lending.moonwell.moonwell_comptroller_abi import MOONWELL_COMPTROLLER_ABI
|
4
|
+
from defi_services.abis.lending.moonwell.moonwell_ctoken_abi import MOONWELL_CTOKEN_ABI
|
5
|
+
from defi_services.abis.token.erc20_abi import ERC20_ABI
|
6
|
+
from defi_services.constants.chain_constant import Chain
|
7
|
+
from defi_services.constants.entities.lending_constant import Lending
|
8
|
+
from defi_services.constants.token_constant import Token
|
9
|
+
from defi_services.jobs.queriers.state_querier import StateQuerier
|
10
|
+
from defi_services.services.lending.lending_info.base.moonwell_base import MOONWELL_BASE
|
11
|
+
from defi_services.services.lending.venus_services import VenusStateService
|
12
|
+
|
13
|
+
logger = logging.getLogger("MoonWell Lending Pool State Service")
|
14
|
+
|
15
|
+
|
16
|
+
class MoonWellInfo:
|
17
|
+
mapping = {
|
18
|
+
Chain.base: MOONWELL_BASE
|
19
|
+
}
|
20
|
+
|
21
|
+
|
22
|
+
class MoonWellStateService(VenusStateService):
|
23
|
+
def __init__(self, state_service: StateQuerier, chain_id: str = "0x38"):
|
24
|
+
super().__init__(state_service, chain_id)
|
25
|
+
self.name = f"{chain_id}_{Lending.moonwell}"
|
26
|
+
self.chain_id = chain_id
|
27
|
+
self.pool_info = MoonWellInfo.mapping.get(chain_id)
|
28
|
+
self.state_service = state_service
|
29
|
+
self.comptroller_abi = MOONWELL_COMPTROLLER_ABI
|
30
|
+
self.vtoken_abi = MOONWELL_CTOKEN_ABI
|
31
|
+
|
32
|
+
def get_service_info(self):
|
33
|
+
info = {
|
34
|
+
Lending.moonwell: {
|
35
|
+
"chain_id": self.chain_id,
|
36
|
+
"type": "lending",
|
37
|
+
"protocol_info": self.pool_info
|
38
|
+
}
|
39
|
+
}
|
40
|
+
return info
|
41
|
+
|
42
|
+
def get_apy_lending_pool_function_info(
|
43
|
+
self,
|
44
|
+
reserves_info: dict,
|
45
|
+
block_number: int = "latest"
|
46
|
+
):
|
47
|
+
rpc_calls = {}
|
48
|
+
for token_address, reserve_info in reserves_info.items():
|
49
|
+
if token_address != Token.native_token:
|
50
|
+
query_id = f"decimals_{token_address}_{block_number}".lower()
|
51
|
+
rpc_calls[query_id] = self.state_service.get_function_info(token_address, ERC20_ABI, "decimals", [], block_number)
|
52
|
+
|
53
|
+
ctoken = reserve_info.get("cToken")
|
54
|
+
for fn_name in ['decimals', 'totalSupply', 'totalBorrows', 'supplyRatePerTimestamp', 'borrowRatePerTimestamp', 'exchangeRateStored']:
|
55
|
+
query_id = f"{fn_name}_{ctoken}_{block_number}".lower()
|
56
|
+
rpc_calls[query_id] = self.get_ctoken_function_info(
|
57
|
+
ctoken=ctoken,
|
58
|
+
fn_name=fn_name,
|
59
|
+
block_number=block_number
|
60
|
+
)
|
61
|
+
|
62
|
+
return rpc_calls
|
63
|
+
|
64
|
+
def get_reserve_tokens_metadata(
|
65
|
+
self,
|
66
|
+
decoded_data: dict,
|
67
|
+
reserves_info: dict,
|
68
|
+
block_number: int = "latest"
|
69
|
+
):
|
70
|
+
reserve_tokens_info = []
|
71
|
+
for token_address, reserve_info in reserves_info.items():
|
72
|
+
if token_address != Token.native_token:
|
73
|
+
underlying_decimals_query_id = f"decimals_{token_address}_{block_number}".lower()
|
74
|
+
underlying_decimals = decoded_data.get(underlying_decimals_query_id)
|
75
|
+
else:
|
76
|
+
underlying_decimals = Chain.native_decimals.get(self.chain_id, 18)
|
77
|
+
|
78
|
+
ctoken = reserve_info.get("cToken")
|
79
|
+
ctoken_decimals_query_id = f"decimals_{ctoken}_{block_number}".lower()
|
80
|
+
total_supply_query_id = f"totalSupply_{ctoken}_{block_number}".lower()
|
81
|
+
total_borrow_query_id = f"totalBorrows_{ctoken}_{block_number}".lower()
|
82
|
+
supply_rate_query_id = f"supplyRatePerTimestamp_{ctoken}_{block_number}".lower()
|
83
|
+
borrow_rate_query_id = f"borrowRatePerTimestamp_{ctoken}_{block_number}".lower()
|
84
|
+
exchange_rate_query_id = f"exchangeRateStored_{ctoken}_{block_number}".lower()
|
85
|
+
|
86
|
+
reserve_tokens_info.append({
|
87
|
+
"token": ctoken,
|
88
|
+
"token_decimals": decoded_data.get(ctoken_decimals_query_id),
|
89
|
+
"borrow_rate": decoded_data.get(borrow_rate_query_id),
|
90
|
+
"supply_rate": decoded_data.get(supply_rate_query_id),
|
91
|
+
"supply": decoded_data.get(total_supply_query_id),
|
92
|
+
"borrow": decoded_data.get(total_borrow_query_id),
|
93
|
+
"exchange_rate": decoded_data.get(exchange_rate_query_id),
|
94
|
+
"underlying_decimals": underlying_decimals,
|
95
|
+
"underlying": token_address
|
96
|
+
})
|
97
|
+
return reserve_tokens_info
|
98
|
+
|
99
|
+
@classmethod
|
100
|
+
def _calculate_interest_rates(
|
101
|
+
cls, token_info: dict, pool_decimals: int, apx_block_speed_in_seconds: float):
|
102
|
+
exchange_rate = float(token_info["exchange_rate"]) / 10 ** (18 - 8 + token_info["underlying_decimals"])
|
103
|
+
|
104
|
+
total_borrow = float(token_info["borrow"]) / 10 ** int(token_info["underlying_decimals"])
|
105
|
+
total_supply = float(token_info["supply"]) * exchange_rate / 10 ** int(token_info["token_decimals"])
|
106
|
+
|
107
|
+
supply_apy = ((token_info["supply_rate"] / 10 ** pool_decimals) * 86400 + 1) ** 365 - 1
|
108
|
+
borrow_apy = ((token_info["borrow_rate"] / 10 ** pool_decimals) * 86400 + 1) ** 365 - 1
|
109
|
+
|
110
|
+
return {
|
111
|
+
'deposit_apy': supply_apy,
|
112
|
+
'borrow_apy': borrow_apy,
|
113
|
+
'total_deposit': total_supply,
|
114
|
+
'total_borrow': total_borrow
|
115
|
+
}
|
116
|
+
|
117
|
+
def get_ctoken_function_info(self, ctoken: str, fn_name: str, fn_paras: list = None, block_number: int = "latest"):
|
118
|
+
return self.state_service.get_function_info(
|
119
|
+
ctoken, self.vtoken_abi, fn_name, fn_paras, block_number
|
120
|
+
)
|
@@ -3,9 +3,9 @@ import time
|
|
3
3
|
|
4
4
|
from web3 import Web3
|
5
5
|
|
6
|
-
from defi_services.abis.lending.
|
7
|
-
from defi_services.abis.lending.
|
8
|
-
from defi_services.abis.lending.
|
6
|
+
from defi_services.abis.lending.aave_v2_and_forks.aave_v2_incentives_abi import AAVE_V2_INCENTIVES_ABI
|
7
|
+
from defi_services.abis.lending.aave_v2_and_forks.lending_pool_abi import LENDING_POOL_ABI
|
8
|
+
from defi_services.abis.lending.aave_v2_and_forks.oracle_abi import ORACLE_ABI
|
9
9
|
from defi_services.abis.lending.morpho.morpho_aave_v2_comptroller_abi import MORPHO_AAVE_V2_COMPTROLLER
|
10
10
|
from defi_services.abis.lending.morpho.morpho_aave_v2_lens_abi import MORPHO_AAVE_V2_LENS_ABI
|
11
11
|
from defi_services.abis.token.erc20_abi import ERC20_ABI
|
@@ -3,8 +3,8 @@ import time
|
|
3
3
|
|
4
4
|
from web3 import Web3
|
5
5
|
|
6
|
-
from defi_services.abis.lending.
|
7
|
-
from defi_services.abis.lending.
|
6
|
+
from defi_services.abis.lending.aave_v2_and_forks.aave_v2_incentives_abi import AAVE_V2_INCENTIVES_ABI
|
7
|
+
from defi_services.abis.lending.aave_v2_and_forks.oracle_abi import ORACLE_ABI
|
8
8
|
from defi_services.abis.lending.aave.aave_v3.aave_v3_lending_pool_abi import AAVE_V3_LENDING_POOL_ABI
|
9
9
|
from defi_services.abis.lending.morpho.morpho_aave_v3_comptroller_abi import MORPHO_AAVE_V3_COMPTROLLER_ABI
|
10
10
|
from defi_services.abis.token.erc20_abi import ERC20_ABI
|