@sonarwatch/portfolio-plugins 0.14.115 → 0.14.117

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.
Files changed (25) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/package.json +1 -1
  3. package/src/plugins/drift-market-maker-vault/constants.d.ts +4 -1
  4. package/src/plugins/drift-market-maker-vault/constants.js +8 -2
  5. package/src/plugins/drift-market-maker-vault/constants.js.map +1 -1
  6. package/src/plugins/drift-market-maker-vault/depositsFetcher.js +30 -15
  7. package/src/plugins/drift-market-maker-vault/depositsFetcher.js.map +1 -1
  8. package/src/plugins/drift-market-maker-vault/filters.js +6 -1
  9. package/src/plugins/drift-market-maker-vault/filters.js.map +1 -1
  10. package/src/plugins/drift-market-maker-vault/helpers.d.ts +2 -1
  11. package/src/plugins/drift-market-maker-vault/helpers.js +20 -2
  12. package/src/plugins/drift-market-maker-vault/helpers.js.map +1 -1
  13. package/src/plugins/drift-market-maker-vault/vaultsJob.js +28 -23
  14. package/src/plugins/drift-market-maker-vault/vaultsJob.js.map +1 -1
  15. package/src/plugins/drift-market-maker-vault/vectis_insurance_drift_vaults.d.ts +2910 -0
  16. package/src/plugins/drift-market-maker-vault/vectis_insurance_drift_vaults.js +2913 -0
  17. package/src/plugins/drift-market-maker-vault/vectis_insurance_drift_vaults.js.map +1 -0
  18. package/src/plugins/jupiter/exchange/helpersPerps.d.ts +40 -0
  19. package/src/plugins/jupiter/exchange/helpersPerps.js +156 -0
  20. package/src/plugins/jupiter/exchange/helpersPerps.js.map +1 -0
  21. package/src/plugins/jupiter/exchange/perpetualFetcher.js +10 -5
  22. package/src/plugins/jupiter/exchange/perpetualFetcher.js.map +1 -1
  23. package/src/plugins/jupiter/exchange/helpers.d.ts +0 -2
  24. package/src/plugins/jupiter/exchange/helpers.js +0 -29
  25. package/src/plugins/jupiter/exchange/helpers.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectis_insurance_drift_vaults.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/vectis_insurance_drift_vaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import BN from 'bn.js';
2
+ import { CustodyInfo } from '../types';
3
+ import { Position } from './structs';
4
+ export declare const USD_POWER: BN;
5
+ export type CustodyBn = Omit<CustodyInfo, 'pricing' | 'decreasePositionBps' | 'fundingRateState' | 'jumpRateState' | 'assets'> & {
6
+ decreasePositionBps: BN;
7
+ pricing: {
8
+ tradeImpactFeeScalar: BN;
9
+ maxLeverage: BN;
10
+ };
11
+ fundingRateState: {
12
+ hourlyFundingBps: BN;
13
+ lastUpdate: BN;
14
+ cumulativeInterestRate: BN;
15
+ };
16
+ jumpRateState: {
17
+ minRateBps: BN;
18
+ maxRateBps: BN;
19
+ targetRateBps: BN;
20
+ targetUtilizationRate: BN;
21
+ };
22
+ assets: {
23
+ feesReserves: BN;
24
+ owned: BN;
25
+ locked: BN;
26
+ guaranteedUsd: BN;
27
+ globalShortSizes: BN;
28
+ globalShortAveragePrices: BN;
29
+ };
30
+ };
31
+ export type PositionBn = Omit<Position, 'price' | 'collateralUsd' | 'sizeUsd' | 'cumulativeInterestSnapshot'> & {
32
+ price: BN;
33
+ collateralUsd: BN;
34
+ sizeUsd: BN;
35
+ cumulativeInterestSnapshot: BN;
36
+ };
37
+ export declare function custodyToBN(custody: CustodyInfo): CustodyBn;
38
+ export declare function positionToBn(position: Position): PositionBn;
39
+ export declare const getFeeAmount: (baseFeeBps: BN, amount: BN, tradeImpactFeeScalar: BN) => BN;
40
+ export declare const getLiquidationPrice: (position: PositionBn, custody: CustodyBn, collateralCustody: CustodyBn, curtime: BN) => BN;
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getLiquidationPrice = exports.getFeeAmount = exports.positionToBn = exports.custodyToBN = exports.USD_POWER = void 0;
7
+ const bn_js_1 = __importDefault(require("bn.js"));
8
+ const structs_1 = require("./structs");
9
+ exports.USD_POWER = new bn_js_1.default(1000000);
10
+ const BPS_POWER = new bn_js_1.default(10000);
11
+ const DBPS_POWER = new bn_js_1.default(100000);
12
+ const RATE_POWER = new bn_js_1.default(1000000000);
13
+ const HOURS_IN_A_YEAR = 24 * 365;
14
+ var BorrowRateMechanism;
15
+ (function (BorrowRateMechanism) {
16
+ BorrowRateMechanism[BorrowRateMechanism["Linear"] = 0] = "Linear";
17
+ BorrowRateMechanism[BorrowRateMechanism["Jump"] = 1] = "Jump";
18
+ })(BorrowRateMechanism || (BorrowRateMechanism = {}));
19
+ function custodyToBN(custody) {
20
+ return Object.assign(Object.assign({}, custody), { decreasePositionBps: new bn_js_1.default(custody.decreasePositionBps), pricing: {
21
+ tradeImpactFeeScalar: new bn_js_1.default(custody.pricing.tradeSpreadLong),
22
+ maxLeverage: new bn_js_1.default(custody.pricing.maxLeverage),
23
+ }, fundingRateState: {
24
+ hourlyFundingBps: new bn_js_1.default(custody.fundingRateState.hourlyFundingBps.toString()),
25
+ lastUpdate: new bn_js_1.default(custody.fundingRateState.lastUpdate.toString()),
26
+ cumulativeInterestRate: new bn_js_1.default(custody.fundingRateState.cumulativeInterestRate.toString()),
27
+ }, jumpRateState: {
28
+ maxRateBps: new bn_js_1.default(custody.jumpRateState.maxRateBps.toString()),
29
+ minRateBps: new bn_js_1.default(custody.jumpRateState.minRateBps.toString()),
30
+ targetRateBps: new bn_js_1.default(custody.jumpRateState.targetRateBps.toString()),
31
+ targetUtilizationRate: new bn_js_1.default(custody.jumpRateState.targetUtilizationRate.toString()),
32
+ }, assets: {
33
+ feesReserves: new bn_js_1.default(custody.assets.feesReserves),
34
+ owned: new bn_js_1.default(custody.assets.owned),
35
+ locked: new bn_js_1.default(custody.assets.locked),
36
+ guaranteedUsd: new bn_js_1.default(custody.assets.guaranteedUsd),
37
+ globalShortSizes: new bn_js_1.default(custody.assets.globalShortSizes),
38
+ globalShortAveragePrices: new bn_js_1.default(custody.assets.globalShortAveragePrices),
39
+ } });
40
+ }
41
+ exports.custodyToBN = custodyToBN;
42
+ function positionToBn(position) {
43
+ return Object.assign(Object.assign({}, position), { price: new bn_js_1.default(position.price.toString()), collateralUsd: new bn_js_1.default(position.collateralUsd.toString()), sizeUsd: new bn_js_1.default(position.sizeUsd.toString()), cumulativeInterestSnapshot: new bn_js_1.default(position.cumulativeInterestSnapshot.toString()) });
44
+ }
45
+ exports.positionToBn = positionToBn;
46
+ const divCeil = (a, b) => {
47
+ const dm = a.divmod(b);
48
+ // Fast case - exact division
49
+ if (dm.mod.isZero())
50
+ return dm.div;
51
+ // Round up
52
+ return dm.div.ltn(0) ? dm.div.isubn(1) : dm.div.iaddn(1);
53
+ };
54
+ const getImpactFeeBps = (amount, tradeImpactFeeScalar) => tradeImpactFeeScalar.eqn(0)
55
+ ? new bn_js_1.default(0)
56
+ : divCeil(amount.mul(BPS_POWER), tradeImpactFeeScalar);
57
+ const getFeeAmount = (baseFeeBps, amount, tradeImpactFeeScalar) => {
58
+ if (amount.eqn(0)) {
59
+ return new bn_js_1.default(0);
60
+ }
61
+ const impactFeeCoefficientBps = getImpactFeeBps(amount, tradeImpactFeeScalar);
62
+ const totalFeeBps = impactFeeCoefficientBps.add(baseFeeBps);
63
+ return amount.mul(totalFeeBps).div(BPS_POWER);
64
+ };
65
+ exports.getFeeAmount = getFeeAmount;
66
+ function getBorrowRateMechanism(custody) {
67
+ if (!custody.fundingRateState.hourlyFundingBps.eq(new bn_js_1.default(0))) {
68
+ return BorrowRateMechanism.Linear;
69
+ }
70
+ return BorrowRateMechanism.Jump;
71
+ }
72
+ const getHourlyBorrowRate = (custody) => {
73
+ const borrowRateMechanism = getBorrowRateMechanism(custody);
74
+ if (borrowRateMechanism === BorrowRateMechanism.Linear) {
75
+ const hourlyFundingRate = custody.fundingRateState.hourlyFundingBps
76
+ .mul(RATE_POWER)
77
+ .div(DBPS_POWER);
78
+ return custody.assets.owned.gtn(0) && custody.assets.locked.gtn(0)
79
+ ? custody.assets.locked.mul(hourlyFundingRate).div(custody.assets.owned)
80
+ : new bn_js_1.default(0);
81
+ }
82
+ const { minRateBps, maxRateBps, targetRateBps, targetUtilizationRate } = custody.jumpRateState;
83
+ const utilizationRate = custody.assets.owned.gtn(0) && custody.assets.locked.gtn(0)
84
+ ? custody.assets.locked.mul(RATE_POWER).div(custody.assets.owned)
85
+ : new bn_js_1.default(0);
86
+ let yearlyRate;
87
+ if (utilizationRate.lte(targetUtilizationRate)) {
88
+ yearlyRate = targetRateBps
89
+ .sub(minRateBps)
90
+ .mul(utilizationRate)
91
+ .div(targetUtilizationRate)
92
+ .add(minRateBps)
93
+ .mul(RATE_POWER)
94
+ .div(BPS_POWER);
95
+ }
96
+ else {
97
+ const rateDiff = maxRateBps.sub(targetRateBps);
98
+ const utilDiff = utilizationRate.sub(targetUtilizationRate);
99
+ const denom = RATE_POWER.sub(targetUtilizationRate);
100
+ yearlyRate = rateDiff
101
+ .mul(utilDiff)
102
+ .div(denom)
103
+ .add(targetRateBps)
104
+ .mul(RATE_POWER)
105
+ .div(BPS_POWER);
106
+ }
107
+ return yearlyRate.divn(HOURS_IN_A_YEAR);
108
+ };
109
+ const getCurrentFundingRate = (custody, curtime) => {
110
+ if (custody.assets.owned.eqn(0))
111
+ return new bn_js_1.default(0);
112
+ const interval = curtime.sub(custody.fundingRateState.lastUpdate);
113
+ const currentFundingRate = getHourlyBorrowRate(custody);
114
+ return currentFundingRate.mul(interval).div(new bn_js_1.default(3600));
115
+ };
116
+ const getCumulativeInterest = (custody, curtime) => {
117
+ if (curtime.gt(custody.fundingRateState.lastUpdate)) {
118
+ const fundingRate = getCurrentFundingRate(custody, curtime);
119
+ return custody.fundingRateState.cumulativeInterestRate.add(fundingRate);
120
+ }
121
+ return custody.fundingRateState.cumulativeInterestRate;
122
+ };
123
+ const getFundingFee = (custody, position, curtime) => {
124
+ if (position.sizeUsd.eqn(0))
125
+ return new bn_js_1.default(0);
126
+ const cumulativeInterest = getCumulativeInterest(custody, curtime);
127
+ const positionInterest = cumulativeInterest.sub(position.cumulativeInterestSnapshot);
128
+ return positionInterest.mul(position.sizeUsd).div(RATE_POWER);
129
+ };
130
+ const getLiquidationPrice = (position, custody, collateralCustody, curtime) => {
131
+ const sizeUsd = new bn_js_1.default(position.sizeUsd.toString());
132
+ if (sizeUsd.eqn(0))
133
+ return new bn_js_1.default(0);
134
+ const closePositionFeeUsd = (0, exports.getFeeAmount)(custody.decreasePositionBps, sizeUsd, custody.pricing.tradeImpactFeeScalar);
135
+ const fundingFeeUsd = getFundingFee(collateralCustody, position, curtime);
136
+ const feeUsd = closePositionFeeUsd.add(fundingFeeUsd);
137
+ const maxLossUsd = sizeUsd
138
+ .mul(BPS_POWER)
139
+ .div(custody.pricing.maxLeverage)
140
+ .add(feeUsd);
141
+ const marginUsd = position.collateralUsd;
142
+ let maxPriceDiff = maxLossUsd.sub(marginUsd).abs();
143
+ maxPriceDiff = maxPriceDiff.mul(position.price).div(sizeUsd);
144
+ if (position.side === structs_1.Side.Long) {
145
+ if (maxLossUsd.gt(marginUsd)) {
146
+ return position.price.add(maxPriceDiff);
147
+ }
148
+ return position.price.sub(maxPriceDiff);
149
+ }
150
+ if (maxLossUsd.gt(marginUsd)) {
151
+ return position.price.sub(maxPriceDiff);
152
+ }
153
+ return position.price.add(maxPriceDiff);
154
+ };
155
+ exports.getLiquidationPrice = getLiquidationPrice;
156
+ //# sourceMappingURL=helpersPerps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpersPerps.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/jupiter/exchange/helpersPerps.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ const solana_1 = require("../../../utils/solana");
21
21
  const filters_1 = require("../filters");
22
22
  const constants_1 = require("./constants");
23
23
  const structs_1 = require("./structs");
24
- const helpers_1 = require("./helpers");
24
+ const helpersPerps_1 = require("./helpersPerps");
25
25
  const usdFactor = new bignumber_js_1.default(Math.pow(10, 6));
26
26
  const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
27
27
  const client = (0, clients_1.getClientSolana)();
@@ -80,9 +80,14 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
80
80
  const size = sizeValue.div(entryPrice);
81
81
  const leverage = sizeUsd.dividedBy(collateralUsd);
82
82
  const collateralValue = collateralUsd.dividedBy(usdFactor);
83
- const openFee = (0, helpers_1.getFeeAmount)(new bn_js_1.BN(custody.increasePositionBps), new bn_js_1.BN(sizeUsd.toString()), new bn_js_1.BN(custody.pricing.tradeSpreadLong));
84
- const closeFee = (0, helpers_1.getFeeAmount)(new bn_js_1.BN(custody.increasePositionBps), new bn_js_1.BN(sizeUsd.toString()), new bn_js_1.BN(custody.pricing.tradeSpreadLong));
85
- const openAndCloseFees = openFee.add(closeFee).div(new bn_js_1.BN(1000000));
83
+ const openFee = (0, helpersPerps_1.getFeeAmount)(new bn_js_1.BN(custody.increasePositionBps), new bn_js_1.BN(sizeUsd.toString()), new bn_js_1.BN(custody.pricing.tradeSpreadLong));
84
+ const closeFee = (0, helpersPerps_1.getFeeAmount)(new bn_js_1.BN(custody.increasePositionBps), new bn_js_1.BN(sizeUsd.toString()), new bn_js_1.BN(custody.pricing.tradeSpreadLong));
85
+ const curtime = new bn_js_1.BN(Number(new Date()) / 1000);
86
+ const liquidationPriceBn = (0, helpersPerps_1.getLiquidationPrice)((0, helpersPerps_1.positionToBn)(position), (0, helpersPerps_1.custodyToBN)(custody), (0, helpersPerps_1.custodyToBN)(collateralCustody), curtime);
87
+ const liquidationPrice = new bignumber_js_1.default(liquidationPriceBn.toString())
88
+ .div(usdFactor)
89
+ .toNumber();
90
+ const openAndCloseFees = openFee.add(closeFee).div(helpersPerps_1.USD_POWER);
86
91
  const borrowFee = sizeUsd
87
92
  .times(new bignumber_js_1.default(collateralCustody.fundingRateState.cumulativeInterestRate).minus(cumulativeInterestSnapshot))
88
93
  .dividedBy(Math.pow(10, 15))
@@ -99,7 +104,7 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
99
104
  address: custody.mint,
100
105
  side: isLong ? portfolio_core_1.LeverageSide.long : portfolio_core_1.LeverageSide.short,
101
106
  leverage: leverage.toNumber(),
102
- liquidationPrice: null,
107
+ liquidationPrice,
103
108
  collateralValue: collateralValue.toNumber(),
104
109
  size: size.toNumber(),
105
110
  sizeValue: sizeValue.toNumber(),
@@ -1 +1 @@
1
- {"version":3,"file":"perpetualFetcher.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/jupiter/exchange/perpetualFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perpetualFetcher.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/jupiter/exchange/perpetualFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import BN from 'bn.js';
2
- export declare const getFeeAmount: (baseFeeBps: BN, amount: BN, tradeImpactFeeScalar: BN) => BN;
@@ -1,29 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getFeeAmount = void 0;
7
- const bn_js_1 = __importDefault(require("bn.js"));
8
- const BPS_POWER = new bn_js_1.default(10000);
9
- const divCeil = (a, b) => {
10
- const dm = a.divmod(b);
11
- // Fast case - exact division
12
- if (dm.mod.isZero())
13
- return dm.div;
14
- // Round up
15
- return dm.div.ltn(0) ? dm.div.isubn(1) : dm.div.iaddn(1);
16
- };
17
- const getImpactFeeBps = (amount, tradeImpactFeeScalar) => tradeImpactFeeScalar.eqn(0)
18
- ? new bn_js_1.default(0)
19
- : divCeil(amount.mul(BPS_POWER), tradeImpactFeeScalar);
20
- const getFeeAmount = (baseFeeBps, amount, tradeImpactFeeScalar) => {
21
- if (amount.eqn(0)) {
22
- return new bn_js_1.default(0);
23
- }
24
- const impactFeeCoefficientBps = getImpactFeeBps(amount, tradeImpactFeeScalar);
25
- const totalFeeBps = impactFeeCoefficientBps.add(baseFeeBps);
26
- return amount.mul(totalFeeBps).div(BPS_POWER);
27
- };
28
- exports.getFeeAmount = getFeeAmount;
29
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/jupiter/exchange/helpers.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAuB;AAEvB,MAAM,SAAS,GAAG,IAAI,eAAE,CAAC,KAAM,CAAC,CAAC;AAEjC,MAAM,OAAO,GAAG,CAAC,CAAK,EAAE,CAAK,EAAE,EAAE;IAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvB,6BAA6B;IAC7B,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,CAAC,GAAG,CAAC;IACnC,WAAW;IACX,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAU,EAAE,oBAAwB,EAAE,EAAE,CAC/D,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,IAAI,eAAE,CAAC,CAAC,CAAC;IACX,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC;AAEpD,MAAM,YAAY,GAAG,CAC1B,UAAc,EACd,MAAU,EACV,oBAAwB,EACxB,EAAE;IACF,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,OAAO,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;IACD,MAAM,uBAAuB,GAAG,eAAe,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAE5D,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC,CAAC;AAZW,QAAA,YAAY,gBAYvB"}