@strkfarm/sdk 1.1.3 → 1.1.5
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.
- package/dist/index.browser.global.js +263 -117
- package/dist/index.browser.mjs +210 -66
- package/dist/index.d.ts +6 -1
- package/dist/index.js +213 -71
- package/dist/index.mjs +213 -71
- package/package.json +1 -1
- package/src/global.ts +24 -1
- package/src/interfaces/common.tsx +1 -0
- package/src/interfaces/risks.ts +175 -0
- package/src/notifs/telegram.ts +3 -3
- package/src/strategies/ekubo-cl-vault.tsx +201 -71
package/dist/index.mjs
CHANGED
|
@@ -176,7 +176,8 @@ var defaultTokens = [{
|
|
|
176
176
|
address: ContractAddr.from("0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d"),
|
|
177
177
|
decimals: 18,
|
|
178
178
|
coingeckId: "starknet",
|
|
179
|
-
displayDecimals: 2
|
|
179
|
+
displayDecimals: 2,
|
|
180
|
+
priceCheckAmount: 1e3
|
|
180
181
|
}, {
|
|
181
182
|
name: "xSTRK",
|
|
182
183
|
symbol: "xSTRK",
|
|
@@ -184,6 +185,7 @@ var defaultTokens = [{
|
|
|
184
185
|
address: ContractAddr.from("0x028d709c875c0ceac3dce7065bec5328186dc89fe254527084d1689910954b0a"),
|
|
185
186
|
decimals: 18,
|
|
186
187
|
coingeckId: void 0,
|
|
188
|
+
priceCheckAmount: 1e3,
|
|
187
189
|
displayDecimals: 2
|
|
188
190
|
}, {
|
|
189
191
|
name: "ETH",
|
|
@@ -192,6 +194,7 @@ var defaultTokens = [{
|
|
|
192
194
|
address: ContractAddr.from("0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7"),
|
|
193
195
|
decimals: 18,
|
|
194
196
|
coingeckId: void 0,
|
|
197
|
+
priceCheckAmount: 0.1,
|
|
195
198
|
displayDecimals: 6
|
|
196
199
|
}, {
|
|
197
200
|
name: "USDC",
|
|
@@ -200,7 +203,8 @@ var defaultTokens = [{
|
|
|
200
203
|
address: ContractAddr.from("0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8"),
|
|
201
204
|
decimals: 6,
|
|
202
205
|
coingeckId: void 0,
|
|
203
|
-
displayDecimals: 2
|
|
206
|
+
displayDecimals: 2,
|
|
207
|
+
priceCheckAmount: 1e3
|
|
204
208
|
}, {
|
|
205
209
|
name: "USDT",
|
|
206
210
|
symbol: "USDT",
|
|
@@ -208,12 +212,13 @@ var defaultTokens = [{
|
|
|
208
212
|
address: ContractAddr.from("0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8"),
|
|
209
213
|
decimals: 6,
|
|
210
214
|
coingeckId: void 0,
|
|
215
|
+
priceCheckAmount: 1e3,
|
|
211
216
|
displayDecimals: 2
|
|
212
217
|
}, {
|
|
213
218
|
name: "WBTC",
|
|
214
219
|
symbol: "WBTC",
|
|
215
220
|
logo: "https://assets.troves.fi/integrations/tokens/wbtc.svg",
|
|
216
|
-
address: ContractAddr.from("
|
|
221
|
+
address: ContractAddr.from("0x03fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac"),
|
|
217
222
|
decimals: 8,
|
|
218
223
|
coingeckId: void 0,
|
|
219
224
|
displayDecimals: 6,
|
|
@@ -229,6 +234,26 @@ var defaultTokens = [{
|
|
|
229
234
|
displayDecimals: 6,
|
|
230
235
|
priceCheckAmount: 1e-4
|
|
231
236
|
// 112000 * 0.0001 = $11.2
|
|
237
|
+
}, {
|
|
238
|
+
name: "solvBTC",
|
|
239
|
+
symbol: "solvBTC",
|
|
240
|
+
logo: "https://assets.strkfarm.com/integrations/tokens/solvbtc.svg",
|
|
241
|
+
address: ContractAddr.from("0x0593e034dda23eea82d2ba9a30960ed42cf4a01502cc2351dc9b9881f9931a68"),
|
|
242
|
+
decimals: 18,
|
|
243
|
+
coingeckId: void 0,
|
|
244
|
+
displayDecimals: 6,
|
|
245
|
+
priceCheckAmount: 1e-4
|
|
246
|
+
// 112000 * 0.0001 = $11.2
|
|
247
|
+
}, {
|
|
248
|
+
name: "LBTC",
|
|
249
|
+
symbol: "LBTC",
|
|
250
|
+
logo: "https://assets.strkfarm.com/integrations/tokens/lbtc.svg",
|
|
251
|
+
address: ContractAddr.from("0x036834a40984312f7f7de8d31e3f6305b325389eaeea5b1c0664b2fb936461a4"),
|
|
252
|
+
decimals: 8,
|
|
253
|
+
coingeckId: void 0,
|
|
254
|
+
displayDecimals: 6,
|
|
255
|
+
priceCheckAmount: 1e-4
|
|
256
|
+
// 112000 * 0.0001 = $11.2
|
|
232
257
|
}];
|
|
233
258
|
var tokens = defaultTokens;
|
|
234
259
|
var _Global = class _Global {
|
|
@@ -16260,14 +16285,31 @@ var _protocol2 = {
|
|
|
16260
16285
|
name: "Ekubo",
|
|
16261
16286
|
logo: "https://app.ekubo.org/favicon.ico"
|
|
16262
16287
|
};
|
|
16263
|
-
var
|
|
16264
|
-
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value:
|
|
16265
|
-
{ type: "Impermanent Loss Risk" /* IMPERMANENT_LOSS */, value:
|
|
16266
|
-
{ type: "Market Risk" /* MARKET_RISK */, value:
|
|
16288
|
+
var _corelatedPoolRiskFactors = [
|
|
16289
|
+
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value: 2 /* WELL_AUDITED */, weight: 34, reason: "Audited smart contracts" },
|
|
16290
|
+
{ type: "Impermanent Loss Risk" /* IMPERMANENT_LOSS */, value: 1 /* HIGHLY_CORRELATED */, weight: 33, reason: "Low risk due to co-related assets" },
|
|
16291
|
+
{ type: "Market Risk" /* MARKET_RISK */, value: 1 /* VERY_LOW_VOLATILITY */, weight: 33, reason: "Low risk due to co-related assets" }
|
|
16292
|
+
];
|
|
16293
|
+
var mediumVolatilityPoolRiskFactors = [
|
|
16294
|
+
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value: 2 /* WELL_AUDITED */, weight: 34, reason: "Audited smart contracts" },
|
|
16295
|
+
{ type: "Impermanent Loss Risk" /* IMPERMANENT_LOSS */, value: 3 /* NON_CORRELATED */, weight: 33, reason: "Low risk due to co-related assets" },
|
|
16296
|
+
{ type: "Market Risk" /* MARKET_RISK */, value: 3 /* MODERATE_VOLATILITY */, weight: 33, reason: "Low risk due to co-related assets" }
|
|
16267
16297
|
];
|
|
16268
|
-
var
|
|
16269
|
-
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value:
|
|
16298
|
+
var highVolatilityPoolRiskFactors = [
|
|
16299
|
+
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value: 2 /* WELL_AUDITED */, weight: 34, reason: "Audited smart contracts" },
|
|
16300
|
+
{ type: "Impermanent Loss Risk" /* IMPERMANENT_LOSS */, value: 3 /* NON_CORRELATED */, weight: 33, reason: "Low risk due to co-related assets" },
|
|
16301
|
+
{ type: "Market Risk" /* MARKET_RISK */, value: 4 /* HIGH_VOLATILITY */, weight: 33, reason: "Low risk due to co-related assets" }
|
|
16270
16302
|
];
|
|
16303
|
+
var mediumRisk = {
|
|
16304
|
+
riskFactor: mediumVolatilityPoolRiskFactors,
|
|
16305
|
+
netRisk: mediumVolatilityPoolRiskFactors.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / mediumVolatilityPoolRiskFactors.reduce((acc, curr) => acc + curr.weight, 0),
|
|
16306
|
+
notARisks: getNoRiskTags(mediumVolatilityPoolRiskFactors)
|
|
16307
|
+
};
|
|
16308
|
+
var highRisk = {
|
|
16309
|
+
riskFactor: highVolatilityPoolRiskFactors,
|
|
16310
|
+
netRisk: highVolatilityPoolRiskFactors.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / highVolatilityPoolRiskFactors.reduce((acc, curr) => acc + curr.weight, 0),
|
|
16311
|
+
notARisks: getNoRiskTags(highVolatilityPoolRiskFactors)
|
|
16312
|
+
};
|
|
16271
16313
|
var AUDIT_URL2 = "https://assets.troves.fi/strkfarm/audit_report_vesu_and_ekubo_strats.pdf";
|
|
16272
16314
|
var faqs2 = [
|
|
16273
16315
|
{
|
|
@@ -16282,6 +16324,10 @@ var faqs2 = [
|
|
|
16282
16324
|
question: "What happens during withdrawal?",
|
|
16283
16325
|
answer: "During withdrawal, you may receive either or both tokens depending on market conditions and prevailing prices."
|
|
16284
16326
|
},
|
|
16327
|
+
{
|
|
16328
|
+
question: "Are there any deposit/withdrawal fees?",
|
|
16329
|
+
answer: "No, there are no deposit/withdrawal fees. However, there is a performance fee varying between 10-20% of the fees and rewards generated. The exact fee is determined by the strategy and the APY shown is net of this fee."
|
|
16330
|
+
},
|
|
16285
16331
|
{
|
|
16286
16332
|
question: "Is the strategy audited?",
|
|
16287
16333
|
answer: /* @__PURE__ */ jsxs2("div", { children: [
|
|
@@ -16316,9 +16362,9 @@ var xSTRKSTRK = {
|
|
|
16316
16362
|
auditUrl: AUDIT_URL2,
|
|
16317
16363
|
maxTVL: Web3Number.fromWei("0", 18),
|
|
16318
16364
|
risk: {
|
|
16319
|
-
riskFactor:
|
|
16320
|
-
netRisk:
|
|
16321
|
-
notARisks: getNoRiskTags(
|
|
16365
|
+
riskFactor: _corelatedPoolRiskFactors,
|
|
16366
|
+
netRisk: _corelatedPoolRiskFactors.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _corelatedPoolRiskFactors.reduce((acc, curr) => acc + curr.weight, 0),
|
|
16367
|
+
notARisks: getNoRiskTags(_corelatedPoolRiskFactors)
|
|
16322
16368
|
},
|
|
16323
16369
|
apyMethodology: "APY based on 7-day historical performance, including fees and rewards.",
|
|
16324
16370
|
additionalInfo: {
|
|
@@ -16334,7 +16380,8 @@ var xSTRKSTRK = {
|
|
|
16334
16380
|
customShouldRebalance: async (currentPrice) => true,
|
|
16335
16381
|
minWaitHours: 24,
|
|
16336
16382
|
direction: "uponly"
|
|
16337
|
-
}
|
|
16383
|
+
},
|
|
16384
|
+
quoteAsset: Global.getDefaultTokens().find((t) => t.symbol === "STRK")
|
|
16338
16385
|
},
|
|
16339
16386
|
faqs: [
|
|
16340
16387
|
...faqs2,
|
|
@@ -16351,68 +16398,165 @@ var xSTRKSTRK = {
|
|
|
16351
16398
|
contractDetails: [],
|
|
16352
16399
|
investmentSteps: []
|
|
16353
16400
|
};
|
|
16354
|
-
var
|
|
16355
|
-
xSTRKSTRK,
|
|
16401
|
+
var ETHUSDCRe7Strategy = {
|
|
16402
|
+
...xSTRKSTRK,
|
|
16403
|
+
name: "Ekubo ETH/USDC",
|
|
16404
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16405
|
+
address: ContractAddr.from(
|
|
16406
|
+
"0x160d8fa4569ef6a12e6bf47cb943d7b5ebba8a41a69a14c1d943050ba5ff947"
|
|
16407
|
+
),
|
|
16408
|
+
launchBlock: 1501761,
|
|
16409
|
+
// must be same order as poolKey token0 and token1
|
|
16410
|
+
depositTokens: [
|
|
16411
|
+
Global.getDefaultTokens().find((t) => t.symbol === "ETH"),
|
|
16412
|
+
Global.getDefaultTokens().find((t) => t.symbol === "USDC")
|
|
16413
|
+
],
|
|
16414
|
+
additionalInfo: {
|
|
16415
|
+
newBounds: "Managed by Re7",
|
|
16416
|
+
truePrice: 1,
|
|
16417
|
+
feeBps: 1e3,
|
|
16418
|
+
rebalanceConditions: {
|
|
16419
|
+
customShouldRebalance: async (currentPrice) => currentPrice > 0.99 && currentPrice < 1.01,
|
|
16420
|
+
minWaitHours: 6,
|
|
16421
|
+
direction: "any"
|
|
16422
|
+
},
|
|
16423
|
+
quoteAsset: Global.getDefaultTokens().find((t) => t.symbol === "USDC")
|
|
16424
|
+
},
|
|
16425
|
+
faqs: [
|
|
16426
|
+
...faqs2,
|
|
16427
|
+
{
|
|
16428
|
+
question: "Who is the curator of this strategy?",
|
|
16429
|
+
answer: /* @__PURE__ */ jsxs2("div", { children: [
|
|
16430
|
+
"Re7 Labs is the curator of this strategy. Re7 Labs is a well-known Web3 asset management firm. This strategy is completely managed by them, including ownership of the vault. Troves is developer of the smart contracts and maintains infrastructure to help users access these strategies. You can find more information about them on their website ",
|
|
16431
|
+
/* @__PURE__ */ jsx3("a", { href: "https://www.re7labs.xyz", style: { textDecoration: "underline", marginLeft: "2px" }, target: "_blank", children: "here" }),
|
|
16432
|
+
"."
|
|
16433
|
+
] })
|
|
16434
|
+
}
|
|
16435
|
+
],
|
|
16436
|
+
risk: highRisk,
|
|
16437
|
+
points: [],
|
|
16438
|
+
curator: { name: "Re7 Labs", logo: "https://www.re7labs.xyz/favicon.ico" }
|
|
16439
|
+
};
|
|
16440
|
+
var RE7Strategies = [
|
|
16441
|
+
ETHUSDCRe7Strategy,
|
|
16356
16442
|
{
|
|
16357
|
-
...
|
|
16443
|
+
...ETHUSDCRe7Strategy,
|
|
16358
16444
|
name: "Ekubo USDC/USDT",
|
|
16359
16445
|
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16360
16446
|
address: ContractAddr.from(
|
|
16361
|
-
"
|
|
16447
|
+
"0x3a4f8debaf12af97bb911099bc011d63d6c208d4c5ba8e15d7f437785b0aaa2"
|
|
16362
16448
|
),
|
|
16363
|
-
launchBlock:
|
|
16449
|
+
launchBlock: 1501761,
|
|
16364
16450
|
// must be same order as poolKey token0 and token1
|
|
16365
16451
|
depositTokens: [
|
|
16366
16452
|
Global.getDefaultTokens().find((t) => t.symbol === "USDC"),
|
|
16367
16453
|
Global.getDefaultTokens().find((t) => t.symbol === "USDT")
|
|
16368
16454
|
],
|
|
16369
|
-
|
|
16370
|
-
newBounds: {
|
|
16371
|
-
lower: -1,
|
|
16372
|
-
upper: 1
|
|
16373
|
-
},
|
|
16374
|
-
truePrice: 1,
|
|
16375
|
-
feeBps: 1e3,
|
|
16376
|
-
rebalanceConditions: {
|
|
16377
|
-
customShouldRebalance: async (currentPrice) => currentPrice > 0.99 && currentPrice < 1.01,
|
|
16378
|
-
minWaitHours: 6,
|
|
16379
|
-
direction: "any"
|
|
16380
|
-
}
|
|
16381
|
-
}
|
|
16455
|
+
risk: xSTRKSTRK.risk
|
|
16382
16456
|
},
|
|
16383
16457
|
{
|
|
16384
|
-
...
|
|
16458
|
+
...ETHUSDCRe7Strategy,
|
|
16385
16459
|
name: "Ekubo STRK/USDC",
|
|
16386
16460
|
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16387
16461
|
address: ContractAddr.from(
|
|
16388
|
-
"
|
|
16462
|
+
"0x351b36d0d9d8b40010658825adeeddb1397436cd41acd0ff6c6e23aaa8b5b30"
|
|
16389
16463
|
),
|
|
16390
|
-
launchBlock:
|
|
16464
|
+
launchBlock: 1501762,
|
|
16391
16465
|
// must be same order as poolKey token0 and token1
|
|
16392
16466
|
depositTokens: [
|
|
16393
16467
|
Global.getDefaultTokens().find((t) => t.symbol === "STRK"),
|
|
16394
16468
|
Global.getDefaultTokens().find((t) => t.symbol === "USDC")
|
|
16395
16469
|
],
|
|
16396
|
-
|
|
16397
|
-
|
|
16398
|
-
|
|
16399
|
-
|
|
16400
|
-
|
|
16401
|
-
|
|
16402
|
-
|
|
16403
|
-
|
|
16404
|
-
|
|
16405
|
-
|
|
16470
|
+
risk: highRisk
|
|
16471
|
+
},
|
|
16472
|
+
{
|
|
16473
|
+
...ETHUSDCRe7Strategy,
|
|
16474
|
+
name: "Ekubo STRK/ETH",
|
|
16475
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16476
|
+
address: ContractAddr.from(
|
|
16477
|
+
"0x4ce3024b0ee879009112d7b0e073f8a87153dd35b029347d4247ffe48d28f51"
|
|
16478
|
+
),
|
|
16479
|
+
launchBlock: 1501763,
|
|
16480
|
+
// must be same order as poolKey token0 and token1
|
|
16481
|
+
depositTokens: [
|
|
16482
|
+
Global.getDefaultTokens().find((t) => t.symbol === "STRK"),
|
|
16483
|
+
Global.getDefaultTokens().find((t) => t.symbol === "ETH")
|
|
16484
|
+
],
|
|
16485
|
+
risk: highRisk
|
|
16486
|
+
},
|
|
16487
|
+
{
|
|
16488
|
+
...ETHUSDCRe7Strategy,
|
|
16489
|
+
name: "Ekubo WBTC/USDC",
|
|
16490
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16491
|
+
address: ContractAddr.from(
|
|
16492
|
+
"0x2bcaef2eb7706875a5fdc6853dd961a0590f850bc3a031c59887189b5e84ba1"
|
|
16493
|
+
),
|
|
16494
|
+
launchBlock: 1501764,
|
|
16495
|
+
// must be same order as poolKey token0 and token1
|
|
16496
|
+
depositTokens: [
|
|
16497
|
+
Global.getDefaultTokens().find((t) => t.symbol === "WBTC"),
|
|
16498
|
+
Global.getDefaultTokens().find((t) => t.symbol === "USDC")
|
|
16499
|
+
],
|
|
16500
|
+
risk: mediumRisk
|
|
16501
|
+
},
|
|
16502
|
+
{
|
|
16503
|
+
...ETHUSDCRe7Strategy,
|
|
16504
|
+
name: "Ekubo tBTC/USDC",
|
|
16505
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16506
|
+
address: ContractAddr.from(
|
|
16507
|
+
"0x4aad891a2d4432fba06b6558631bb13f6bbd7f6f33ab8c3111e344889ea4456"
|
|
16508
|
+
),
|
|
16509
|
+
launchBlock: 1501764,
|
|
16510
|
+
// must be same order as poolKey token0 and token1
|
|
16511
|
+
depositTokens: [
|
|
16512
|
+
Global.getDefaultTokens().find((t) => t.symbol === "tBTC"),
|
|
16513
|
+
Global.getDefaultTokens().find((t) => t.symbol === "USDC")
|
|
16514
|
+
],
|
|
16515
|
+
risk: mediumRisk
|
|
16516
|
+
},
|
|
16517
|
+
{
|
|
16518
|
+
...ETHUSDCRe7Strategy,
|
|
16519
|
+
name: "Ekubo WBTC/ETH",
|
|
16520
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16521
|
+
address: ContractAddr.from(
|
|
16522
|
+
"0x1c9232b8186d9317652f05055615f18a120c2ad9e5ee96c39e031c257fb945b"
|
|
16523
|
+
),
|
|
16524
|
+
launchBlock: 1501765,
|
|
16525
|
+
// must be same order as poolKey token0 and token1
|
|
16526
|
+
depositTokens: [
|
|
16527
|
+
Global.getDefaultTokens().find((t) => t.symbol === "WBTC"),
|
|
16528
|
+
Global.getDefaultTokens().find((t) => t.symbol === "ETH")
|
|
16529
|
+
],
|
|
16530
|
+
risk: mediumRisk
|
|
16531
|
+
},
|
|
16532
|
+
{
|
|
16533
|
+
...ETHUSDCRe7Strategy,
|
|
16534
|
+
name: "Ekubo WBTC/STRK",
|
|
16535
|
+
description: /* @__PURE__ */ jsx3(Fragment2, {}),
|
|
16536
|
+
address: ContractAddr.from(
|
|
16537
|
+
"0x1248e385c23a929a015ec298a26560fa7745bbd6e41a886550e337b02714b1b"
|
|
16538
|
+
),
|
|
16539
|
+
launchBlock: 1501766,
|
|
16540
|
+
// must be same order as poolKey token0 and token1
|
|
16541
|
+
depositTokens: [
|
|
16542
|
+
Global.getDefaultTokens().find((t) => t.symbol === "WBTC"),
|
|
16543
|
+
Global.getDefaultTokens().find((t) => t.symbol === "STRK")
|
|
16544
|
+
],
|
|
16545
|
+
risk: highRisk
|
|
16406
16546
|
}
|
|
16407
16547
|
];
|
|
16548
|
+
var EkuboCLVaultStrategies = [
|
|
16549
|
+
xSTRKSTRK,
|
|
16550
|
+
...RE7Strategies
|
|
16551
|
+
];
|
|
16408
16552
|
EkuboCLVaultStrategies.forEach((s) => {
|
|
16409
16553
|
s.contractDetails = [
|
|
16410
16554
|
{
|
|
16411
16555
|
address: s.address,
|
|
16412
16556
|
name: "Vault",
|
|
16413
16557
|
sourceCodeUrl: "https://github.com/strkfarm/strkfarm-contracts/tree/main/src/strategies/cl_vault"
|
|
16414
|
-
}
|
|
16415
|
-
...COMMON_CONTRACTS
|
|
16558
|
+
}
|
|
16559
|
+
// ...COMMON_CONTRACTS
|
|
16416
16560
|
];
|
|
16417
16561
|
s.docs = "https://docs.troves.fi/p/ekubo-cl-vaults";
|
|
16418
16562
|
s.description = /* @__PURE__ */ jsxs2("div", { children: [
|
|
@@ -18383,7 +18527,7 @@ var endurProtocol = {
|
|
|
18383
18527
|
name: "Endur",
|
|
18384
18528
|
logo: "https://app.endur.fi/logo.png"
|
|
18385
18529
|
};
|
|
18386
|
-
var
|
|
18530
|
+
var _riskFactor2 = [
|
|
18387
18531
|
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value: 0.5, weight: 25, reason: "Audited by CSC" },
|
|
18388
18532
|
{ type: "Depeg Risk" /* DEPEG_RISK */, value: 0.25, weight: 25, reason: "Depending on prevailing market conditions and trading activity, xSTRK may lose its peg to the underlying asset." },
|
|
18389
18533
|
{ type: "Liquidation Risk" /* LIQUIDATION_RISK */, value: 0.1, weight: 10, reason: "Liquidation risk is low due to the nature of the Re7 Pool on Vesu" },
|
|
@@ -18458,9 +18602,9 @@ var SenseiStrategies = [
|
|
|
18458
18602
|
protocols: [endurProtocol, vesuProtocol],
|
|
18459
18603
|
maxTVL: new Web3Number("1500000", 18),
|
|
18460
18604
|
risk: {
|
|
18461
|
-
riskFactor:
|
|
18462
|
-
netRisk:
|
|
18463
|
-
notARisks: getNoRiskTags(
|
|
18605
|
+
riskFactor: _riskFactor2,
|
|
18606
|
+
netRisk: _riskFactor2.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor2.reduce((acc, curr) => acc + curr.weight, 0),
|
|
18607
|
+
notARisks: getNoRiskTags(_riskFactor2)
|
|
18464
18608
|
},
|
|
18465
18609
|
additionalInfo: {
|
|
18466
18610
|
mainToken: Global.getDefaultTokens().find((t) => t.symbol === "STRK"),
|
|
@@ -24074,7 +24218,7 @@ function getLooperSettings(token1Symbol, token2Symbol, vaultSettings, pool1, poo
|
|
|
24074
24218
|
vaultSettings.leafAdapters.push(commonAdapter.getAvnuAdapter(STRKToken.address, USDCToken.address, "avnu_swap_rewards" /* AVNU_SWAP_REWARDS */).bind(commonAdapter));
|
|
24075
24219
|
return vaultSettings;
|
|
24076
24220
|
}
|
|
24077
|
-
var
|
|
24221
|
+
var _riskFactor3 = [
|
|
24078
24222
|
{ type: "Smart Contract Risk" /* SMART_CONTRACT_RISK */, value: 0.5, weight: 25, reason: "Audited by Zellic" },
|
|
24079
24223
|
{ type: "Liquidation Risk" /* LIQUIDATION_RISK */, value: 1.5, weight: 50, reason: "Liquidation risk is mitigated by stable price feed on Starknet" },
|
|
24080
24224
|
{ type: "Technical Risk" /* TECHNICAL_RISK */, value: 1, weight: 50, reason: "Technical failures like risk monitoring failures" }
|
|
@@ -24278,9 +24422,9 @@ var UniversalStrategies = [
|
|
|
24278
24422
|
depositTokens: [Global.getDefaultTokens().find((token) => token.symbol === "USDC")],
|
|
24279
24423
|
additionalInfo: getLooperSettings("USDC", "ETH", usdcVaultSettings, VesuPools.Genesis, VesuPools.Genesis),
|
|
24280
24424
|
risk: {
|
|
24281
|
-
riskFactor:
|
|
24282
|
-
netRisk:
|
|
24283
|
-
notARisks: getNoRiskTags(
|
|
24425
|
+
riskFactor: _riskFactor3,
|
|
24426
|
+
netRisk: _riskFactor3.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor3.reduce((acc, curr) => acc + curr.weight, 0),
|
|
24427
|
+
notARisks: getNoRiskTags(_riskFactor3)
|
|
24284
24428
|
},
|
|
24285
24429
|
protocols: [Protocols.VESU],
|
|
24286
24430
|
maxTVL: Web3Number.fromWei(0, 6),
|
|
@@ -24297,9 +24441,9 @@ var UniversalStrategies = [
|
|
|
24297
24441
|
depositTokens: [Global.getDefaultTokens().find((token) => token.symbol === "WBTC")],
|
|
24298
24442
|
additionalInfo: getLooperSettings("WBTC", "ETH", wbtcVaultSettings, VesuPools.Genesis, VesuPools.Genesis),
|
|
24299
24443
|
risk: {
|
|
24300
|
-
riskFactor:
|
|
24301
|
-
netRisk:
|
|
24302
|
-
notARisks: getNoRiskTags(
|
|
24444
|
+
riskFactor: _riskFactor3,
|
|
24445
|
+
netRisk: _riskFactor3.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor3.reduce((acc, curr) => acc + curr.weight, 0),
|
|
24446
|
+
notARisks: getNoRiskTags(_riskFactor3)
|
|
24303
24447
|
},
|
|
24304
24448
|
protocols: [Protocols.VESU],
|
|
24305
24449
|
maxTVL: Web3Number.fromWei(0, 8),
|
|
@@ -24316,9 +24460,9 @@ var UniversalStrategies = [
|
|
|
24316
24460
|
depositTokens: [Global.getDefaultTokens().find((token) => token.symbol === "ETH")],
|
|
24317
24461
|
additionalInfo: getLooperSettings("ETH", "WBTC", ethVaultSettings, VesuPools.Genesis, VesuPools.Genesis),
|
|
24318
24462
|
risk: {
|
|
24319
|
-
riskFactor:
|
|
24320
|
-
netRisk:
|
|
24321
|
-
notARisks: getNoRiskTags(
|
|
24463
|
+
riskFactor: _riskFactor3,
|
|
24464
|
+
netRisk: _riskFactor3.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor3.reduce((acc, curr) => acc + curr.weight, 0),
|
|
24465
|
+
notARisks: getNoRiskTags(_riskFactor3)
|
|
24322
24466
|
},
|
|
24323
24467
|
protocols: [Protocols.VESU],
|
|
24324
24468
|
maxTVL: Web3Number.fromWei(0, 18),
|
|
@@ -24335,9 +24479,9 @@ var UniversalStrategies = [
|
|
|
24335
24479
|
depositTokens: [Global.getDefaultTokens().find((token) => token.symbol === "STRK")],
|
|
24336
24480
|
additionalInfo: getLooperSettings("STRK", "ETH", strkVaultSettings, VesuPools.Genesis, VesuPools.Genesis),
|
|
24337
24481
|
risk: {
|
|
24338
|
-
riskFactor:
|
|
24339
|
-
netRisk:
|
|
24340
|
-
notARisks: getNoRiskTags(
|
|
24482
|
+
riskFactor: _riskFactor3,
|
|
24483
|
+
netRisk: _riskFactor3.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor3.reduce((acc, curr) => acc + curr.weight, 0),
|
|
24484
|
+
notARisks: getNoRiskTags(_riskFactor3)
|
|
24341
24485
|
},
|
|
24342
24486
|
protocols: [Protocols.VESU],
|
|
24343
24487
|
maxTVL: Web3Number.fromWei(0, 18),
|
|
@@ -24354,9 +24498,9 @@ var UniversalStrategies = [
|
|
|
24354
24498
|
depositTokens: [Global.getDefaultTokens().find((token) => token.symbol === "USDT")],
|
|
24355
24499
|
additionalInfo: getLooperSettings("USDT", "ETH", usdtVaultSettings, VesuPools.Genesis, VesuPools.Genesis),
|
|
24356
24500
|
risk: {
|
|
24357
|
-
riskFactor:
|
|
24358
|
-
netRisk:
|
|
24359
|
-
notARisks: getNoRiskTags(
|
|
24501
|
+
riskFactor: _riskFactor3,
|
|
24502
|
+
netRisk: _riskFactor3.reduce((acc, curr) => acc + curr.value * curr.weight, 0) / _riskFactor3.reduce((acc, curr) => acc + curr.weight, 0),
|
|
24503
|
+
notARisks: getNoRiskTags(_riskFactor3)
|
|
24360
24504
|
},
|
|
24361
24505
|
protocols: [Protocols.VESU],
|
|
24362
24506
|
maxTVL: Web3Number.fromWei(0, 6),
|
|
@@ -24372,11 +24516,9 @@ var TelegramNotif = class {
|
|
|
24372
24516
|
constructor(token, shouldPoll) {
|
|
24373
24517
|
this.subscribers = [
|
|
24374
24518
|
// '6820228303',
|
|
24375
|
-
|
|
24376
|
-
|
|
24377
|
-
//
|
|
24378
|
-
"1388729514",
|
|
24379
|
-
// hwashere
|
|
24519
|
+
// '1505578076',
|
|
24520
|
+
// '1356705582', // langs
|
|
24521
|
+
// '1388729514', // hwashere
|
|
24380
24522
|
"985902592"
|
|
24381
24523
|
];
|
|
24382
24524
|
this.bot = new TelegramBot(token, { polling: shouldPoll });
|
package/package.json
CHANGED
package/src/global.ts
CHANGED
|
@@ -22,6 +22,7 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
22
22
|
decimals: 18,
|
|
23
23
|
coingeckId: 'starknet',
|
|
24
24
|
displayDecimals: 2,
|
|
25
|
+
priceCheckAmount: 1000,
|
|
25
26
|
}, {
|
|
26
27
|
name: 'xSTRK',
|
|
27
28
|
symbol: 'xSTRK',
|
|
@@ -29,6 +30,7 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
29
30
|
address: ContractAddr.from('0x028d709c875c0ceac3dce7065bec5328186dc89fe254527084d1689910954b0a'),
|
|
30
31
|
decimals: 18,
|
|
31
32
|
coingeckId: undefined,
|
|
33
|
+
priceCheckAmount: 1000,
|
|
32
34
|
displayDecimals: 2,
|
|
33
35
|
}, {
|
|
34
36
|
name: 'ETH',
|
|
@@ -37,6 +39,7 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
37
39
|
address: ContractAddr.from('0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7'),
|
|
38
40
|
decimals: 18,
|
|
39
41
|
coingeckId: undefined,
|
|
42
|
+
priceCheckAmount: 0.1,
|
|
40
43
|
displayDecimals: 6,
|
|
41
44
|
}, {
|
|
42
45
|
name: 'USDC',
|
|
@@ -46,6 +49,7 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
46
49
|
decimals: 6,
|
|
47
50
|
coingeckId: undefined,
|
|
48
51
|
displayDecimals: 2,
|
|
52
|
+
priceCheckAmount: 1000,
|
|
49
53
|
}, {
|
|
50
54
|
name: 'USDT',
|
|
51
55
|
symbol: 'USDT',
|
|
@@ -53,12 +57,13 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
53
57
|
address: ContractAddr.from('0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8'),
|
|
54
58
|
decimals: 6,
|
|
55
59
|
coingeckId: undefined,
|
|
60
|
+
priceCheckAmount: 1000,
|
|
56
61
|
displayDecimals: 2,
|
|
57
62
|
}, {
|
|
58
63
|
name: 'WBTC',
|
|
59
64
|
symbol: 'WBTC',
|
|
60
65
|
logo: 'https://assets.troves.fi/integrations/tokens/wbtc.svg',
|
|
61
|
-
address: ContractAddr.from('
|
|
66
|
+
address: ContractAddr.from('0x03fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac'),
|
|
62
67
|
decimals: 8,
|
|
63
68
|
coingeckId: undefined,
|
|
64
69
|
displayDecimals: 6,
|
|
@@ -72,6 +77,24 @@ const defaultTokens: TokenInfo[] = [{
|
|
|
72
77
|
coingeckId: undefined,
|
|
73
78
|
displayDecimals: 6,
|
|
74
79
|
priceCheckAmount: 0.0001, // 112000 * 0.0001 = $11.2
|
|
80
|
+
}, {
|
|
81
|
+
name: 'solvBTC',
|
|
82
|
+
symbol: 'solvBTC',
|
|
83
|
+
logo: 'https://assets.strkfarm.com/integrations/tokens/solvbtc.svg',
|
|
84
|
+
address: ContractAddr.from('0x0593e034dda23eea82d2ba9a30960ed42cf4a01502cc2351dc9b9881f9931a68'),
|
|
85
|
+
decimals: 18,
|
|
86
|
+
coingeckId: undefined,
|
|
87
|
+
displayDecimals: 6,
|
|
88
|
+
priceCheckAmount: 0.0001, // 112000 * 0.0001 = $11.2
|
|
89
|
+
}, {
|
|
90
|
+
name: 'LBTC',
|
|
91
|
+
symbol: 'LBTC',
|
|
92
|
+
logo: 'https://assets.strkfarm.com/integrations/tokens/lbtc.svg',
|
|
93
|
+
address: ContractAddr.from('0x036834a40984312f7f7de8d31e3f6305b325389eaeea5b1c0664b2fb936461a4'),
|
|
94
|
+
decimals: 8,
|
|
95
|
+
coingeckId: undefined,
|
|
96
|
+
displayDecimals: 6,
|
|
97
|
+
priceCheckAmount: 0.0001, // 112000 * 0.0001 = $11.2
|
|
75
98
|
}]
|
|
76
99
|
const tokens: TokenInfo[] = defaultTokens;
|
|
77
100
|
|