defi-state-querier 0.5.33__py3-none-any.whl → 0.5.34__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/venus/venus_comptroller_optimism_abi.py +2125 -0
- defi_services/abis/lending/yldr/__init__.py +0 -0
- defi_services/abis/lending/yldr/yldr_lending_abi.py +1725 -0
- defi_services/constants/chain_constant.py +4 -0
- defi_services/constants/entities/lending_constant.py +2 -1
- defi_services/constants/entities/lending_services.py +5 -2
- defi_services/jobs/queriers/state_querier.py +1 -1
- defi_services/services/lending/aave_v3_services.py +11 -1
- defi_services/services/lending/lending_info/arbitrum/venus_arbitrum.py +46 -2
- defi_services/services/lending/lending_info/arbitrum/yldr_arbitrum.py +51 -2
- defi_services/services/lending/lending_info/avalanche/benqi_avalanche.py +2 -2
- defi_services/services/lending/lending_info/base/venus_base.py +42 -0
- defi_services/services/lending/lending_info/celo/__init__.py +0 -0
- defi_services/services/lending/lending_info/celo/aave_v3_celo.py +47 -0
- defi_services/services/lending/lending_info/ethereum/spark_eth.py +1 -1
- defi_services/services/lending/lending_info/ethereum/venus_eth.py +124 -2
- defi_services/services/lending/lending_info/ethereum/yldr_ethereum.py +38 -2
- defi_services/services/lending/lending_info/gnosis/__init__.py +0 -0
- defi_services/services/lending/lending_info/gnosis/aave_v3_gnoisis.py +69 -0
- defi_services/services/lending/lending_info/gnosis/spark_gnosis.py +75 -0
- defi_services/services/lending/lending_info/harmony/__init__.py +0 -0
- defi_services/services/lending/lending_info/harmony/aave_v3_harmony.py +69 -0
- defi_services/services/lending/lending_info/opBNB/__init__.py +0 -0
- defi_services/services/lending/lending_info/opBNB/venus_opbnb.py +42 -0
- defi_services/services/lending/lending_info/optimism/moonwell_optimism.py +86 -0
- defi_services/services/lending/lending_info/optimism/venus_optimism.py +42 -0
- defi_services/services/lending/lending_info/scroll/__init__.py +0 -0
- defi_services/services/lending/lending_info/scroll/aave_v3_scroll.py +48 -0
- defi_services/services/lending/lending_info/sonic/__init__.py +0 -0
- defi_services/services/lending/lending_info/sonic/aave_v3_sonic.py +41 -0
- defi_services/services/lending/lending_info/zksync/venus_zksync.py +58 -2
- defi_services/services/lending/moonwell_service.py +3 -1
- defi_services/services/lending/spark_services.py +3 -1
- defi_services/services/lending/venus_services.py +18 -2
- defi_services/services/lending/xlend_services.py +2 -10
- defi_services/services/lending/yldr_services.py +394 -0
- {defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/METADATA +1 -1
- {defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/RECORD +42 -23
- {defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/WHEEL +1 -1
- {defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/licenses/LICENSE +0 -0
- {defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,394 @@
|
|
1
|
+
import logging
|
2
|
+
|
3
|
+
from web3 import Web3
|
4
|
+
|
5
|
+
from defi_services.abis.lending.aave.aave_v3.aave_v3_incentives_abi import AAVE_V3_INCENTIVES_ABI
|
6
|
+
from defi_services.abis.lending.aave.aave_v3.aave_v3_lending_pool_abi import AAVE_V3_LENDING_POOL_ABI
|
7
|
+
from defi_services.abis.lending.aave.aave_v3.aave_v3_oracle_abi import AAVE_V3_ORACLE_ABI
|
8
|
+
from defi_services.abis.lending.morpho.morpho_aave_v3_comptroller_abi import MORPHO_AAVE_V3_COMPTROLLER_ABI
|
9
|
+
from defi_services.abis.lending.yldr.yldr_lending_abi import YLDR_LENDING_ABI
|
10
|
+
from defi_services.abis.token.erc20_abi import ERC20_ABI
|
11
|
+
from defi_services.constants.chain_constant import Chain
|
12
|
+
from defi_services.constants.db_constant import DBConst
|
13
|
+
from defi_services.constants.entities.lending_constant import Lending
|
14
|
+
from defi_services.constants.network_constants import NATIVE_TOKEN
|
15
|
+
from defi_services.constants.time_constant import TimeConstants
|
16
|
+
from defi_services.jobs.queriers.state_querier import StateQuerier
|
17
|
+
from defi_services.services.lending.aave_v2_services import AaveV2StateService
|
18
|
+
from defi_services.services.lending.lending_info.arbitrum.yldr_arbitrum import YLDR_ARBITRUM
|
19
|
+
from defi_services.services.lending.lending_info.base.xlend_base import XLEND_BASE
|
20
|
+
from defi_services.services.lending.lending_info.ethereum.yldr_ethereum import YLDR_ETHEREUM
|
21
|
+
from defi_services.services.lending.lending_info.optimism.xlend_optimism import XLEND_OPTIMISM
|
22
|
+
|
23
|
+
logger = logging.getLogger("YLDR Lending Pool State Service")
|
24
|
+
|
25
|
+
|
26
|
+
class YLDRInfo:
|
27
|
+
mapping = {
|
28
|
+
Chain.arbitrum: YLDR_ARBITRUM,
|
29
|
+
Chain.ethereum: YLDR_ETHEREUM
|
30
|
+
}
|
31
|
+
|
32
|
+
|
33
|
+
class YLDRStateService(AaveV2StateService):
|
34
|
+
def __init__(self, state_service: StateQuerier, chain_id: str = "0x1"):
|
35
|
+
super().__init__(state_service, chain_id)
|
36
|
+
self.name = f"{chain_id}_{Lending.xlend}"
|
37
|
+
self.chain_id = chain_id
|
38
|
+
self.pool_info = YLDRInfo.mapping.get(chain_id)
|
39
|
+
self.lending_abi = YLDR_LENDING_ABI
|
40
|
+
self.incentive_abi = AAVE_V3_INCENTIVES_ABI
|
41
|
+
self.oracle_abi = AAVE_V3_ORACLE_ABI
|
42
|
+
self.comptroller_abi = MORPHO_AAVE_V3_COMPTROLLER_ABI
|
43
|
+
self.state_service = state_service
|
44
|
+
|
45
|
+
def get_service_info(self):
|
46
|
+
info = {
|
47
|
+
Lending.yldr: {
|
48
|
+
"chain_id": self.chain_id,
|
49
|
+
"type": "lending",
|
50
|
+
"protocol_info": self.pool_info
|
51
|
+
}
|
52
|
+
}
|
53
|
+
return info
|
54
|
+
|
55
|
+
def get_dapp_asset_info(self, block_number: int = 'latest'):
|
56
|
+
_w3 = self.state_service.get_w3()
|
57
|
+
pool_address = self.pool_info.get("address")
|
58
|
+
pool_contract = _w3.eth.contract(address=_w3.to_checksum_address(pool_address), abi=self.lending_abi)
|
59
|
+
reserve_list = pool_contract.functions.getReservesList().call(block_identifier=block_number)
|
60
|
+
reserves_info = {}
|
61
|
+
for token in reserve_list:
|
62
|
+
token = token.lower()
|
63
|
+
reserve_data = pool_contract.functions.getReserveData(
|
64
|
+
_w3.to_checksum_address(token)).call(block_identifier=block_number)
|
65
|
+
reserves_info[token] = {}
|
66
|
+
reserves_info[token]["tToken"] = reserve_data[7].lower()
|
67
|
+
reserves_info[token]["dToken"] = reserve_data[8].lower()
|
68
|
+
risk_param = bin(reserve_data[0][0])[2:]
|
69
|
+
reserves_info[token]["loanToValue"] = int(risk_param[-15:], 2) / 10 ** 4
|
70
|
+
reserves_info[token]["liquidationThreshold"] = int(risk_param[-31:-16], 2) / 10 ** 4
|
71
|
+
|
72
|
+
return reserves_info
|
73
|
+
|
74
|
+
# CALCULATE APY LENDING POOL
|
75
|
+
def get_apy_lending_pool_function_info(
|
76
|
+
self,
|
77
|
+
reserves_info: dict,
|
78
|
+
block_number: int = "latest"
|
79
|
+
):
|
80
|
+
rpc_calls = {}
|
81
|
+
for token_address, value in reserves_info.items():
|
82
|
+
reserve_key = f"getReserveData_{self.name}_{token_address}_{block_number}".lower()
|
83
|
+
atoken_total_supply_key = f'totalSupply_{value["tToken"]}_{block_number}'.lower()
|
84
|
+
debt_token_total_supply_key = f'totalSupply_{value["dToken"]}_{block_number}'.lower()
|
85
|
+
decimals_key = f"decimals_{token_address}_{block_number}".lower()
|
86
|
+
rpc_calls[reserve_key] = self.get_function_lending_pool_info("getReserveData", [token_address])
|
87
|
+
rpc_calls[atoken_total_supply_key] = self.state_service.get_function_info(
|
88
|
+
value["tToken"], ERC20_ABI, "totalSupply", block_number=block_number)
|
89
|
+
rpc_calls[debt_token_total_supply_key] = self.state_service.get_function_info(
|
90
|
+
value["dToken"], ERC20_ABI, "totalSupply", block_number=block_number)
|
91
|
+
rpc_calls[decimals_key] = self.state_service.get_function_info(
|
92
|
+
token_address, ERC20_ABI, "decimals", block_number=block_number)
|
93
|
+
|
94
|
+
return rpc_calls
|
95
|
+
|
96
|
+
def get_reserve_tokens_metadata(
|
97
|
+
self,
|
98
|
+
decoded_data: dict,
|
99
|
+
reserves_info: dict,
|
100
|
+
block_number: int = "latest"
|
101
|
+
):
|
102
|
+
reserve_tokens_info = []
|
103
|
+
for token_address, reserve_info in reserves_info.items():
|
104
|
+
get_reserve_data_call_id = f'getReserveData_{self.name}_{token_address}_{block_number}'.lower()
|
105
|
+
reserve_data = decoded_data.get(get_reserve_data_call_id)
|
106
|
+
atoken = reserve_data[7].lower()
|
107
|
+
debt_token = reserve_data[8].lower()
|
108
|
+
decimals_call_id = f"decimals_{token_address}_{block_number}".lower()
|
109
|
+
atoken_total_supply_key = f'totalSupply_{atoken}_{block_number}'.lower()
|
110
|
+
debt_token_total_supply_key = f'totalSupply_{debt_token}_{block_number}'.lower()
|
111
|
+
data = {
|
112
|
+
'underlying': token_address,
|
113
|
+
'underlying_decimals': decoded_data.get(decimals_call_id),
|
114
|
+
'a_token_supply': decoded_data.get(atoken_total_supply_key),
|
115
|
+
'd_token_supply': decoded_data.get(debt_token_total_supply_key),
|
116
|
+
'supply_apy': reserve_data[2],
|
117
|
+
'borrow_apy': reserve_data[4],
|
118
|
+
|
119
|
+
}
|
120
|
+
|
121
|
+
reserve_tokens_info.append(data)
|
122
|
+
|
123
|
+
return reserve_tokens_info
|
124
|
+
|
125
|
+
def get_apy_lending_pool_function_info_deprecated(
|
126
|
+
self,
|
127
|
+
reserves_info: dict,
|
128
|
+
block_number: int = "latest",
|
129
|
+
):
|
130
|
+
rpc_calls = {}
|
131
|
+
reward_tokens = self.pool_info.get("rewardTokensList")
|
132
|
+
for token_address, value in reserves_info.items():
|
133
|
+
reserve_key = f"getReserveData_{self.name}_{token_address}_{block_number}".lower()
|
134
|
+
atoken_total_supply_key = f'totalSupply_{value["tToken"]}_{block_number}'.lower()
|
135
|
+
debt_token_total_supply_key = f'totalSupply_{value["dToken"]}_{block_number}'.lower()
|
136
|
+
decimals_key = f"decimals_{token_address}_{block_number}".lower()
|
137
|
+
for reward_token in reward_tokens:
|
138
|
+
atoken_assets_key = f"getRewardsData_{value['tToken']}_{reward_token}_{block_number}".lower()
|
139
|
+
debt_token_assets_key = f"getRewardsData_{value['dToken']}_{reward_token}_{block_number}".lower()
|
140
|
+
rpc_calls[atoken_assets_key] = self.get_function_incentive_info(
|
141
|
+
"getRewardsData", [value['tToken'], reward_token], block_number)
|
142
|
+
rpc_calls[debt_token_assets_key] = self.get_function_incentive_info(
|
143
|
+
"getRewardsData", [value['dToken'], reward_token], block_number)
|
144
|
+
|
145
|
+
rpc_calls[reserve_key] = self.get_function_lending_pool_info("getReserveData", [token_address])
|
146
|
+
rpc_calls[atoken_total_supply_key] = self.state_service.get_function_info(
|
147
|
+
value["tToken"], ERC20_ABI, "totalSupply", block_number=block_number)
|
148
|
+
rpc_calls[debt_token_total_supply_key] = self.state_service.get_function_info(
|
149
|
+
value["dToken"], ERC20_ABI, "totalSupply", block_number=block_number)
|
150
|
+
rpc_calls[decimals_key] = self.state_service.get_function_info(
|
151
|
+
token_address, ERC20_ABI, "decimals", block_number=block_number)
|
152
|
+
|
153
|
+
return rpc_calls
|
154
|
+
|
155
|
+
def get_apy_lending_pool_deprecated(
|
156
|
+
self,
|
157
|
+
atokens: dict,
|
158
|
+
debt_tokens: dict,
|
159
|
+
decimals: dict,
|
160
|
+
reserves_info: dict,
|
161
|
+
asset_data_tokens: dict,
|
162
|
+
total_supply_tokens: dict,
|
163
|
+
interest_rate: dict,
|
164
|
+
token_prices: dict,
|
165
|
+
pool_token_price: float,
|
166
|
+
pool_decimals: int = 18,
|
167
|
+
):
|
168
|
+
reward_tokens = self.pool_info.get("rewardTokensList")
|
169
|
+
for token_address in reserves_info:
|
170
|
+
atoken = atokens.get(token_address)
|
171
|
+
debt_token = debt_tokens.get(token_address)
|
172
|
+
decimal = decimals.get(token_address)
|
173
|
+
total_supply_t = total_supply_tokens.get(atoken, 0)
|
174
|
+
total_supply_d = total_supply_tokens.get(debt_token, 0)
|
175
|
+
# update deposit, borrow apy
|
176
|
+
total_supply_t = total_supply_t / 10 ** decimal
|
177
|
+
total_supply_d = total_supply_d / 10 ** decimal
|
178
|
+
token_price = token_prices.get(token_address)
|
179
|
+
interest_rate[token_address].update({
|
180
|
+
"utilization": total_supply_d / total_supply_t,
|
181
|
+
})
|
182
|
+
total_supply_t_in_usd = total_supply_t * token_price
|
183
|
+
total_supply_d_in_usd = total_supply_d * token_price
|
184
|
+
if reward_tokens:
|
185
|
+
interest_rate[token_address][DBConst.reward_deposit_apy] = {}
|
186
|
+
interest_rate[token_address][DBConst.reward_borrow_apy] = {}
|
187
|
+
asset_data_t = asset_data_tokens.get(atoken)
|
188
|
+
asset_data_d = asset_data_tokens.get(debt_token)
|
189
|
+
# update deposit, borrow apy
|
190
|
+
for reward_address in reward_tokens:
|
191
|
+
eps_t = asset_data_t[reward_address][1] / 10 ** 18
|
192
|
+
eps_d = asset_data_d[reward_address][1] / 10 ** 18
|
193
|
+
if total_supply_t:
|
194
|
+
deposit_apr = eps_t * TimeConstants.A_YEAR * pool_token_price / (
|
195
|
+
total_supply_t * token_price)
|
196
|
+
else:
|
197
|
+
deposit_apr = 0
|
198
|
+
if total_supply_d:
|
199
|
+
borrow_apr = eps_d * TimeConstants.A_YEAR * pool_token_price / (
|
200
|
+
total_supply_d * token_price)
|
201
|
+
else:
|
202
|
+
borrow_apr = 0
|
203
|
+
interest_rate[token_address][DBConst.reward_deposit_apy].update({
|
204
|
+
DBConst.reward_borrow_apy: deposit_apr}
|
205
|
+
)
|
206
|
+
interest_rate[token_address][DBConst.reward_borrow_apy].update({
|
207
|
+
reward_address: borrow_apr}
|
208
|
+
)
|
209
|
+
# update liquidity
|
210
|
+
liquidity_log = {
|
211
|
+
'total_borrow': {
|
212
|
+
DBConst.amount: total_supply_d,
|
213
|
+
DBConst.value_in_usd: total_supply_d_in_usd},
|
214
|
+
'total_deposit': {
|
215
|
+
DBConst.amount: total_supply_t,
|
216
|
+
DBConst.value_in_usd: total_supply_t_in_usd}
|
217
|
+
}
|
218
|
+
interest_rate[token_address].update({DBConst.liquidity_change_logs: liquidity_log})
|
219
|
+
|
220
|
+
return interest_rate
|
221
|
+
|
222
|
+
def calculate_apy_lending_pool_function_call_deprecated(
|
223
|
+
self,
|
224
|
+
reserves_info: dict,
|
225
|
+
decoded_data: dict,
|
226
|
+
token_prices: dict,
|
227
|
+
pool_token_price: float,
|
228
|
+
pool_decimals: int = 18,
|
229
|
+
block_number: int = 'latest',
|
230
|
+
):
|
231
|
+
reserves_data = {}
|
232
|
+
for token in reserves_info:
|
233
|
+
get_reserve_data_call_id = f'getReserveData_{self.name}_{token}_{block_number}'.lower()
|
234
|
+
reserves_data[token.lower()] = decoded_data.get(get_reserve_data_call_id)
|
235
|
+
reward_tokens = self.pool_info.get("rewardTokensList")
|
236
|
+
interest_rate, atokens, debt_tokens, sdebt_tokens, decimals, asset_data_tokens = {}, {}, {}, {}, {}, {}
|
237
|
+
total_supply_tokens = {}
|
238
|
+
for token_address in reserves_info:
|
239
|
+
lower_address = token_address.lower()
|
240
|
+
reserve_data = reserves_data[lower_address]
|
241
|
+
interest_rate[lower_address] = {
|
242
|
+
'deposit_apy': float(reserve_data[3]) / 10 ** 27,
|
243
|
+
'borrow_apy': float(reserve_data[4]) / 10 ** 27,
|
244
|
+
'stable_borrow_apy': float(reserve_data[5]) / 10 ** 27}
|
245
|
+
atoken = reserve_data[7].lower()
|
246
|
+
sdebt_token = reserve_data[8].lower()
|
247
|
+
debt_token = reserve_data[9].lower()
|
248
|
+
decimals_call_id = f"decimals_{token_address}_{block_number}".lower()
|
249
|
+
atoken_total_supply_key = f'totalSupply_{atoken}_{block_number}'.lower()
|
250
|
+
debt_token_total_supply_key = f'totalSupply_{debt_token}_{block_number}'.lower()
|
251
|
+
asset_data_tokens[atoken] = {}
|
252
|
+
asset_data_tokens[debt_token] = {}
|
253
|
+
if sdebt_token != NATIVE_TOKEN:
|
254
|
+
asset_data_tokens[sdebt_token] = {}
|
255
|
+
|
256
|
+
total_supply_tokens[atoken] = {}
|
257
|
+
for reward_token in reward_tokens:
|
258
|
+
atoken_assets_key = f"getRewardsData_{atoken}_{reward_token}_{block_number}".lower()
|
259
|
+
debt_token_assets_key = f"getRewardsData_{debt_token}_{reward_token}_{block_number}".lower()
|
260
|
+
asset_data_tokens[atoken][reward_token] = decoded_data.get(atoken_assets_key)
|
261
|
+
asset_data_tokens[debt_token][reward_token] = decoded_data.get(debt_token_assets_key)
|
262
|
+
total_supply_tokens[atoken][reward_token] = decoded_data.get(atoken_total_supply_key)
|
263
|
+
if sdebt_token != NATIVE_TOKEN:
|
264
|
+
sdebt_token_assets_key = f"getRewardsData_{sdebt_tokens}_{reward_token}_{block_number}".lower()
|
265
|
+
asset_data_tokens[sdebt_token][reward_token] = decoded_data.get(sdebt_token_assets_key)
|
266
|
+
|
267
|
+
atokens[lower_address] = atoken
|
268
|
+
debt_tokens[lower_address] = debt_token
|
269
|
+
sdebt_tokens[lower_address] = sdebt_token
|
270
|
+
decimals[lower_address] = decoded_data.get(decimals_call_id)
|
271
|
+
total_supply_tokens[debt_token] = decoded_data.get(debt_token_total_supply_key)
|
272
|
+
if sdebt_token != NATIVE_TOKEN:
|
273
|
+
sdebt_token_total_supply_key = f'totalSupply_{sdebt_token}_{block_number}'.lower()
|
274
|
+
total_supply_tokens[sdebt_token] = decoded_data.get(sdebt_token_total_supply_key)
|
275
|
+
|
276
|
+
asset_price_key = f"getAssetsPrices_{self.name}_{block_number}".lower()
|
277
|
+
if not token_prices and asset_price_key in decoded_data:
|
278
|
+
token_prices = {}
|
279
|
+
prices = decoded_data.get(asset_price_key)
|
280
|
+
for pos in range(len(reserves_info.keys())):
|
281
|
+
token_prices[reserves_info[pos].lower()] = prices[pos] / 10 ** pool_decimals
|
282
|
+
|
283
|
+
data = self.get_apy_lending_pool_deprecated(
|
284
|
+
atokens, debt_tokens, decimals, reserves_info, asset_data_tokens, total_supply_tokens, interest_rate,
|
285
|
+
token_prices, pool_token_price, pool_decimals
|
286
|
+
)
|
287
|
+
|
288
|
+
return data
|
289
|
+
|
290
|
+
# REWARDS BALANCE
|
291
|
+
def get_rewards_balance_function_info(
|
292
|
+
self,
|
293
|
+
wallet,
|
294
|
+
reserves_info: dict = None,
|
295
|
+
block_number: int = "latest"
|
296
|
+
):
|
297
|
+
return {}
|
298
|
+
|
299
|
+
def calculate_rewards_balance(
|
300
|
+
self, wallet: str, reserves_info: dict, decoded_data: dict, block_number: int = "latest"):
|
301
|
+
return {}
|
302
|
+
|
303
|
+
# WALLET DEPOSIT BORROW BALANCE
|
304
|
+
def get_wallet_deposit_borrow_balance_function_info(
|
305
|
+
self,
|
306
|
+
wallet: str,
|
307
|
+
reserves_info: dict,
|
308
|
+
block_number: int = "latest",
|
309
|
+
health_factor: bool = False
|
310
|
+
):
|
311
|
+
rpc_calls = {}
|
312
|
+
for token in reserves_info:
|
313
|
+
value = reserves_info[token]
|
314
|
+
atoken_balance_of_key = f'balanceOf_{value["tToken"]}_{wallet}_{block_number}'.lower()
|
315
|
+
debt_token_balance_of_key = f'balanceOf_{value["dToken"]}_{wallet}_{block_number}'.lower()
|
316
|
+
decimals_key = f"decimals_{token}_{block_number}".lower()
|
317
|
+
|
318
|
+
rpc_calls[atoken_balance_of_key] = self.state_service.get_function_info(
|
319
|
+
value["tToken"], ERC20_ABI, "balanceOf", [wallet], block_number=block_number)
|
320
|
+
rpc_calls[debt_token_balance_of_key] = self.state_service.get_function_info(
|
321
|
+
value["dToken"], ERC20_ABI, "balanceOf", [wallet], block_number=block_number)
|
322
|
+
rpc_calls[decimals_key] = self.state_service.get_function_info(
|
323
|
+
token, ERC20_ABI, "decimals", block_number=block_number)
|
324
|
+
|
325
|
+
if health_factor:
|
326
|
+
rpc_calls.update(self.get_health_factor_function_info(wallet, reserves_info, block_number))
|
327
|
+
|
328
|
+
return rpc_calls
|
329
|
+
|
330
|
+
def get_wallet_deposit_borrow_balance(
|
331
|
+
self,
|
332
|
+
reserves_info: dict,
|
333
|
+
token_prices,
|
334
|
+
decimals,
|
335
|
+
deposit_amount,
|
336
|
+
borrow_amount,
|
337
|
+
stable_borrow_amount
|
338
|
+
):
|
339
|
+
result = {}
|
340
|
+
for token, info in reserves_info.items():
|
341
|
+
decimals_token = decimals.get(token)
|
342
|
+
deposit_amount_wallet = deposit_amount.get(token) / 10 ** decimals_token
|
343
|
+
borrow_amount_wallet = borrow_amount.get(token) / 10 ** decimals_token
|
344
|
+
result[token] = {
|
345
|
+
"borrow_amount": borrow_amount_wallet,
|
346
|
+
"deposit_amount": deposit_amount_wallet,
|
347
|
+
"is_collateral": True if info.get('liquidationThreshold') > 0 else False
|
348
|
+
}
|
349
|
+
if token_prices:
|
350
|
+
deposit_amount_in_usd = deposit_amount_wallet * token_prices.get(token, 0)
|
351
|
+
borrow_amount_in_usd = borrow_amount_wallet * token_prices.get(token, 0)
|
352
|
+
result[token].update({
|
353
|
+
"borrow_amount_in_usd": borrow_amount_in_usd,
|
354
|
+
"deposit_amount_in_usd": deposit_amount_in_usd,
|
355
|
+
})
|
356
|
+
|
357
|
+
return {self.pool_info.get("address"): result}
|
358
|
+
|
359
|
+
def calculate_wallet_deposit_borrow_balance(
|
360
|
+
self,
|
361
|
+
wallet: str,
|
362
|
+
reserves_info: dict,
|
363
|
+
decoded_data: dict,
|
364
|
+
token_prices: dict,
|
365
|
+
pool_decimals: int = 18,
|
366
|
+
block_number: int = 'latest',
|
367
|
+
health_factor: bool = False
|
368
|
+
):
|
369
|
+
asset_price_key = f"getAssetsPrices_{self.name}_{block_number}".lower()
|
370
|
+
if not token_prices and asset_price_key in decoded_data:
|
371
|
+
token_prices = {}
|
372
|
+
prices = decoded_data.get(asset_price_key)
|
373
|
+
for pos in range(len(reserves_info.keys())):
|
374
|
+
token_prices[reserves_info[pos].lower()] = prices[pos] / 10 ** pool_decimals
|
375
|
+
|
376
|
+
decimals, deposit_amount, borrow_amount, stable_borrow_amount = {}, {}, {}, {}
|
377
|
+
for token in reserves_info:
|
378
|
+
value = reserves_info[token]
|
379
|
+
get_total_deposit_id = f"balanceOf_{value['tToken']}_{wallet}_{block_number}".lower()
|
380
|
+
get_total_borrow_id = f"balanceOf_{value['dToken']}_{wallet}_{block_number}".lower()
|
381
|
+
get_decimals_id = f"decimals_{token}_{block_number}".lower()
|
382
|
+
deposit_amount[token] = decoded_data.get(get_total_deposit_id)
|
383
|
+
borrow_amount[token] = decoded_data.get(get_total_borrow_id)
|
384
|
+
decimals[token] = decoded_data.get(get_decimals_id)
|
385
|
+
|
386
|
+
data = self.get_wallet_deposit_borrow_balance(
|
387
|
+
reserves_info, token_prices, decimals, deposit_amount,
|
388
|
+
borrow_amount, stable_borrow_amount
|
389
|
+
)
|
390
|
+
if health_factor:
|
391
|
+
hf = self.calculate_health_factor(
|
392
|
+
wallet, reserves_info, decoded_data, token_prices, pool_decimals, block_number)
|
393
|
+
data.update(hf)
|
394
|
+
return data
|
@@ -1,4 +1,4 @@
|
|
1
|
-
defi_services/__init__.py,sha256=
|
1
|
+
defi_services/__init__.py,sha256=9RlTD2u16fQWmY_zyktDekB5DUUsVdkeqlbWEGg3FNE,23
|
2
2
|
defi_services/abis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
3
|
defi_services/abis/multicall_v3_abi.py,sha256=0aPxjrJJFU17fODjvYFRDn5Y5J1yi_AJKc8v1uohNGY,12352
|
4
4
|
defi_services/abis/dex/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -197,6 +197,7 @@ defi_services/abis/lending/valas/valas_multi_fee_distribution.py,sha256=AgNlFfDS
|
|
197
197
|
defi_services/abis/lending/venus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
198
198
|
defi_services/abis/lending/venus/all_venus_abi.py,sha256=i3_glR-2nVLxUQ1tFGjrf_QS-L-IFEG3yW8DSmhbXio,9064
|
199
199
|
defi_services/abis/lending/venus/venus_comptroller_abi.py,sha256=e8H50OSNAIl69aj4VF8kyp6i3s9CtlcuAwNDN8hWpeo,43234
|
200
|
+
defi_services/abis/lending/venus/venus_comptroller_optimism_abi.py,sha256=Wlbd0GwkOWEhkNaWy1Xqp4kGdc5a3DwslxfOEivcftI,41708
|
200
201
|
defi_services/abis/lending/venus/venus_lens_abi.py,sha256=2-XqvZLQ10pCCmntqUsjhwo0j6906BdyJ9pPywmSfEQ,19566
|
201
202
|
defi_services/abis/lending/venus/venus_lens_abi_v1.py,sha256=uI1GPBVVgEAT3ZZ4GM4waM6gAQuIR3r0HUsbsOtdTs0,14433
|
202
203
|
defi_services/abis/lending/venus/vtoken_abi.py,sha256=T1IQXbhJWWdY3AJ88T8EJywbt5bmK_AE3HXtC3AA2I0,30070
|
@@ -238,6 +239,8 @@ defi_services/abis/lending/wepiggy/wepiggy_comptroller_abi.py,sha256=qU1C06IBWo5
|
|
238
239
|
defi_services/abis/lending/wepiggy/wepiggy_distribution_abi.py,sha256=Eqyd2JNd7R0DZKBssE_67j9uIP6ViUvwJzSVtFuIv1I,18497
|
239
240
|
defi_services/abis/lending/wepiggy/wepiggy_lens_abi.py,sha256=pQlkGoTXOiUIWeC2esc2wXx1mtOtpNAuPeJvDTHyg6s,26448
|
240
241
|
defi_services/abis/lending/wepiggy/wepiggy_lens_abi_v2.py,sha256=1xmoKjwEzGiu5rujm1fmGHI2gHiiGHNPs7vbw0jkOO8,9533
|
242
|
+
defi_services/abis/lending/yldr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
243
|
+
defi_services/abis/lending/yldr/yldr_lending_abi.py,sha256=A8zRe83M_RxIgpY5kFbhcv5w1Y_JyLcHN_l5a7mLDgc,35373
|
241
244
|
defi_services/abis/token/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
242
245
|
defi_services/abis/token/ctoken_abi.py,sha256=rEyzs_TttNG56CPM-M_F_HfaPPRvLL1E9HR0EdV4Lyc,23605
|
243
246
|
defi_services/abis/token/erc20_abi.py,sha256=BQKzaRjwCdc7Pt1X0GqHlnXTmec6f67wIpWbiYOe6c8,5636
|
@@ -309,7 +312,7 @@ defi_services/abis/vault/lido/lido_withdrawl_queue.py,sha256=qKdsXQLKlNU3a_Nk68q
|
|
309
312
|
defi_services/abis/vault/lido/lido_wsteth.py,sha256=DJhMToJS43vV2r5WP2kZSiagt7R8MtKFT8u1xJBjZKU,8780
|
310
313
|
defi_services/abis/vault/lido/lidor_accounting_oracle_hash_consensus.py,sha256=TWCLaccDgvWJZZKLAeoznYgGi3g3M_hFqoo3KE_L7K8,21039
|
311
314
|
defi_services/constants/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
312
|
-
defi_services/constants/chain_constant.py,sha256=
|
315
|
+
defi_services/constants/chain_constant.py,sha256=ir60fhS3gJmJOz4fFiKlr4drmLp5EiNCgWWDgjV98JA,1309
|
313
316
|
defi_services/constants/cosmos_decimals_constant.py,sha256=SjFkFbkvxVAk0jtok_1EaBh69ZE8S1fFAbVn6bdJO4s,13635
|
314
317
|
defi_services/constants/db_constant.py,sha256=gDMFFjhPOgQHuS9sPOTFbsfSdIfdWQEE4tGlxHQhNsE,2566
|
315
318
|
defi_services/constants/mongo_constant.py,sha256=qsDIq2Gg5MkBGaEOh4Fd9y6fOOidF4gGPnQwtaPon3E,398
|
@@ -322,8 +325,8 @@ defi_services/constants/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRk
|
|
322
325
|
defi_services/constants/entities/dex_constant.py,sha256=oCt8RS-0KjFW5zR5IU1Ys49nYCCAraY8pTivOpXoyvs,343
|
323
326
|
defi_services/constants/entities/dex_info_constant.py,sha256=gFjF6gWLZ-e_iLoUeSF-bPZKOwbmxVoMeyaA2wGZESM,1653
|
324
327
|
defi_services/constants/entities/dex_services.py,sha256=Ip3ww6OBA3RQHMrtPE86uoPv2iv-oLh38cKGPtrpKMA,2383
|
325
|
-
defi_services/constants/entities/lending_constant.py,sha256=
|
326
|
-
defi_services/constants/entities/lending_services.py,sha256=
|
328
|
+
defi_services/constants/entities/lending_constant.py,sha256=H6sxuB4gY3e_h4UOnkdGGQR0ADwNhWhe9zXnvXfFVbw,1322
|
329
|
+
defi_services/constants/entities/lending_services.py,sha256=A9Gcrw9DbDr00B9za7zMDUahC5B1L_2YNGMG1fH19Hs,6706
|
327
330
|
defi_services/constants/entities/vault_constant.py,sha256=XaFp2VpmePfym42Gn-5IeT8qnQBq1JcRNrH7r2_tWxo,122
|
328
331
|
defi_services/constants/entities/vault_services.py,sha256=uwcvxwnyXNU3_3mcI6PGWyvGe40tzHmTrmigotLWeMM,752
|
329
332
|
defi_services/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -340,7 +343,7 @@ defi_services/jobs/processors/ton_state_processor.py,sha256=iKgY04iH0MHCwrJOqdAp
|
|
340
343
|
defi_services/jobs/queriers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
341
344
|
defi_services/jobs/queriers/call_state_querier.py,sha256=1aTPFwX28dY6SDQ7wHDAdwSGxYHMR7sZzaIJl8bJqZw,4880
|
342
345
|
defi_services/jobs/queriers/solana_state_querier.py,sha256=TQELYo6GUoF8s-LfetqYbclNaH8bakQqC7y2ifACIb8,3239
|
343
|
-
defi_services/jobs/queriers/state_querier.py,sha256=
|
346
|
+
defi_services/jobs/queriers/state_querier.py,sha256=SfGPZdn6E62pl4_UtBm6BWxnBQ4tudlY0ohUqw7A0Lg,7453
|
344
347
|
defi_services/jobs/queriers/substrate_state_querier.py,sha256=_T0Dk06sP_uBKaxgj2J_EBtJDoq-hi8jU7Np4iuO0LA,3858
|
345
348
|
defi_services/jobs/queriers/ton_state_querier.py,sha256=IkCMGwFgERcX7M_DzBxHxD-nKzbwSWrg8gxuKSERiJw,1148
|
346
349
|
defi_services/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -373,7 +376,7 @@ defi_services/services/eth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
373
376
|
defi_services/services/eth/eth_services.py,sha256=b6nEcgGHVFdRjqT2RZqvjfRuh56yjWgwLj74YNhiHGM,3719
|
374
377
|
defi_services/services/lending/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
375
378
|
defi_services/services/lending/aave_v2_services.py,sha256=I3Z0FH8OLCiMmODzpu63F1x9vHnQMMOU9obhyUdOMKI,22300
|
376
|
-
defi_services/services/lending/aave_v3_services.py,sha256=
|
379
|
+
defi_services/services/lending/aave_v3_services.py,sha256=4JVVG1jxeCzGxNCZBm65cfhWDMjtOyF_m1kaLa8Cl2A,17723
|
377
380
|
defi_services/services/lending/apeswap_services.py,sha256=UrLhXVzGvim_xfs54hSJ1qeTH6ber4xh01j5PWFl4C8,4737
|
378
381
|
defi_services/services/lending/avalon_services.py,sha256=M1H7JIGCrucr_5KiJUgYC4i6YO4UuvZjArRNPAl6AFU,1118
|
379
382
|
defi_services/services/lending/compound_service.py,sha256=8r7pAs8KaaakDuHg4BUICW4zLD-ihm_DQETYwnAFc98,21917
|
@@ -387,7 +390,7 @@ defi_services/services/lending/iron_bank_service.py,sha256=GuXoXEbR4gkkNYfAyFkDt
|
|
387
390
|
defi_services/services/lending/justlend_service.py,sha256=p1iHiMxZest5YmXwUZ-69g5LW30IG-F9_z1TiPBO2gU,8875
|
388
391
|
defi_services/services/lending/kinza_services.py,sha256=qsoCgvb-tX9Z3XMCfBzx0lnqgWL_nWqKDgNZ8lBApjA,15908
|
389
392
|
defi_services/services/lending/liqee_service.py,sha256=o7g_HX_QDMBP0YVn7wx0Kl_aWtoLI-65w2ttXP6dlz0,17140
|
390
|
-
defi_services/services/lending/moonwell_service.py,sha256=
|
393
|
+
defi_services/services/lending/moonwell_service.py,sha256=bfzi9LzzJn8X3qGFfcVMkNEhbfc3r5lApDNMjWY0xII,5612
|
391
394
|
defi_services/services/lending/morpho_aave_v2_services.py,sha256=C8mfClb_KVbSr08YReVjhPzP4FTurGsitE9a4isEMn8,8471
|
392
395
|
defi_services/services/lending/morpho_aave_v3_services.py,sha256=5p-_1rpFnjaY55gRJWxdQ1qHuKDrQDMY-6PdRDpfJIo,8268
|
393
396
|
defi_services/services/lending/morpho_compound_services.py,sha256=38AXwi-7yxSrRghS3OCRZrOy9cfJnC3k-yNf1Ep27Ds,14912
|
@@ -396,14 +399,15 @@ defi_services/services/lending/radiant_v2_services.py,sha256=OEwocsl3ZCWE9OySXBB
|
|
396
399
|
defi_services/services/lending/seamless_services.py,sha256=hg9kg3609dxXN04ek_ui9uFUe1pOujnQyXWlLL693Eo,15853
|
397
400
|
defi_services/services/lending/silo_services.py,sha256=yLw90u_IXEqE3NbfhVAhG1y8qQqo26xSbYXXlh4lL3g,16726
|
398
401
|
defi_services/services/lending/sonne_service.py,sha256=KQ0CbMVLK-peJZE2_xJtFTK2lBx6Mnijhlwo0BVU4ug,2203
|
399
|
-
defi_services/services/lending/spark_services.py,sha256=
|
402
|
+
defi_services/services/lending/spark_services.py,sha256=8qn46WZ2EoXaReH3f9_3p3BZSWcaJv-n_cBOremYec4,1167
|
400
403
|
defi_services/services/lending/strike_service.py,sha256=ZQ9B6Xngo64njwqABOO3CH-ESFmUmQWbisCgVXYKjak,13797
|
401
404
|
defi_services/services/lending/trava_services.py,sha256=XakGhWzEcrEbKxPsAzZz-X8JVtMBkU2hem-AGWTHCvk,19101
|
402
405
|
defi_services/services/lending/uwu_services.py,sha256=umv1YKsFBrOybPgX69ybzzEVOkAsmIAT8YL3UWlaxEk,13842
|
403
406
|
defi_services/services/lending/valas_services.py,sha256=KlguY7dg58jK2LbJn79c6Tsu_gYmIlSLfC3U81YfI5E,22445
|
404
|
-
defi_services/services/lending/venus_services.py,sha256=
|
407
|
+
defi_services/services/lending/venus_services.py,sha256=1zthddetP_nLA2fnERAH_-bOj1LbGdjJe69-tVg0MiE,17577
|
405
408
|
defi_services/services/lending/wepiggy_services.py,sha256=x10QkYpn47wgNvmDeMGgmzJxv7WPte6hqR3MCBRgMbM,15684
|
406
|
-
defi_services/services/lending/xlend_services.py,sha256=
|
409
|
+
defi_services/services/lending/xlend_services.py,sha256=Jc8ACHvBNC_5brahzasqjvnAsTu_FEFRL6zeif4q27o,16144
|
410
|
+
defi_services/services/lending/yldr_services.py,sha256=sVSwl2DObPq0JNqFKwk6TweEH8P4QHeDOl7vK5hjuEQ,19527
|
407
411
|
defi_services/services/lending/zerolend_services.py,sha256=7ESBKXhUtV-xCnbx_Om8ys3X6ChTICNzbljWnPHBn-k,1334
|
408
412
|
defi_services/services/lending/lending_info/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
409
413
|
defi_services/services/lending/lending_info/arbitrum/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -412,13 +416,13 @@ defi_services/services/lending/lending_info/arbitrum/compound_v3_arbitrum.py,sha
|
|
412
416
|
defi_services/services/lending/lending_info/arbitrum/granary_arbitrum.py,sha256=AxMfKkbOhHGObzaDNNqTDv52WpbGA4MIyzZCItXvicg,3355
|
413
417
|
defi_services/services/lending/lending_info/arbitrum/radiant_arbitrum.py,sha256=-Blgf_D1pMN3TBZBXuqGo3JhOTqyT4mzolT7fLdzn0o,3580
|
414
418
|
defi_services/services/lending/lending_info/arbitrum/silo_arbitrum.py,sha256=XJWbE3xmIiNP44OF_ElXZ8m4FMIoGpesX_HgoG8AKLo,6513
|
415
|
-
defi_services/services/lending/lending_info/arbitrum/venus_arbitrum.py,sha256=
|
419
|
+
defi_services/services/lending/lending_info/arbitrum/venus_arbitrum.py,sha256=pxmgbDCnbvgVX2wIn523ucDCdW5M4BilVbhVOs9dOo0,2170
|
416
420
|
defi_services/services/lending/lending_info/arbitrum/wepiggy_arbitrum.py,sha256=Wysawoam2d9pMhaED8EhPJhwNlWV4_r9j6diikI275k,1523
|
417
|
-
defi_services/services/lending/lending_info/arbitrum/yldr_arbitrum.py,sha256=
|
421
|
+
defi_services/services/lending/lending_info/arbitrum/yldr_arbitrum.py,sha256=jumi3tQf9xAqNb91OZm_eCQuQNa1PSCSKaFJzZTjMvA,2508
|
418
422
|
defi_services/services/lending/lending_info/avalanche/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
419
423
|
defi_services/services/lending/lending_info/avalanche/aave_v2_avalanche.py,sha256=Md3n217lm7ZZadGqXmSooYKesYPXx5mGaW2BEuz1i_Y,2668
|
420
424
|
defi_services/services/lending/lending_info/avalanche/aave_v3_avalanche.py,sha256=WrWBjJ88_5jKm3qmd1F_txnZaPE9uXIXBKG8sHvqcR4,4236
|
421
|
-
defi_services/services/lending/lending_info/avalanche/benqi_avalanche.py,sha256=
|
425
|
+
defi_services/services/lending/lending_info/avalanche/benqi_avalanche.py,sha256=8789BKpIuIiWERELNYhgESo7dR_Z2oi9lWqXJ8aA6Xs,320
|
422
426
|
defi_services/services/lending/lending_info/avalanche/granary_avalanche.py,sha256=rfUF9HaW5yJQP2sRHbVf9nnFWi5YqEHPF905iFdhDbU,2640
|
423
427
|
defi_services/services/lending/lending_info/avalanche/iron_bank_avalanche.py,sha256=r06sFd-UyLXPlzAn3-A4ukJhix0OSkqLy7vsFU3KHvE,2343
|
424
428
|
defi_services/services/lending/lending_info/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -430,6 +434,7 @@ defi_services/services/lending/lending_info/base/moonwell_base.py,sha256=ayUp4NQ
|
|
430
434
|
defi_services/services/lending/lending_info/base/radiant_v2_base.py,sha256=PDj2AWIB_aNav80q_RRxKHSpNi2zzdu3FB2dO2z4FKA,2713
|
431
435
|
defi_services/services/lending/lending_info/base/seamless_base.py,sha256=K0UXs_VEm86ATlaLKjCXu-mWcY4vaRPB0YMK-t8iWXg,6904
|
432
436
|
defi_services/services/lending/lending_info/base/sonne_base.py,sha256=7t2XMWhlTgAdx-v6Z9GSKLwap1ENjcTeHHZkPo0ldvA,2165
|
437
|
+
defi_services/services/lending/lending_info/base/venus_base.py,sha256=i7xN_Mr8WsihVimGwwpJCZjKNjdA_aJCAn7vaLHJQ9U,1590
|
433
438
|
defi_services/services/lending/lending_info/base/xlend_base.py,sha256=_cDptfawzZtULsGqn9Qr5S0TGRkHMdn6GxwTQVZevIY,4275
|
434
439
|
defi_services/services/lending/lending_info/base/zerolend_base.py,sha256=rOaAXq0LYGOKcTI79B77prvID3PLHwF4rXKMOaUCxyk,5198
|
435
440
|
defi_services/services/lending/lending_info/bsc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -445,6 +450,8 @@ defi_services/services/lending/lending_info/bsc/trava_bsc.py,sha256=TKV62KPn8kxZ
|
|
445
450
|
defi_services/services/lending/lending_info/bsc/valas_bsc.py,sha256=Fg6RwssuVflWVUHX_OIf0e2xVDz8zZHnzLA_r-7U4-4,3728
|
446
451
|
defi_services/services/lending/lending_info/bsc/venus_bsc.py,sha256=RZc_W62fq0PtLz7i6APCALFHow-iPHLhqPIkclY9g5k,4832
|
447
452
|
defi_services/services/lending/lending_info/bsc/wepiggy_bsc.py,sha256=dq2bU6zYgNv72mnvqKBBF187_2JJzrf0SqbDHDllInY,3340
|
453
|
+
defi_services/services/lending/lending_info/celo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
454
|
+
defi_services/services/lending/lending_info/celo/aave_v3_celo.py,sha256=x0LHAY-9fXQgDt_m5TkLYbybG6COey7naocm3FtJpEs,2070
|
448
455
|
defi_services/services/lending/lending_info/ethereum/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
449
456
|
defi_services/services/lending/lending_info/ethereum/aave_v2_eth.py,sha256=4Zsn42p7lLaKNJz9eahPky5uCax-pV4qchuzDaf7yww,12032
|
450
457
|
defi_services/services/lending/lending_info/ethereum/aave_v3_eth.py,sha256=FUnN4yom6X6FUmeDjYzn7EABaAjgoo6dF-AvNaRBXtY,10060
|
@@ -463,25 +470,33 @@ defi_services/services/lending/lending_info/ethereum/onyx_eth.py,sha256=3KzLJKNE
|
|
463
470
|
defi_services/services/lending/lending_info/ethereum/radiant_eth.py,sha256=FyxMDbejNkgfsvuZdt4f2ni2xSwqUjw-FupQ0afsWd0,3299
|
464
471
|
defi_services/services/lending/lending_info/ethereum/silo_eth.py,sha256=XQHpo37RS7DJ4Xjc8n0YK6WeGj5xn5ZOPRIlgTiSkH4,16770
|
465
472
|
defi_services/services/lending/lending_info/ethereum/silo_llama_eth.py,sha256=w9iqoaZgMMO7_v6FKYN7vHLGcliBWcQLRKVDA9dYG_g,3696
|
466
|
-
defi_services/services/lending/lending_info/ethereum/spark_eth.py,sha256=
|
473
|
+
defi_services/services/lending/lending_info/ethereum/spark_eth.py,sha256=zQDiIPJvDXXHaOtfvbgqkcvXko6JiLAYT5LClj9HnRo,2949
|
467
474
|
defi_services/services/lending/lending_info/ethereum/strike_eth.py,sha256=tdtisQnjheDC3EO4zHIDOYHHtwABDGGSK-x70gpo2s0,2849
|
468
475
|
defi_services/services/lending/lending_info/ethereum/trava_eth.py,sha256=ycPAsnq6aaeYMZyD3YsQ43N9u14-tbRym1_zmNmMn64,1653
|
469
476
|
defi_services/services/lending/lending_info/ethereum/uwu_eth.py,sha256=l_LMKCUjy3JlSXS7pMr34FNpqedFQheO-QhUWxUA1OE,4837
|
470
|
-
defi_services/services/lending/lending_info/ethereum/venus_eth.py,sha256=
|
477
|
+
defi_services/services/lending/lending_info/ethereum/venus_eth.py,sha256=qm0D6_ZaJHt4ckQPY14kcqS5eOFXTZw77FqNkGIIH9k,5361
|
471
478
|
defi_services/services/lending/lending_info/ethereum/wepiggy_eth.py,sha256=yyi2l5PpxUUSM3irLVDdhocANW7rHqmwSJM_KRTsy_Y,2224
|
472
|
-
defi_services/services/lending/lending_info/ethereum/yldr_ethereum.py,sha256=
|
479
|
+
defi_services/services/lending/lending_info/ethereum/yldr_ethereum.py,sha256=FbEzxV__1hdD_MZBmmn5KIDx6unWYNqOWPpL58yuH9c,1980
|
473
480
|
defi_services/services/lending/lending_info/ethereum/zerolend_eth.py,sha256=Ddyti8DccOVgWka3jpxas7LbsI-RGwv4zHzfjAVIG88,4465
|
474
481
|
defi_services/services/lending/lending_info/fantom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
475
482
|
defi_services/services/lending/lending_info/fantom/aave_v3_ftm.py,sha256=Oukfb-f-p3Y_MLoyVqj-f6yl_1QxAyjHdyz02BkxyEU,3556
|
476
483
|
defi_services/services/lending/lending_info/fantom/geist_ftm.py,sha256=zpwT5Qcw3ha8nlX8T474YTpSdQDdjDgGWO1CXdVycoI,3347
|
477
484
|
defi_services/services/lending/lending_info/fantom/granary_ftm.py,sha256=88fLJi4lsjvzL96DNDX_RgYl9PTbgCbIEm_wGq57CWg,3259
|
478
485
|
defi_services/services/lending/lending_info/fantom/trava_ftm.py,sha256=JjZpJlEFIGg_duBophOPBxJLAA7oJpeCA7OY0VvkltE,1896
|
486
|
+
defi_services/services/lending/lending_info/gnosis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
487
|
+
defi_services/services/lending/lending_info/gnosis/aave_v3_gnoisis.py,sha256=Q8YYrDIKbnZaIV4ybwYiV91n6gqHeerTt9qJco90jow,3088
|
488
|
+
defi_services/services/lending/lending_info/gnosis/spark_gnosis.py,sha256=k8FPr6tXKfjrfDCzVH5q0Pbl38MCCJc2SVZplrfDRJU,3160
|
489
|
+
defi_services/services/lending/lending_info/harmony/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
490
|
+
defi_services/services/lending/lending_info/harmony/aave_v3_harmony.py,sha256=lXs-Yo9S9N8vm4torKlCS7AKg2cuKu3_1WJYjUEfw78,3081
|
491
|
+
defi_services/services/lending/lending_info/opBNB/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
492
|
+
defi_services/services/lending/lending_info/opBNB/venus_opbnb.py,sha256=dvxqv0yc_i-ZMl7-vY1CkeLGEpZBRk_bQzb8VGkQq4Q,1589
|
479
493
|
defi_services/services/lending/lending_info/optimism/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
480
494
|
defi_services/services/lending/lending_info/optimism/aave_v3_optimism.py,sha256=QdzbWsI3Ou9cDwYEPHdjkoHEywQi3DcblzjpRqJ-WhQ,4245
|
481
495
|
defi_services/services/lending/lending_info/optimism/compound_v3_optimism.py,sha256=ayc3pVTnLSddCkO4HusQlf_W58Qmv2bABbQF6UJGEV8,5448
|
482
496
|
defi_services/services/lending/lending_info/optimism/granary_optimism.py,sha256=Dv9gZ9qjclgygrhQp-PDmj_1KSV6uOuN1O0ePk4ibjI,4109
|
483
497
|
defi_services/services/lending/lending_info/optimism/iron_bank_optimism.py,sha256=A1UU86MeNtOzApgzz8bKuqCro17hcbt3Tkyi6hzhAq4,1812
|
484
|
-
defi_services/services/lending/lending_info/optimism/moonwell_optimism.py,sha256=
|
498
|
+
defi_services/services/lending/lending_info/optimism/moonwell_optimism.py,sha256=dHr-xfIHFGgs8KkIS8_F2YLR9Bnr0mjsMdIVixfIjkE,3824
|
499
|
+
defi_services/services/lending/lending_info/optimism/venus_optimism.py,sha256=rzkqtf36l8E5h1sL3vzUTeLyaodMPhGLdL4WKG8AqBY,1594
|
485
500
|
defi_services/services/lending/lending_info/optimism/wepiggy_optimism.py,sha256=zIP-bmSx-CTJVN8Ma4fvpUPrR7sibeobq5Kk8g0eADA,1703
|
486
501
|
defi_services/services/lending/lending_info/optimism/xlend_optimism.py,sha256=shqicmGpZwNECiaJb0Hpn2cMZj2lrLqi_Yz966xZVsk,5330
|
487
502
|
defi_services/services/lending/lending_info/polygon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -489,11 +504,15 @@ defi_services/services/lending/lending_info/polygon/aave_v2_polygon.py,sha256=BI
|
|
489
504
|
defi_services/services/lending/lending_info/polygon/aave_v3_polygon.py,sha256=2qaU-H8o7-tZRDRSVua72GOwJTUBDpYdVW5DekKMIvs,6907
|
490
505
|
defi_services/services/lending/lending_info/polygon/compound_v3_polygon.py,sha256=K3JfTYDNFtMrMenoOxEONKmpxl37Mc14bvfw666w2tw,3265
|
491
506
|
defi_services/services/lending/lending_info/polygon/wepiggy_polygon.py,sha256=2yj2M-VVNbxkGL4zEErIQGUdDIqlnA9gLOqGVX0stWM,2227
|
507
|
+
defi_services/services/lending/lending_info/scroll/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
508
|
+
defi_services/services/lending/lending_info/scroll/aave_v3_scroll.py,sha256=6femOpQcupv3YY5Ie2bDiV9zS9mJW6zxiWnSwCBJ0vk,2075
|
509
|
+
defi_services/services/lending/lending_info/sonic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
510
|
+
defi_services/services/lending/lending_info/sonic/aave_v3_sonic.py,sha256=AhIwmGuCtw8HClEwd4MSvqMJ2Kn6DaTJu5e0XXsHfUQ,1736
|
492
511
|
defi_services/services/lending/lending_info/tron/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
493
512
|
defi_services/services/lending/lending_info/tron/justlend_tron.py,sha256=2F4M8zFEE6-gqDKi82M-Xd6kcb2HP8-qmpNzDYorpXE,3741
|
494
513
|
defi_services/services/lending/lending_info/zksync/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
495
514
|
defi_services/services/lending/lending_info/zksync/aave_v3_zksync.py,sha256=TwKI2lo5nELQRTdOeo4NUJ92HMB7CTqp5P0bJ2-KlZg,2116
|
496
|
-
defi_services/services/lending/lending_info/zksync/venus_zksync.py,sha256=
|
515
|
+
defi_services/services/lending/lending_info/zksync/venus_zksync.py,sha256=9wCLd-4B3oCm6P9hfNvXO_GlVPgzAJS4YmbVoITOVig,2682
|
497
516
|
defi_services/services/lending/lending_info/zksync/zerolend_zksync.py,sha256=avcmFVCMQHHYLZ6EmSdXMkByFa6W8Nt_GRFP0ZvLfYI,6487
|
498
517
|
defi_services/services/multicall/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
499
518
|
defi_services/services/multicall/batch_queries_service.py,sha256=HzgKOdkP6kpjR7gySD78aZfX2Bkln3JM3OQ8ehjGWx0,3457
|
@@ -525,8 +544,8 @@ defi_services/utils/memory_storage.py,sha256=BOT8laB0iVSCGE-oDlpWJQLbSC6X2blKX4z
|
|
525
544
|
defi_services/utils/sqrt_price_math.py,sha256=9lgUeWFT4wjl3Vq3b7-jZ2bGvvZx7dDBSfVnM3lsZ8o,5575
|
526
545
|
defi_services/utils/thread_proxy.py,sha256=5Z8biAyEReUkh3vfJSvEv7GwMe3CsE5M8CbghkQtePw,2951
|
527
546
|
defi_services/utils/ton_decode_address.py,sha256=EWKwmC7KtbXpdKgiNK-5j-5lX7fCr17I4EWYs9b43eU,443
|
528
|
-
defi_state_querier-0.5.
|
529
|
-
defi_state_querier-0.5.
|
530
|
-
defi_state_querier-0.5.
|
531
|
-
defi_state_querier-0.5.
|
532
|
-
defi_state_querier-0.5.
|
547
|
+
defi_state_querier-0.5.34.dist-info/licenses/LICENSE,sha256=6jmfxa8nUIwfKnzZUxAHJSJ_IS7h7mpbJq26cWjoo-o,1063
|
548
|
+
defi_state_querier-0.5.34.dist-info/METADATA,sha256=tWiZOnZablaUA6bpBXjv8YXWDJ6SFHzuzqHd1cbO7iM,4653
|
549
|
+
defi_state_querier-0.5.34.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
|
550
|
+
defi_state_querier-0.5.34.dist-info/top_level.txt,sha256=C-OTxHK6MknKK-nAbEzCPDUl1M6pktRhgJrmsozdf6g,14
|
551
|
+
defi_state_querier-0.5.34.dist-info/RECORD,,
|
{defi_state_querier-0.5.33.dist-info → defi_state_querier-0.5.34.dist-info}/licenses/LICENSE
RENAMED
File without changes
|
File without changes
|