@velocity-exchange/sdk 0.2.3 → 0.2.4
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/CHANGELOG.md +6 -0
- package/lib/browser/config.js +1 -1
- package/lib/browser/constants/spotMarkets.js +1 -1
- package/lib/browser/math/liquidation.d.ts +14 -0
- package/lib/browser/math/liquidation.js +14 -0
- package/lib/browser/types.d.ts +75 -9
- package/lib/browser/userMap/userMap.js +5 -1
- package/lib/node/config.js +1 -1
- package/lib/node/constants/spotMarkets.js +1 -1
- package/lib/node/math/liquidation.d.ts +14 -0
- package/lib/node/math/liquidation.d.ts.map +1 -1
- package/lib/node/math/liquidation.js +14 -0
- package/lib/node/types.d.ts +75 -9
- package/lib/node/types.d.ts.map +1 -1
- package/lib/node/userMap/userMap.d.ts.map +1 -1
- package/lib/node/userMap/userMap.js +5 -1
- package/package.json +1 -1
- package/src/config.ts +1 -1
- package/src/constants/spotMarkets.ts +1 -1
- package/src/math/liquidation.ts +14 -0
- package/src/types.ts +82 -9
- package/src/userMap/userMap.ts +5 -1
- package/tests/dlob/helpers.ts +24 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @velocity-exchange/sdk
|
|
2
2
|
|
|
3
|
+
## 0.2.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#127](https://github.com/drift-labs/protocol-v2-shadow/pull/127) [`4f8e7aa`](https://github.com/drift-labs/protocol-v2-shadow/commit/4f8e7aaef0e35b190fc0b91cd29314d902d1ccab) Thanks [@ChesterSim](https://github.com/ChesterSim)! - reflect Typescript types on IDL changes
|
|
8
|
+
|
|
3
9
|
## 0.2.3
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/lib/browser/config.js
CHANGED
|
@@ -22,7 +22,7 @@ exports.configs = {
|
|
|
22
22
|
PYTH_ORACLE_MAPPING_ADDRESS: 'BmA9Z6FjioHJPpjT39QazZyhDRUdZy2ezwx4GiDdE2u2',
|
|
23
23
|
VELOCITY_PROGRAM_ID: exports.VELOCITY_DEVNET_PROGRAM_ID,
|
|
24
24
|
JIT_PROXY_PROGRAM_ID: 'J1TnP8zvVxbtF5KFp5xRmWuvG9McnhzmBd9XGfCyuxFP',
|
|
25
|
-
QUOTE_MINT_ADDRESS: '
|
|
25
|
+
QUOTE_MINT_ADDRESS: 'GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6',
|
|
26
26
|
V2_ALPHA_TICKET_MINT_ADDRESS: 'DeEiGWfCMP9psnLGkxGrBBMEAW5Jv8bBGMN8DCtFRCyB',
|
|
27
27
|
PERP_MARKETS: perpMarkets_1.DevnetPerpMarkets,
|
|
28
28
|
SPOT_MARKETS: spotMarkets_1.DevnetSpotMarkets,
|
|
@@ -15,7 +15,7 @@ exports.DevnetSpotMarkets = [
|
|
|
15
15
|
poolId: 0,
|
|
16
16
|
oracle: new web3_js_1.PublicKey('Dai8hT1YRBBm5rBSJUSKcdR11psM55LVAkshbypfC4k4'),
|
|
17
17
|
oracleSource: types_1.OracleSource.PYTH_LAZER_STABLE_COIN,
|
|
18
|
-
mint: new web3_js_1.PublicKey('
|
|
18
|
+
mint: new web3_js_1.PublicKey('GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6'),
|
|
19
19
|
precision: new anchor_1.BN(10).pow(numericConstants_1.SIX),
|
|
20
20
|
precisionExp: numericConstants_1.SIX,
|
|
21
21
|
pythLazerId: 8,
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { BN } from '../isomorphic/anchor';
|
|
2
|
+
/**
|
|
3
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
4
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
5
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
6
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
7
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
8
|
+
*/
|
|
2
9
|
export declare function calculateBaseAssetAmountToCoverMarginShortage(marginShortage: BN, marginRatio: number, liquidationFee: number, ifLiquidationFee: number, oraclePrice: BN, quoteOraclePrice: BN): BN | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
12
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
13
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
14
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
15
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
16
|
+
*/
|
|
3
17
|
export declare function calculateLiabilityTransferToCoverMarginShortage(marginShortage: BN, assetWeight: number, assetLiquidationMultiplier: number, liabilityWeight: number, liabilityLiquidationMultiplier: number, liabilityDecimals: number, liabilityPrice: BN, ifLiquidationFee: number): BN | undefined;
|
|
4
18
|
export declare function calculateAssetTransferForLiabilityTransfer(assetAmount: BN, assetLiquidationMultiplier: number, assetDecimals: number, assetPrice: BN, liabilityAmount: BN, liabilityLiquidationMultiplier: number, liabilityDecimals: number, liabilityPrice: BN): BN | undefined;
|
|
5
19
|
export declare function calculateMaxPctToLiquidate(userLastActiveSlot: BN, userLiquidationMarginFreed: BN, marginShortage: BN, slot: BN, initialPctToLiquidate: BN, liquidationDuration: BN): BN;
|
|
@@ -3,6 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getMarginShortage = exports.calculateMaxPctToLiquidate = exports.calculateAssetTransferForLiabilityTransfer = exports.calculateLiabilityTransferToCoverMarginShortage = exports.calculateBaseAssetAmountToCoverMarginShortage = void 0;
|
|
4
4
|
const anchor_1 = require("../isomorphic/anchor");
|
|
5
5
|
const numericConstants_1 = require("../constants/numericConstants");
|
|
6
|
+
/**
|
|
7
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
8
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
9
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
10
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
11
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
12
|
+
*/
|
|
6
13
|
function calculateBaseAssetAmountToCoverMarginShortage(marginShortage, marginRatio, liquidationFee, ifLiquidationFee, oraclePrice, quoteOraclePrice) {
|
|
7
14
|
const marginRatioBN = new anchor_1.BN(marginRatio)
|
|
8
15
|
.mul(numericConstants_1.LIQUIDATION_FEE_PRECISION)
|
|
@@ -20,6 +27,13 @@ function calculateBaseAssetAmountToCoverMarginShortage(marginShortage, marginRat
|
|
|
20
27
|
.sub(oraclePrice.mul(new anchor_1.BN(ifLiquidationFee)).div(numericConstants_1.LIQUIDATION_FEE_PRECISION)));
|
|
21
28
|
}
|
|
22
29
|
exports.calculateBaseAssetAmountToCoverMarginShortage = calculateBaseAssetAmountToCoverMarginShortage;
|
|
30
|
+
/**
|
|
31
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
32
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
33
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
34
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
35
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
36
|
+
*/
|
|
23
37
|
function calculateLiabilityTransferToCoverMarginShortage(marginShortage, assetWeight, assetLiquidationMultiplier, liabilityWeight, liabilityLiquidationMultiplier, liabilityDecimals, liabilityPrice, ifLiquidationFee) {
|
|
24
38
|
if (assetWeight >= liabilityWeight) {
|
|
25
39
|
// undefined is max
|
package/lib/browser/types.d.ts
CHANGED
|
@@ -464,6 +464,8 @@ export type DepositRecord = {
|
|
|
464
464
|
depositRecordId: BN;
|
|
465
465
|
explanation: DepositExplanation;
|
|
466
466
|
transferUser?: PublicKey;
|
|
467
|
+
signer?: PublicKey;
|
|
468
|
+
userTokenAmountAfter: BN;
|
|
467
469
|
};
|
|
468
470
|
export type SpotInterestRecord = {
|
|
469
471
|
ts: BN;
|
|
@@ -551,13 +553,14 @@ export type LiquidationRecord = {
|
|
|
551
553
|
marginFreed: BN;
|
|
552
554
|
liquidationId: number;
|
|
553
555
|
bankrupt: boolean;
|
|
554
|
-
canceledOrderIds:
|
|
556
|
+
canceledOrderIds: number[];
|
|
555
557
|
liquidatePerp: LiquidatePerpRecord;
|
|
556
558
|
liquidateSpot: LiquidateSpotRecord;
|
|
557
559
|
liquidateBorrowForPerpPnl: LiquidateBorrowForPerpPnlRecord;
|
|
558
560
|
liquidatePerpPnlForDeposit: LiquidatePerpPnlForDepositRecord;
|
|
559
561
|
perpBankruptcy: PerpBankruptcyRecord;
|
|
560
562
|
spotBankruptcy: SpotBankruptcyRecord;
|
|
563
|
+
bitFlags: number;
|
|
561
564
|
};
|
|
562
565
|
export declare class LiquidationType {
|
|
563
566
|
static readonly LIQUIDATE_PERP: {
|
|
@@ -584,11 +587,12 @@ export type LiquidatePerpRecord = {
|
|
|
584
587
|
oraclePrice: BN;
|
|
585
588
|
baseAssetAmount: BN;
|
|
586
589
|
quoteAssetAmount: BN;
|
|
587
|
-
userOrderId:
|
|
588
|
-
liquidatorOrderId:
|
|
590
|
+
userOrderId: number;
|
|
591
|
+
liquidatorOrderId: number;
|
|
589
592
|
fillRecordId: BN;
|
|
590
593
|
liquidatorFee: BN;
|
|
591
594
|
ifFee: BN;
|
|
595
|
+
protocolFee: BN;
|
|
592
596
|
};
|
|
593
597
|
export type LiquidateSpotRecord = {
|
|
594
598
|
assetMarketIndex: number;
|
|
@@ -598,6 +602,7 @@ export type LiquidateSpotRecord = {
|
|
|
598
602
|
liabilityPrice: BN;
|
|
599
603
|
liabilityTransfer: BN;
|
|
600
604
|
ifFee: BN;
|
|
605
|
+
protocolFee: BN;
|
|
601
606
|
};
|
|
602
607
|
export type LiquidateBorrowForPerpPnlRecord = {
|
|
603
608
|
perpMarketIndex: number;
|
|
@@ -691,6 +696,9 @@ export type OrderActionRecord = {
|
|
|
691
696
|
takerExistingBaseAssetAmount: BN | null;
|
|
692
697
|
makerExistingQuoteEntryAmount: BN | null;
|
|
693
698
|
makerExistingBaseAssetAmount: BN | null;
|
|
699
|
+
triggerPrice: BN | null;
|
|
700
|
+
builderIdx: number | null;
|
|
701
|
+
builderFee: BN | null;
|
|
694
702
|
};
|
|
695
703
|
export type SwapRecord = {
|
|
696
704
|
ts: BN;
|
|
@@ -733,8 +741,6 @@ export type LPSwapRecord = {
|
|
|
733
741
|
inConstituentIndex: number;
|
|
734
742
|
outOraclePrice: BN;
|
|
735
743
|
inOraclePrice: BN;
|
|
736
|
-
outMint: PublicKey;
|
|
737
|
-
inMint: PublicKey;
|
|
738
744
|
lastAum: BN;
|
|
739
745
|
lastAumSlot: BN;
|
|
740
746
|
inMarketCurrentWeight: BN;
|
|
@@ -756,7 +762,6 @@ export type LPMintRedeemRecord = {
|
|
|
756
762
|
constituentIndex: number;
|
|
757
763
|
oraclePrice: BN;
|
|
758
764
|
mint: PublicKey;
|
|
759
|
-
lpMint: PublicKey;
|
|
760
765
|
lpAmount: BN;
|
|
761
766
|
lpFee: BN;
|
|
762
767
|
lpPrice: BN;
|
|
@@ -796,6 +801,7 @@ export type LPBorrowLendDepositRecord = {
|
|
|
796
801
|
export type StateAccount = {
|
|
797
802
|
coldAdmin: PublicKey;
|
|
798
803
|
warmAdmin: PublicKey;
|
|
804
|
+
pauseAdmin: PublicKey;
|
|
799
805
|
hotAmmCrank: PublicKey;
|
|
800
806
|
hotLpCache: PublicKey;
|
|
801
807
|
hotLpSwap: PublicKey;
|
|
@@ -832,6 +838,7 @@ export type StateAccount = {
|
|
|
832
838
|
liquidationDuration: number;
|
|
833
839
|
maxInitializeUserFee: number;
|
|
834
840
|
featureBitFlags: number;
|
|
841
|
+
lpPoolFeatureBitFlags: number;
|
|
835
842
|
};
|
|
836
843
|
export type PerpMarketAccount = {
|
|
837
844
|
status: MarketStatus;
|
|
@@ -873,6 +880,7 @@ export type PerpMarketAccount = {
|
|
|
873
880
|
feeAdjustment: number;
|
|
874
881
|
pausedOperations: number;
|
|
875
882
|
lastFillPrice: BN;
|
|
883
|
+
poolId: number;
|
|
876
884
|
hedgeConfig: {
|
|
877
885
|
poolId: number;
|
|
878
886
|
status: number;
|
|
@@ -961,6 +969,7 @@ export type SpotMarketAccount = {
|
|
|
961
969
|
maxTokenDeposits: BN;
|
|
962
970
|
lastInterestTs: BN;
|
|
963
971
|
lastTwapTs: BN;
|
|
972
|
+
expiryTs: BN;
|
|
964
973
|
initialAssetWeight: number;
|
|
965
974
|
maintenanceAssetWeight: number;
|
|
966
975
|
initialLiabilityWeight: number;
|
|
@@ -1019,12 +1028,21 @@ export type AMM = {
|
|
|
1019
1028
|
totalMmFee: BN;
|
|
1020
1029
|
totalFeeMinusDistributions: BN;
|
|
1021
1030
|
totalFeeWithdrawn: BN;
|
|
1031
|
+
askBaseAssetReserve: BN;
|
|
1032
|
+
askQuoteAssetReserve: BN;
|
|
1033
|
+
bidBaseAssetReserve: BN;
|
|
1034
|
+
bidQuoteAssetReserve: BN;
|
|
1022
1035
|
lastUpdateSlot: BN;
|
|
1023
1036
|
netRevenueSinceLastFunding: BN;
|
|
1024
1037
|
lastCumulativeFundingRateLong: BN;
|
|
1025
1038
|
lastCumulativeFundingRateShort: BN;
|
|
1039
|
+
lastOracleReservePriceSpreadPct: BN;
|
|
1040
|
+
lastSpreadUpdateSlot: BN;
|
|
1026
1041
|
baseSpread: number;
|
|
1027
1042
|
maxSpread: number;
|
|
1043
|
+
longSpread: number;
|
|
1044
|
+
shortSpread: number;
|
|
1045
|
+
referencePriceOffset: number;
|
|
1028
1046
|
maxFillReserveFraction: number;
|
|
1029
1047
|
maxSlippageRatio: number;
|
|
1030
1048
|
curveUpdateIntensity: number;
|
|
@@ -1093,6 +1111,8 @@ export type UserStatsAccount = {
|
|
|
1093
1111
|
};
|
|
1094
1112
|
referrer: PublicKey;
|
|
1095
1113
|
referrerStatus: number;
|
|
1114
|
+
disableUpdatePerpBidAskTwap: number;
|
|
1115
|
+
pausedOperations: number;
|
|
1096
1116
|
authority: PublicKey;
|
|
1097
1117
|
ifStakedQuoteAssetAmount: BN;
|
|
1098
1118
|
delegatePermissions: number;
|
|
@@ -1375,8 +1395,8 @@ export type FeeTier = {
|
|
|
1375
1395
|
refereeFeeDenominator: number;
|
|
1376
1396
|
};
|
|
1377
1397
|
export type OrderFillerRewardStructure = {
|
|
1378
|
-
rewardNumerator:
|
|
1379
|
-
rewardDenominator:
|
|
1398
|
+
rewardNumerator: number;
|
|
1399
|
+
rewardDenominator: number;
|
|
1380
1400
|
timeBasedRewardLowerBound: BN;
|
|
1381
1401
|
};
|
|
1382
1402
|
export type OracleGuardRails = {
|
|
@@ -1409,6 +1429,22 @@ export type PrelaunchOracle = {
|
|
|
1409
1429
|
lastUpdateSlot: BN;
|
|
1410
1430
|
perpMarketIndex: number;
|
|
1411
1431
|
};
|
|
1432
|
+
export type PrelaunchOracleParams = {
|
|
1433
|
+
perpMarketIndex: number;
|
|
1434
|
+
price: BN | null;
|
|
1435
|
+
maxPrice: BN | null;
|
|
1436
|
+
};
|
|
1437
|
+
export type PythLazerOracle = {
|
|
1438
|
+
price: BN;
|
|
1439
|
+
publishTime: BN;
|
|
1440
|
+
postedSlot: BN;
|
|
1441
|
+
exponent: number;
|
|
1442
|
+
conf: BN;
|
|
1443
|
+
};
|
|
1444
|
+
export type UpdatePerpMarketSummaryStatsParams = {
|
|
1445
|
+
netUnsettledFundingPnl: BN | null;
|
|
1446
|
+
updateAmmSummaryStats: boolean | null;
|
|
1447
|
+
};
|
|
1412
1448
|
export type MarginCategory = 'Initial' | 'Maintenance';
|
|
1413
1449
|
export type InsuranceFundStake = {
|
|
1414
1450
|
costBasis: BN;
|
|
@@ -1416,6 +1452,7 @@ export type InsuranceFundStake = {
|
|
|
1416
1452
|
authority: PublicKey;
|
|
1417
1453
|
ifShares: BN;
|
|
1418
1454
|
ifBase: BN;
|
|
1455
|
+
lastValidTs: BN;
|
|
1419
1456
|
lastWithdrawRequestShares: BN;
|
|
1420
1457
|
lastWithdrawRequestValue: BN;
|
|
1421
1458
|
lastWithdrawRequestTs: BN;
|
|
@@ -1489,6 +1526,9 @@ export type SignedMsgUserOrdersAccount = {
|
|
|
1489
1526
|
authorityPubkey: PublicKey;
|
|
1490
1527
|
signedMsgOrderData: SignedMsgOrderId[];
|
|
1491
1528
|
};
|
|
1529
|
+
export type SignedMsgWsDelegatesAccount = {
|
|
1530
|
+
delegates: PublicKey[];
|
|
1531
|
+
};
|
|
1492
1532
|
export type RevenueShareAccount = {
|
|
1493
1533
|
authority: PublicKey;
|
|
1494
1534
|
totalReferrerRewards: BN;
|
|
@@ -1519,8 +1559,23 @@ export type BuilderInfo = {
|
|
|
1519
1559
|
maxFeeTenthBps: number;
|
|
1520
1560
|
padding: number[];
|
|
1521
1561
|
};
|
|
1562
|
+
export type PerpMarketFeeSweepRecord = {
|
|
1563
|
+
ts: BN;
|
|
1564
|
+
marketIndex: number;
|
|
1565
|
+
ifSwept: BN;
|
|
1566
|
+
protocolSwept: BN;
|
|
1567
|
+
ammProvisionTokenized: BN;
|
|
1568
|
+
};
|
|
1569
|
+
export type ProtocolFeeWithdrawRecord = {
|
|
1570
|
+
ts: BN;
|
|
1571
|
+
marketIndex: number;
|
|
1572
|
+
isPerp: boolean;
|
|
1573
|
+
spotMarketIndex: number;
|
|
1574
|
+
amount: BN;
|
|
1575
|
+
recipientTokenAccount: PublicKey;
|
|
1576
|
+
};
|
|
1522
1577
|
export type RevenueShareSettleRecord = {
|
|
1523
|
-
ts:
|
|
1578
|
+
ts: BN;
|
|
1524
1579
|
builder: PublicKey | null;
|
|
1525
1580
|
referrer: PublicKey | null;
|
|
1526
1581
|
feeSettled: BN;
|
|
@@ -1583,6 +1638,8 @@ export type LPPoolAccount = {
|
|
|
1583
1638
|
bump: number;
|
|
1584
1639
|
gammaExecution: number;
|
|
1585
1640
|
xi: number;
|
|
1641
|
+
targetOracleDelayFeeBpsPer10Slots: number;
|
|
1642
|
+
targetPositionDelayFeeBpsPer10Slots: number;
|
|
1586
1643
|
};
|
|
1587
1644
|
export type ConstituentSpotBalance = {
|
|
1588
1645
|
scaledBalance: BN;
|
|
@@ -1675,6 +1732,7 @@ export type CacheInfo = {
|
|
|
1675
1732
|
marketIndex: number;
|
|
1676
1733
|
};
|
|
1677
1734
|
export type AmmCache = {
|
|
1735
|
+
bump: number;
|
|
1678
1736
|
cache: CacheInfo[];
|
|
1679
1737
|
};
|
|
1680
1738
|
export type AccountLiquidatableStatus = {
|
|
@@ -1690,4 +1748,12 @@ export declare class TransferFeeAndPnlPoolDirection {
|
|
|
1690
1748
|
pnlToFeePool: {};
|
|
1691
1749
|
};
|
|
1692
1750
|
}
|
|
1751
|
+
export type TransferFeeAndPnlPoolRecord = {
|
|
1752
|
+
ts: BN;
|
|
1753
|
+
slot: BN;
|
|
1754
|
+
perpMarketIndexWithFeePool: number;
|
|
1755
|
+
perpMarketIndexWithPnlPool: number;
|
|
1756
|
+
direction: TransferFeeAndPnlPoolDirection;
|
|
1757
|
+
amount: BN;
|
|
1758
|
+
};
|
|
1693
1759
|
export {};
|
|
@@ -13,7 +13,11 @@ const PollingSubscription_1 = require("./PollingSubscription");
|
|
|
13
13
|
const user_2 = require("../decode/user");
|
|
14
14
|
const grpcSubscription_1 = require("./grpcSubscription");
|
|
15
15
|
const events_1 = require("events");
|
|
16
|
-
|
|
16
|
+
// Velocity's User account is 4496 bytes (8-byte discriminator + 4488 struct);
|
|
17
|
+
// drift's was 4376. This caps the zstd-decompressed buffer in defaultSync — if it's
|
|
18
|
+
// smaller than the real account, the buffer is truncated and decodeUser reads past
|
|
19
|
+
// the end (RangeError: ERR_BUFFER_OUT_OF_BOUNDS). Must be >= the on-chain User size.
|
|
20
|
+
const MAX_USER_ACCOUNT_SIZE_BYTES = 4496;
|
|
17
21
|
class UserMap {
|
|
18
22
|
/**
|
|
19
23
|
* Constructs a new UserMap instance.
|
package/lib/node/config.js
CHANGED
|
@@ -22,7 +22,7 @@ exports.configs = {
|
|
|
22
22
|
PYTH_ORACLE_MAPPING_ADDRESS: 'BmA9Z6FjioHJPpjT39QazZyhDRUdZy2ezwx4GiDdE2u2',
|
|
23
23
|
VELOCITY_PROGRAM_ID: exports.VELOCITY_DEVNET_PROGRAM_ID,
|
|
24
24
|
JIT_PROXY_PROGRAM_ID: 'J1TnP8zvVxbtF5KFp5xRmWuvG9McnhzmBd9XGfCyuxFP',
|
|
25
|
-
QUOTE_MINT_ADDRESS: '
|
|
25
|
+
QUOTE_MINT_ADDRESS: 'GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6',
|
|
26
26
|
V2_ALPHA_TICKET_MINT_ADDRESS: 'DeEiGWfCMP9psnLGkxGrBBMEAW5Jv8bBGMN8DCtFRCyB',
|
|
27
27
|
PERP_MARKETS: perpMarkets_1.DevnetPerpMarkets,
|
|
28
28
|
SPOT_MARKETS: spotMarkets_1.DevnetSpotMarkets,
|
|
@@ -15,7 +15,7 @@ exports.DevnetSpotMarkets = [
|
|
|
15
15
|
poolId: 0,
|
|
16
16
|
oracle: new web3_js_1.PublicKey('Dai8hT1YRBBm5rBSJUSKcdR11psM55LVAkshbypfC4k4'),
|
|
17
17
|
oracleSource: types_1.OracleSource.PYTH_LAZER_STABLE_COIN,
|
|
18
|
-
mint: new web3_js_1.PublicKey('
|
|
18
|
+
mint: new web3_js_1.PublicKey('GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6'),
|
|
19
19
|
precision: new anchor_1.BN(10).pow(numericConstants_1.SIX),
|
|
20
20
|
precisionExp: numericConstants_1.SIX,
|
|
21
21
|
pythLazerId: 8,
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { BN } from '../isomorphic/anchor';
|
|
2
|
+
/**
|
|
3
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
4
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
5
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
6
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
7
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
8
|
+
*/
|
|
2
9
|
export declare function calculateBaseAssetAmountToCoverMarginShortage(marginShortage: BN, marginRatio: number, liquidationFee: number, ifLiquidationFee: number, oraclePrice: BN, quoteOraclePrice: BN): BN | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
12
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
13
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
14
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
15
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
16
|
+
*/
|
|
3
17
|
export declare function calculateLiabilityTransferToCoverMarginShortage(marginShortage: BN, assetWeight: number, assetLiquidationMultiplier: number, liabilityWeight: number, liabilityLiquidationMultiplier: number, liabilityDecimals: number, liabilityPrice: BN, ifLiquidationFee: number): BN | undefined;
|
|
4
18
|
export declare function calculateAssetTransferForLiabilityTransfer(assetAmount: BN, assetLiquidationMultiplier: number, assetDecimals: number, assetPrice: BN, liabilityAmount: BN, liabilityLiquidationMultiplier: number, liabilityDecimals: number, liabilityPrice: BN): BN | undefined;
|
|
5
19
|
export declare function calculateMaxPctToLiquidate(userLastActiveSlot: BN, userLiquidationMarginFreed: BN, marginShortage: BN, slot: BN, initialPctToLiquidate: BN, liquidationDuration: BN): BN;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"liquidation.d.ts","sourceRoot":"","sources":["../../../src/math/liquidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAa1C,wBAAgB,6CAA6C,CAC5D,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,EAAE,EACf,gBAAgB,EAAE,EAAE,GAClB,EAAE,GAAG,SAAS,CAqBhB;AAED,wBAAgB,+CAA+C,CAC9D,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,MAAM,EACnB,0BAA0B,EAAE,MAAM,EAClC,eAAe,EAAE,MAAM,EACvB,8BAA8B,EAAE,MAAM,EACtC,iBAAiB,EAAE,MAAM,EACzB,cAAc,EAAE,EAAE,EAClB,gBAAgB,EAAE,MAAM,GACtB,EAAE,GAAG,SAAS,CA8ChB;AAED,wBAAgB,0CAA0C,CACzD,WAAW,EAAE,EAAE,EACf,0BAA0B,EAAE,MAAM,EAClC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,EAAE,EACd,eAAe,EAAE,EAAE,EACnB,8BAA8B,EAAE,MAAM,EACtC,iBAAiB,EAAE,MAAM,EACzB,cAAc,EAAE,EAAE,GAChB,EAAE,GAAG,SAAS,CAkDhB;AAED,wBAAgB,0BAA0B,CACzC,kBAAkB,EAAE,EAAE,EACtB,0BAA0B,EAAE,EAAE,EAC9B,cAAc,EAAE,EAAE,EAClB,IAAI,EAAE,EAAE,EACR,qBAAqB,EAAE,EAAE,EACzB,mBAAmB,EAAE,EAAE,GACrB,EAAE,CA+BJ;AAED,wBAAgB,iBAAiB,CAChC,sCAAsC,EAAE,EAAE,EAC1C,0BAA0B,EAAE,EAAE,GAC5B,EAAE,CAIJ"}
|
|
1
|
+
{"version":3,"file":"liquidation.d.ts","sourceRoot":"","sources":["../../../src/math/liquidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAa1C;;;;;;GAMG;AACH,wBAAgB,6CAA6C,CAC5D,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,EAAE,EACf,gBAAgB,EAAE,EAAE,GAClB,EAAE,GAAG,SAAS,CAqBhB;AAED;;;;;;GAMG;AACH,wBAAgB,+CAA+C,CAC9D,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,MAAM,EACnB,0BAA0B,EAAE,MAAM,EAClC,eAAe,EAAE,MAAM,EACvB,8BAA8B,EAAE,MAAM,EACtC,iBAAiB,EAAE,MAAM,EACzB,cAAc,EAAE,EAAE,EAClB,gBAAgB,EAAE,MAAM,GACtB,EAAE,GAAG,SAAS,CA8ChB;AAED,wBAAgB,0CAA0C,CACzD,WAAW,EAAE,EAAE,EACf,0BAA0B,EAAE,MAAM,EAClC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,EAAE,EACd,eAAe,EAAE,EAAE,EACnB,8BAA8B,EAAE,MAAM,EACtC,iBAAiB,EAAE,MAAM,EACzB,cAAc,EAAE,EAAE,GAChB,EAAE,GAAG,SAAS,CAkDhB;AAED,wBAAgB,0BAA0B,CACzC,kBAAkB,EAAE,EAAE,EACtB,0BAA0B,EAAE,EAAE,EAC9B,cAAc,EAAE,EAAE,EAClB,IAAI,EAAE,EAAE,EACR,qBAAqB,EAAE,EAAE,EACzB,mBAAmB,EAAE,EAAE,GACrB,EAAE,CA+BJ;AAED,wBAAgB,iBAAiB,CAChC,sCAAsC,EAAE,EAAE,EAC1C,0BAA0B,EAAE,EAAE,GAC5B,EAAE,CAIJ"}
|
|
@@ -3,6 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getMarginShortage = exports.calculateMaxPctToLiquidate = exports.calculateAssetTransferForLiabilityTransfer = exports.calculateLiabilityTransferToCoverMarginShortage = exports.calculateBaseAssetAmountToCoverMarginShortage = void 0;
|
|
4
4
|
const anchor_1 = require("../isomorphic/anchor");
|
|
5
5
|
const numericConstants_1 = require("../constants/numericConstants");
|
|
6
|
+
/**
|
|
7
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
8
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
9
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
10
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
11
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
12
|
+
*/
|
|
6
13
|
function calculateBaseAssetAmountToCoverMarginShortage(marginShortage, marginRatio, liquidationFee, ifLiquidationFee, oraclePrice, quoteOraclePrice) {
|
|
7
14
|
const marginRatioBN = new anchor_1.BN(marginRatio)
|
|
8
15
|
.mul(numericConstants_1.LIQUIDATION_FEE_PRECISION)
|
|
@@ -20,6 +27,13 @@ function calculateBaseAssetAmountToCoverMarginShortage(marginShortage, marginRat
|
|
|
20
27
|
.sub(oraclePrice.mul(new anchor_1.BN(ifLiquidationFee)).div(numericConstants_1.LIQUIDATION_FEE_PRECISION)));
|
|
21
28
|
}
|
|
22
29
|
exports.calculateBaseAssetAmountToCoverMarginShortage = calculateBaseAssetAmountToCoverMarginShortage;
|
|
30
|
+
/**
|
|
31
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
32
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
33
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
34
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
35
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
36
|
+
*/
|
|
23
37
|
function calculateLiabilityTransferToCoverMarginShortage(marginShortage, assetWeight, assetLiquidationMultiplier, liabilityWeight, liabilityLiquidationMultiplier, liabilityDecimals, liabilityPrice, ifLiquidationFee) {
|
|
24
38
|
if (assetWeight >= liabilityWeight) {
|
|
25
39
|
// undefined is max
|
package/lib/node/types.d.ts
CHANGED
|
@@ -464,6 +464,8 @@ export type DepositRecord = {
|
|
|
464
464
|
depositRecordId: BN;
|
|
465
465
|
explanation: DepositExplanation;
|
|
466
466
|
transferUser?: PublicKey;
|
|
467
|
+
signer?: PublicKey;
|
|
468
|
+
userTokenAmountAfter: BN;
|
|
467
469
|
};
|
|
468
470
|
export type SpotInterestRecord = {
|
|
469
471
|
ts: BN;
|
|
@@ -551,13 +553,14 @@ export type LiquidationRecord = {
|
|
|
551
553
|
marginFreed: BN;
|
|
552
554
|
liquidationId: number;
|
|
553
555
|
bankrupt: boolean;
|
|
554
|
-
canceledOrderIds:
|
|
556
|
+
canceledOrderIds: number[];
|
|
555
557
|
liquidatePerp: LiquidatePerpRecord;
|
|
556
558
|
liquidateSpot: LiquidateSpotRecord;
|
|
557
559
|
liquidateBorrowForPerpPnl: LiquidateBorrowForPerpPnlRecord;
|
|
558
560
|
liquidatePerpPnlForDeposit: LiquidatePerpPnlForDepositRecord;
|
|
559
561
|
perpBankruptcy: PerpBankruptcyRecord;
|
|
560
562
|
spotBankruptcy: SpotBankruptcyRecord;
|
|
563
|
+
bitFlags: number;
|
|
561
564
|
};
|
|
562
565
|
export declare class LiquidationType {
|
|
563
566
|
static readonly LIQUIDATE_PERP: {
|
|
@@ -584,11 +587,12 @@ export type LiquidatePerpRecord = {
|
|
|
584
587
|
oraclePrice: BN;
|
|
585
588
|
baseAssetAmount: BN;
|
|
586
589
|
quoteAssetAmount: BN;
|
|
587
|
-
userOrderId:
|
|
588
|
-
liquidatorOrderId:
|
|
590
|
+
userOrderId: number;
|
|
591
|
+
liquidatorOrderId: number;
|
|
589
592
|
fillRecordId: BN;
|
|
590
593
|
liquidatorFee: BN;
|
|
591
594
|
ifFee: BN;
|
|
595
|
+
protocolFee: BN;
|
|
592
596
|
};
|
|
593
597
|
export type LiquidateSpotRecord = {
|
|
594
598
|
assetMarketIndex: number;
|
|
@@ -598,6 +602,7 @@ export type LiquidateSpotRecord = {
|
|
|
598
602
|
liabilityPrice: BN;
|
|
599
603
|
liabilityTransfer: BN;
|
|
600
604
|
ifFee: BN;
|
|
605
|
+
protocolFee: BN;
|
|
601
606
|
};
|
|
602
607
|
export type LiquidateBorrowForPerpPnlRecord = {
|
|
603
608
|
perpMarketIndex: number;
|
|
@@ -691,6 +696,9 @@ export type OrderActionRecord = {
|
|
|
691
696
|
takerExistingBaseAssetAmount: BN | null;
|
|
692
697
|
makerExistingQuoteEntryAmount: BN | null;
|
|
693
698
|
makerExistingBaseAssetAmount: BN | null;
|
|
699
|
+
triggerPrice: BN | null;
|
|
700
|
+
builderIdx: number | null;
|
|
701
|
+
builderFee: BN | null;
|
|
694
702
|
};
|
|
695
703
|
export type SwapRecord = {
|
|
696
704
|
ts: BN;
|
|
@@ -733,8 +741,6 @@ export type LPSwapRecord = {
|
|
|
733
741
|
inConstituentIndex: number;
|
|
734
742
|
outOraclePrice: BN;
|
|
735
743
|
inOraclePrice: BN;
|
|
736
|
-
outMint: PublicKey;
|
|
737
|
-
inMint: PublicKey;
|
|
738
744
|
lastAum: BN;
|
|
739
745
|
lastAumSlot: BN;
|
|
740
746
|
inMarketCurrentWeight: BN;
|
|
@@ -756,7 +762,6 @@ export type LPMintRedeemRecord = {
|
|
|
756
762
|
constituentIndex: number;
|
|
757
763
|
oraclePrice: BN;
|
|
758
764
|
mint: PublicKey;
|
|
759
|
-
lpMint: PublicKey;
|
|
760
765
|
lpAmount: BN;
|
|
761
766
|
lpFee: BN;
|
|
762
767
|
lpPrice: BN;
|
|
@@ -796,6 +801,7 @@ export type LPBorrowLendDepositRecord = {
|
|
|
796
801
|
export type StateAccount = {
|
|
797
802
|
coldAdmin: PublicKey;
|
|
798
803
|
warmAdmin: PublicKey;
|
|
804
|
+
pauseAdmin: PublicKey;
|
|
799
805
|
hotAmmCrank: PublicKey;
|
|
800
806
|
hotLpCache: PublicKey;
|
|
801
807
|
hotLpSwap: PublicKey;
|
|
@@ -832,6 +838,7 @@ export type StateAccount = {
|
|
|
832
838
|
liquidationDuration: number;
|
|
833
839
|
maxInitializeUserFee: number;
|
|
834
840
|
featureBitFlags: number;
|
|
841
|
+
lpPoolFeatureBitFlags: number;
|
|
835
842
|
};
|
|
836
843
|
export type PerpMarketAccount = {
|
|
837
844
|
status: MarketStatus;
|
|
@@ -873,6 +880,7 @@ export type PerpMarketAccount = {
|
|
|
873
880
|
feeAdjustment: number;
|
|
874
881
|
pausedOperations: number;
|
|
875
882
|
lastFillPrice: BN;
|
|
883
|
+
poolId: number;
|
|
876
884
|
hedgeConfig: {
|
|
877
885
|
poolId: number;
|
|
878
886
|
status: number;
|
|
@@ -961,6 +969,7 @@ export type SpotMarketAccount = {
|
|
|
961
969
|
maxTokenDeposits: BN;
|
|
962
970
|
lastInterestTs: BN;
|
|
963
971
|
lastTwapTs: BN;
|
|
972
|
+
expiryTs: BN;
|
|
964
973
|
initialAssetWeight: number;
|
|
965
974
|
maintenanceAssetWeight: number;
|
|
966
975
|
initialLiabilityWeight: number;
|
|
@@ -1019,12 +1028,21 @@ export type AMM = {
|
|
|
1019
1028
|
totalMmFee: BN;
|
|
1020
1029
|
totalFeeMinusDistributions: BN;
|
|
1021
1030
|
totalFeeWithdrawn: BN;
|
|
1031
|
+
askBaseAssetReserve: BN;
|
|
1032
|
+
askQuoteAssetReserve: BN;
|
|
1033
|
+
bidBaseAssetReserve: BN;
|
|
1034
|
+
bidQuoteAssetReserve: BN;
|
|
1022
1035
|
lastUpdateSlot: BN;
|
|
1023
1036
|
netRevenueSinceLastFunding: BN;
|
|
1024
1037
|
lastCumulativeFundingRateLong: BN;
|
|
1025
1038
|
lastCumulativeFundingRateShort: BN;
|
|
1039
|
+
lastOracleReservePriceSpreadPct: BN;
|
|
1040
|
+
lastSpreadUpdateSlot: BN;
|
|
1026
1041
|
baseSpread: number;
|
|
1027
1042
|
maxSpread: number;
|
|
1043
|
+
longSpread: number;
|
|
1044
|
+
shortSpread: number;
|
|
1045
|
+
referencePriceOffset: number;
|
|
1028
1046
|
maxFillReserveFraction: number;
|
|
1029
1047
|
maxSlippageRatio: number;
|
|
1030
1048
|
curveUpdateIntensity: number;
|
|
@@ -1093,6 +1111,8 @@ export type UserStatsAccount = {
|
|
|
1093
1111
|
};
|
|
1094
1112
|
referrer: PublicKey;
|
|
1095
1113
|
referrerStatus: number;
|
|
1114
|
+
disableUpdatePerpBidAskTwap: number;
|
|
1115
|
+
pausedOperations: number;
|
|
1096
1116
|
authority: PublicKey;
|
|
1097
1117
|
ifStakedQuoteAssetAmount: BN;
|
|
1098
1118
|
delegatePermissions: number;
|
|
@@ -1375,8 +1395,8 @@ export type FeeTier = {
|
|
|
1375
1395
|
refereeFeeDenominator: number;
|
|
1376
1396
|
};
|
|
1377
1397
|
export type OrderFillerRewardStructure = {
|
|
1378
|
-
rewardNumerator:
|
|
1379
|
-
rewardDenominator:
|
|
1398
|
+
rewardNumerator: number;
|
|
1399
|
+
rewardDenominator: number;
|
|
1380
1400
|
timeBasedRewardLowerBound: BN;
|
|
1381
1401
|
};
|
|
1382
1402
|
export type OracleGuardRails = {
|
|
@@ -1409,6 +1429,22 @@ export type PrelaunchOracle = {
|
|
|
1409
1429
|
lastUpdateSlot: BN;
|
|
1410
1430
|
perpMarketIndex: number;
|
|
1411
1431
|
};
|
|
1432
|
+
export type PrelaunchOracleParams = {
|
|
1433
|
+
perpMarketIndex: number;
|
|
1434
|
+
price: BN | null;
|
|
1435
|
+
maxPrice: BN | null;
|
|
1436
|
+
};
|
|
1437
|
+
export type PythLazerOracle = {
|
|
1438
|
+
price: BN;
|
|
1439
|
+
publishTime: BN;
|
|
1440
|
+
postedSlot: BN;
|
|
1441
|
+
exponent: number;
|
|
1442
|
+
conf: BN;
|
|
1443
|
+
};
|
|
1444
|
+
export type UpdatePerpMarketSummaryStatsParams = {
|
|
1445
|
+
netUnsettledFundingPnl: BN | null;
|
|
1446
|
+
updateAmmSummaryStats: boolean | null;
|
|
1447
|
+
};
|
|
1412
1448
|
export type MarginCategory = 'Initial' | 'Maintenance';
|
|
1413
1449
|
export type InsuranceFundStake = {
|
|
1414
1450
|
costBasis: BN;
|
|
@@ -1416,6 +1452,7 @@ export type InsuranceFundStake = {
|
|
|
1416
1452
|
authority: PublicKey;
|
|
1417
1453
|
ifShares: BN;
|
|
1418
1454
|
ifBase: BN;
|
|
1455
|
+
lastValidTs: BN;
|
|
1419
1456
|
lastWithdrawRequestShares: BN;
|
|
1420
1457
|
lastWithdrawRequestValue: BN;
|
|
1421
1458
|
lastWithdrawRequestTs: BN;
|
|
@@ -1489,6 +1526,9 @@ export type SignedMsgUserOrdersAccount = {
|
|
|
1489
1526
|
authorityPubkey: PublicKey;
|
|
1490
1527
|
signedMsgOrderData: SignedMsgOrderId[];
|
|
1491
1528
|
};
|
|
1529
|
+
export type SignedMsgWsDelegatesAccount = {
|
|
1530
|
+
delegates: PublicKey[];
|
|
1531
|
+
};
|
|
1492
1532
|
export type RevenueShareAccount = {
|
|
1493
1533
|
authority: PublicKey;
|
|
1494
1534
|
totalReferrerRewards: BN;
|
|
@@ -1519,8 +1559,23 @@ export type BuilderInfo = {
|
|
|
1519
1559
|
maxFeeTenthBps: number;
|
|
1520
1560
|
padding: number[];
|
|
1521
1561
|
};
|
|
1562
|
+
export type PerpMarketFeeSweepRecord = {
|
|
1563
|
+
ts: BN;
|
|
1564
|
+
marketIndex: number;
|
|
1565
|
+
ifSwept: BN;
|
|
1566
|
+
protocolSwept: BN;
|
|
1567
|
+
ammProvisionTokenized: BN;
|
|
1568
|
+
};
|
|
1569
|
+
export type ProtocolFeeWithdrawRecord = {
|
|
1570
|
+
ts: BN;
|
|
1571
|
+
marketIndex: number;
|
|
1572
|
+
isPerp: boolean;
|
|
1573
|
+
spotMarketIndex: number;
|
|
1574
|
+
amount: BN;
|
|
1575
|
+
recipientTokenAccount: PublicKey;
|
|
1576
|
+
};
|
|
1522
1577
|
export type RevenueShareSettleRecord = {
|
|
1523
|
-
ts:
|
|
1578
|
+
ts: BN;
|
|
1524
1579
|
builder: PublicKey | null;
|
|
1525
1580
|
referrer: PublicKey | null;
|
|
1526
1581
|
feeSettled: BN;
|
|
@@ -1583,6 +1638,8 @@ export type LPPoolAccount = {
|
|
|
1583
1638
|
bump: number;
|
|
1584
1639
|
gammaExecution: number;
|
|
1585
1640
|
xi: number;
|
|
1641
|
+
targetOracleDelayFeeBpsPer10Slots: number;
|
|
1642
|
+
targetPositionDelayFeeBpsPer10Slots: number;
|
|
1586
1643
|
};
|
|
1587
1644
|
export type ConstituentSpotBalance = {
|
|
1588
1645
|
scaledBalance: BN;
|
|
@@ -1675,6 +1732,7 @@ export type CacheInfo = {
|
|
|
1675
1732
|
marketIndex: number;
|
|
1676
1733
|
};
|
|
1677
1734
|
export type AmmCache = {
|
|
1735
|
+
bump: number;
|
|
1678
1736
|
cache: CacheInfo[];
|
|
1679
1737
|
};
|
|
1680
1738
|
export type AccountLiquidatableStatus = {
|
|
@@ -1690,5 +1748,13 @@ export declare class TransferFeeAndPnlPoolDirection {
|
|
|
1690
1748
|
pnlToFeePool: {};
|
|
1691
1749
|
};
|
|
1692
1750
|
}
|
|
1751
|
+
export type TransferFeeAndPnlPoolRecord = {
|
|
1752
|
+
ts: BN;
|
|
1753
|
+
slot: BN;
|
|
1754
|
+
perpMarketIndexWithFeePool: number;
|
|
1755
|
+
perpMarketIndexWithPnlPool: number;
|
|
1756
|
+
direction: TransferFeeAndPnlPoolDirection;
|
|
1757
|
+
amount: BN;
|
|
1758
|
+
};
|
|
1693
1759
|
export {};
|
|
1694
1760
|
//# sourceMappingURL=types.d.ts.map
|
package/lib/node/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/userMap.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACN,WAAW,EACX,WAAW,EAQX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAIN,SAAS,EAET,MAAM,iBAAiB,CAAC;AAQzB,OAAO,EAEN,yBAAyB,IAAI,kBAAkB,EAC/C,aAAa,EACb,MAAM,iBAAiB,CAAC;AAKzB,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"userMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/userMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,11 @@ const PollingSubscription_1 = require("./PollingSubscription");
|
|
|
13
13
|
const user_2 = require("../decode/user");
|
|
14
14
|
const grpcSubscription_1 = require("./grpcSubscription");
|
|
15
15
|
const events_1 = require("events");
|
|
16
|
-
|
|
16
|
+
// Velocity's User account is 4496 bytes (8-byte discriminator + 4488 struct);
|
|
17
|
+
// drift's was 4376. This caps the zstd-decompressed buffer in defaultSync — if it's
|
|
18
|
+
// smaller than the real account, the buffer is truncated and decodeUser reads past
|
|
19
|
+
// the end (RangeError: ERR_BUFFER_OUT_OF_BOUNDS). Must be >= the on-chain User size.
|
|
20
|
+
const MAX_USER_ACCOUNT_SIZE_BYTES = 4496;
|
|
17
21
|
class UserMap {
|
|
18
22
|
/**
|
|
19
23
|
* Constructs a new UserMap instance.
|
package/package.json
CHANGED
package/src/config.ts
CHANGED
|
@@ -73,7 +73,7 @@ export const configs: { [key in VelocityEnv]: VelocityConfig } = {
|
|
|
73
73
|
PYTH_ORACLE_MAPPING_ADDRESS: 'BmA9Z6FjioHJPpjT39QazZyhDRUdZy2ezwx4GiDdE2u2',
|
|
74
74
|
VELOCITY_PROGRAM_ID: VELOCITY_DEVNET_PROGRAM_ID,
|
|
75
75
|
JIT_PROXY_PROGRAM_ID: 'J1TnP8zvVxbtF5KFp5xRmWuvG9McnhzmBd9XGfCyuxFP',
|
|
76
|
-
QUOTE_MINT_ADDRESS: '
|
|
76
|
+
QUOTE_MINT_ADDRESS: 'GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6',
|
|
77
77
|
V2_ALPHA_TICKET_MINT_ADDRESS:
|
|
78
78
|
'DeEiGWfCMP9psnLGkxGrBBMEAW5Jv8bBGMN8DCtFRCyB',
|
|
79
79
|
PERP_MARKETS: DevnetPerpMarkets,
|
|
@@ -40,7 +40,7 @@ export const DevnetSpotMarkets: SpotMarketConfig[] = [
|
|
|
40
40
|
poolId: 0,
|
|
41
41
|
oracle: new PublicKey('Dai8hT1YRBBm5rBSJUSKcdR11psM55LVAkshbypfC4k4'),
|
|
42
42
|
oracleSource: OracleSource.PYTH_LAZER_STABLE_COIN,
|
|
43
|
-
mint: new PublicKey('
|
|
43
|
+
mint: new PublicKey('GqmEqYsy8EyvofDpmtFxK8zhYrgWgNokAtYoduQdL7v6'),
|
|
44
44
|
precision: new BN(10).pow(SIX),
|
|
45
45
|
precisionExp: SIX,
|
|
46
46
|
pythLazerId: 8,
|
package/src/math/liquidation.ts
CHANGED
|
@@ -11,6 +11,13 @@ import {
|
|
|
11
11
|
ONE,
|
|
12
12
|
} from '../constants/numericConstants';
|
|
13
13
|
|
|
14
|
+
/**
|
|
15
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
16
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
17
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
18
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
19
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
20
|
+
*/
|
|
14
21
|
export function calculateBaseAssetAmountToCoverMarginShortage(
|
|
15
22
|
marginShortage: BN,
|
|
16
23
|
marginRatio: number,
|
|
@@ -41,6 +48,13 @@ export function calculateBaseAssetAmountToCoverMarginShortage(
|
|
|
41
48
|
);
|
|
42
49
|
}
|
|
43
50
|
|
|
51
|
+
/**
|
|
52
|
+
* @param ifLiquidationFee Since PR#75 the program sizes liquidations against the
|
|
53
|
+
* COMBINED insurance-fund + protocol liquidation fee budget:
|
|
54
|
+
* `market.ifLiquidationFee + market.protocolLiquidationFee` (split IF-first
|
|
55
|
+
* on-chain). Pass that sum here to match on-chain sizing; passing
|
|
56
|
+
* `market.ifLiquidationFee` alone under-sizes the estimate.
|
|
57
|
+
*/
|
|
44
58
|
export function calculateLiabilityTransferToCoverMarginShortage(
|
|
45
59
|
marginShortage: BN,
|
|
46
60
|
assetWeight: number,
|
package/src/types.ts
CHANGED
|
@@ -371,6 +371,8 @@ export type DepositRecord = {
|
|
|
371
371
|
depositRecordId: BN;
|
|
372
372
|
explanation: DepositExplanation;
|
|
373
373
|
transferUser?: PublicKey;
|
|
374
|
+
signer?: PublicKey;
|
|
375
|
+
userTokenAmountAfter: BN;
|
|
374
376
|
};
|
|
375
377
|
|
|
376
378
|
export type SpotInterestRecord = {
|
|
@@ -465,13 +467,14 @@ export type LiquidationRecord = {
|
|
|
465
467
|
marginFreed: BN;
|
|
466
468
|
liquidationId: number;
|
|
467
469
|
bankrupt: boolean;
|
|
468
|
-
canceledOrderIds:
|
|
470
|
+
canceledOrderIds: number[];
|
|
469
471
|
liquidatePerp: LiquidatePerpRecord;
|
|
470
472
|
liquidateSpot: LiquidateSpotRecord;
|
|
471
473
|
liquidateBorrowForPerpPnl: LiquidateBorrowForPerpPnlRecord;
|
|
472
474
|
liquidatePerpPnlForDeposit: LiquidatePerpPnlForDepositRecord;
|
|
473
475
|
perpBankruptcy: PerpBankruptcyRecord;
|
|
474
476
|
spotBankruptcy: SpotBankruptcyRecord;
|
|
477
|
+
bitFlags: number;
|
|
475
478
|
};
|
|
476
479
|
|
|
477
480
|
export class LiquidationType {
|
|
@@ -498,11 +501,12 @@ export type LiquidatePerpRecord = {
|
|
|
498
501
|
oraclePrice: BN;
|
|
499
502
|
baseAssetAmount: BN;
|
|
500
503
|
quoteAssetAmount: BN;
|
|
501
|
-
userOrderId:
|
|
502
|
-
liquidatorOrderId:
|
|
504
|
+
userOrderId: number;
|
|
505
|
+
liquidatorOrderId: number;
|
|
503
506
|
fillRecordId: BN;
|
|
504
507
|
liquidatorFee: BN;
|
|
505
508
|
ifFee: BN;
|
|
509
|
+
protocolFee: BN;
|
|
506
510
|
};
|
|
507
511
|
|
|
508
512
|
export type LiquidateSpotRecord = {
|
|
@@ -513,6 +517,7 @@ export type LiquidateSpotRecord = {
|
|
|
513
517
|
liabilityPrice: BN;
|
|
514
518
|
liabilityTransfer: BN;
|
|
515
519
|
ifFee: BN;
|
|
520
|
+
protocolFee: BN;
|
|
516
521
|
};
|
|
517
522
|
|
|
518
523
|
export type LiquidateBorrowForPerpPnlRecord = {
|
|
@@ -615,6 +620,9 @@ export type OrderActionRecord = {
|
|
|
615
620
|
takerExistingBaseAssetAmount: BN | null;
|
|
616
621
|
makerExistingQuoteEntryAmount: BN | null;
|
|
617
622
|
makerExistingBaseAssetAmount: BN | null;
|
|
623
|
+
triggerPrice: BN | null;
|
|
624
|
+
builderIdx: number | null;
|
|
625
|
+
builderFee: BN | null;
|
|
618
626
|
};
|
|
619
627
|
|
|
620
628
|
export type SwapRecord = {
|
|
@@ -661,8 +669,6 @@ export type LPSwapRecord = {
|
|
|
661
669
|
inConstituentIndex: number;
|
|
662
670
|
outOraclePrice: BN;
|
|
663
671
|
inOraclePrice: BN;
|
|
664
|
-
outMint: PublicKey;
|
|
665
|
-
inMint: PublicKey;
|
|
666
672
|
lastAum: BN;
|
|
667
673
|
lastAumSlot: BN;
|
|
668
674
|
inMarketCurrentWeight: BN;
|
|
@@ -685,7 +691,6 @@ export type LPMintRedeemRecord = {
|
|
|
685
691
|
constituentIndex: number;
|
|
686
692
|
oraclePrice: BN;
|
|
687
693
|
mint: PublicKey;
|
|
688
|
-
lpMint: PublicKey;
|
|
689
694
|
lpAmount: BN;
|
|
690
695
|
lpFee: BN;
|
|
691
696
|
lpPrice: BN;
|
|
@@ -728,6 +733,7 @@ export type LPBorrowLendDepositRecord = {
|
|
|
728
733
|
export type StateAccount = {
|
|
729
734
|
coldAdmin: PublicKey;
|
|
730
735
|
warmAdmin: PublicKey;
|
|
736
|
+
pauseAdmin: PublicKey;
|
|
731
737
|
hotAmmCrank: PublicKey;
|
|
732
738
|
hotLpCache: PublicKey;
|
|
733
739
|
hotLpSwap: PublicKey;
|
|
@@ -764,6 +770,7 @@ export type StateAccount = {
|
|
|
764
770
|
liquidationDuration: number;
|
|
765
771
|
maxInitializeUserFee: number;
|
|
766
772
|
featureBitFlags: number;
|
|
773
|
+
lpPoolFeatureBitFlags: number;
|
|
767
774
|
};
|
|
768
775
|
|
|
769
776
|
export type PerpMarketAccount = {
|
|
@@ -807,6 +814,7 @@ export type PerpMarketAccount = {
|
|
|
807
814
|
pausedOperations: number;
|
|
808
815
|
|
|
809
816
|
lastFillPrice: BN;
|
|
817
|
+
poolId: number;
|
|
810
818
|
|
|
811
819
|
hedgeConfig: {
|
|
812
820
|
poolId: number;
|
|
@@ -908,6 +916,7 @@ export type SpotMarketAccount = {
|
|
|
908
916
|
|
|
909
917
|
lastInterestTs: BN;
|
|
910
918
|
lastTwapTs: BN;
|
|
919
|
+
expiryTs: BN;
|
|
911
920
|
initialAssetWeight: number;
|
|
912
921
|
maintenanceAssetWeight: number;
|
|
913
922
|
initialLiabilityWeight: number;
|
|
@@ -988,12 +997,21 @@ export type AMM = {
|
|
|
988
997
|
totalFeeMinusDistributions: BN;
|
|
989
998
|
/// @deprecated frozen pre-isolation analytics counter
|
|
990
999
|
totalFeeWithdrawn: BN;
|
|
1000
|
+
askBaseAssetReserve: BN;
|
|
1001
|
+
askQuoteAssetReserve: BN;
|
|
1002
|
+
bidBaseAssetReserve: BN;
|
|
1003
|
+
bidQuoteAssetReserve: BN;
|
|
991
1004
|
lastUpdateSlot: BN;
|
|
992
1005
|
netRevenueSinceLastFunding: BN;
|
|
993
1006
|
lastCumulativeFundingRateLong: BN;
|
|
994
1007
|
lastCumulativeFundingRateShort: BN;
|
|
1008
|
+
lastOracleReservePriceSpreadPct: BN;
|
|
1009
|
+
lastSpreadUpdateSlot: BN;
|
|
995
1010
|
baseSpread: number;
|
|
996
1011
|
maxSpread: number;
|
|
1012
|
+
longSpread: number;
|
|
1013
|
+
shortSpread: number;
|
|
1014
|
+
referencePriceOffset: number;
|
|
997
1015
|
maxFillReserveFraction: number;
|
|
998
1016
|
maxSlippageRatio: number;
|
|
999
1017
|
curveUpdateIntensity: number;
|
|
@@ -1066,6 +1084,8 @@ export type UserStatsAccount = {
|
|
|
1066
1084
|
};
|
|
1067
1085
|
referrer: PublicKey;
|
|
1068
1086
|
referrerStatus: number;
|
|
1087
|
+
disableUpdatePerpBidAskTwap: number;
|
|
1088
|
+
pausedOperations: number;
|
|
1069
1089
|
authority: PublicKey;
|
|
1070
1090
|
ifStakedQuoteAssetAmount: BN;
|
|
1071
1091
|
delegatePermissions: number;
|
|
@@ -1388,8 +1408,8 @@ export type FeeTier = {
|
|
|
1388
1408
|
};
|
|
1389
1409
|
|
|
1390
1410
|
export type OrderFillerRewardStructure = {
|
|
1391
|
-
rewardNumerator:
|
|
1392
|
-
rewardDenominator:
|
|
1411
|
+
rewardNumerator: number;
|
|
1412
|
+
rewardDenominator: number;
|
|
1393
1413
|
timeBasedRewardLowerBound: BN;
|
|
1394
1414
|
};
|
|
1395
1415
|
|
|
@@ -1426,6 +1446,25 @@ export type PrelaunchOracle = {
|
|
|
1426
1446
|
perpMarketIndex: number;
|
|
1427
1447
|
};
|
|
1428
1448
|
|
|
1449
|
+
export type PrelaunchOracleParams = {
|
|
1450
|
+
perpMarketIndex: number;
|
|
1451
|
+
price: BN | null;
|
|
1452
|
+
maxPrice: BN | null;
|
|
1453
|
+
};
|
|
1454
|
+
|
|
1455
|
+
export type PythLazerOracle = {
|
|
1456
|
+
price: BN;
|
|
1457
|
+
publishTime: BN;
|
|
1458
|
+
postedSlot: BN;
|
|
1459
|
+
exponent: number;
|
|
1460
|
+
conf: BN;
|
|
1461
|
+
};
|
|
1462
|
+
|
|
1463
|
+
export type UpdatePerpMarketSummaryStatsParams = {
|
|
1464
|
+
netUnsettledFundingPnl: BN | null;
|
|
1465
|
+
updateAmmSummaryStats: boolean | null;
|
|
1466
|
+
};
|
|
1467
|
+
|
|
1429
1468
|
export type MarginCategory = 'Initial' | 'Maintenance';
|
|
1430
1469
|
|
|
1431
1470
|
export type InsuranceFundStake = {
|
|
@@ -1436,6 +1475,7 @@ export type InsuranceFundStake = {
|
|
|
1436
1475
|
|
|
1437
1476
|
ifShares: BN;
|
|
1438
1477
|
ifBase: BN;
|
|
1478
|
+
lastValidTs: BN;
|
|
1439
1479
|
|
|
1440
1480
|
lastWithdrawRequestShares: BN;
|
|
1441
1481
|
lastWithdrawRequestValue: BN;
|
|
@@ -1523,6 +1563,10 @@ export type SignedMsgUserOrdersAccount = {
|
|
|
1523
1563
|
signedMsgOrderData: SignedMsgOrderId[];
|
|
1524
1564
|
};
|
|
1525
1565
|
|
|
1566
|
+
export type SignedMsgWsDelegatesAccount = {
|
|
1567
|
+
delegates: PublicKey[];
|
|
1568
|
+
};
|
|
1569
|
+
|
|
1526
1570
|
export type RevenueShareAccount = {
|
|
1527
1571
|
authority: PublicKey;
|
|
1528
1572
|
totalReferrerRewards: BN;
|
|
@@ -1557,8 +1601,25 @@ export type BuilderInfo = {
|
|
|
1557
1601
|
padding: number[];
|
|
1558
1602
|
};
|
|
1559
1603
|
|
|
1604
|
+
export type PerpMarketFeeSweepRecord = {
|
|
1605
|
+
ts: BN;
|
|
1606
|
+
marketIndex: number;
|
|
1607
|
+
ifSwept: BN;
|
|
1608
|
+
protocolSwept: BN;
|
|
1609
|
+
ammProvisionTokenized: BN;
|
|
1610
|
+
};
|
|
1611
|
+
|
|
1612
|
+
export type ProtocolFeeWithdrawRecord = {
|
|
1613
|
+
ts: BN;
|
|
1614
|
+
marketIndex: number;
|
|
1615
|
+
isPerp: boolean;
|
|
1616
|
+
spotMarketIndex: number;
|
|
1617
|
+
amount: BN;
|
|
1618
|
+
recipientTokenAccount: PublicKey;
|
|
1619
|
+
};
|
|
1620
|
+
|
|
1560
1621
|
export type RevenueShareSettleRecord = {
|
|
1561
|
-
ts:
|
|
1622
|
+
ts: BN;
|
|
1562
1623
|
builder: PublicKey | null;
|
|
1563
1624
|
referrer: PublicKey | null;
|
|
1564
1625
|
feeSettled: BN;
|
|
@@ -1628,6 +1689,8 @@ export type LPPoolAccount = {
|
|
|
1628
1689
|
bump: number;
|
|
1629
1690
|
gammaExecution: number;
|
|
1630
1691
|
xi: number;
|
|
1692
|
+
targetOracleDelayFeeBpsPer10Slots: number;
|
|
1693
|
+
targetPositionDelayFeeBpsPer10Slots: number;
|
|
1631
1694
|
};
|
|
1632
1695
|
|
|
1633
1696
|
export type ConstituentSpotBalance = {
|
|
@@ -1726,6 +1789,7 @@ export type CacheInfo = {
|
|
|
1726
1789
|
};
|
|
1727
1790
|
|
|
1728
1791
|
export type AmmCache = {
|
|
1792
|
+
bump: number;
|
|
1729
1793
|
cache: CacheInfo[];
|
|
1730
1794
|
};
|
|
1731
1795
|
|
|
@@ -1739,3 +1803,12 @@ export class TransferFeeAndPnlPoolDirection {
|
|
|
1739
1803
|
static readonly FEE_TO_PNL_POOL = { feeToPnlPool: {} };
|
|
1740
1804
|
static readonly PNL_TO_FEE_POOL = { pnlToFeePool: {} };
|
|
1741
1805
|
}
|
|
1806
|
+
|
|
1807
|
+
export type TransferFeeAndPnlPoolRecord = {
|
|
1808
|
+
ts: BN;
|
|
1809
|
+
slot: BN;
|
|
1810
|
+
perpMarketIndexWithFeePool: number;
|
|
1811
|
+
perpMarketIndexWithPnlPool: number;
|
|
1812
|
+
direction: TransferFeeAndPnlPoolDirection;
|
|
1813
|
+
amount: BN;
|
|
1814
|
+
};
|
package/src/userMap/userMap.ts
CHANGED
|
@@ -44,7 +44,11 @@ import { grpcSubscription } from './grpcSubscription';
|
|
|
44
44
|
import StrictEventEmitter from 'strict-event-emitter-types';
|
|
45
45
|
import { EventEmitter } from 'events';
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
// Velocity's User account is 4496 bytes (8-byte discriminator + 4488 struct);
|
|
48
|
+
// drift's was 4376. This caps the zstd-decompressed buffer in defaultSync — if it's
|
|
49
|
+
// smaller than the real account, the buffer is truncated and decodeUser reads past
|
|
50
|
+
// the end (RangeError: ERR_BUFFER_OUT_OF_BOUNDS). Must be >= the on-chain User size.
|
|
51
|
+
const MAX_USER_ACCOUNT_SIZE_BYTES = 4496;
|
|
48
52
|
|
|
49
53
|
export interface UserMapInterface {
|
|
50
54
|
eventEmitter: StrictEventEmitter<EventEmitter, UserEvents>;
|
package/tests/dlob/helpers.ts
CHANGED
|
@@ -52,9 +52,23 @@ export const mockAMM: AMM = {
|
|
|
52
52
|
quoteAssetReserve: new BN(12)
|
|
53
53
|
.mul(QUOTE_PRECISION)
|
|
54
54
|
.mul(AMM_TO_QUOTE_PRECISION_RATIO),
|
|
55
|
+
// zero-spread mock: bid/ask reserves mirror the base/quote reserves
|
|
56
|
+
askBaseAssetReserve: new BN(1).mul(BASE_PRECISION),
|
|
57
|
+
askQuoteAssetReserve: new BN(12)
|
|
58
|
+
.mul(QUOTE_PRECISION)
|
|
59
|
+
.mul(AMM_TO_QUOTE_PRECISION_RATIO),
|
|
60
|
+
bidBaseAssetReserve: new BN(1).mul(BASE_PRECISION),
|
|
61
|
+
bidQuoteAssetReserve: new BN(12)
|
|
62
|
+
.mul(QUOTE_PRECISION)
|
|
63
|
+
.mul(AMM_TO_QUOTE_PRECISION_RATIO),
|
|
55
64
|
sqrtK: new BN(1),
|
|
56
65
|
pegMultiplier: new BN(1),
|
|
57
66
|
maxSlippageRatio: 1_000_000,
|
|
67
|
+
lastOracleReservePriceSpreadPct: new BN(0),
|
|
68
|
+
lastSpreadUpdateSlot: new BN(0),
|
|
69
|
+
longSpread: 0,
|
|
70
|
+
shortSpread: 0,
|
|
71
|
+
referencePriceOffset: 0,
|
|
58
72
|
|
|
59
73
|
feePool: {
|
|
60
74
|
scaledBalance: new BN(0),
|
|
@@ -177,6 +191,7 @@ function mockPerpMarketCommon(): Omit<
|
|
|
177
191
|
},
|
|
178
192
|
quoteSpotMarketIndex: 0,
|
|
179
193
|
feeAdjustment: 0,
|
|
194
|
+
poolId: 0,
|
|
180
195
|
pausedOperations: 0,
|
|
181
196
|
hedgeConfig: {
|
|
182
197
|
poolId: 0,
|
|
@@ -285,6 +300,7 @@ export const mockSpotMarkets: Array<SpotMarketAccount> = [
|
|
|
285
300
|
borrowBalance: new BN(0),
|
|
286
301
|
lastInterestTs: new BN(0),
|
|
287
302
|
lastTwapTs: new BN(0),
|
|
303
|
+
expiryTs: new BN(0),
|
|
288
304
|
oracle: PublicKey.default,
|
|
289
305
|
initialAssetWeight: SPOT_MARKET_WEIGHT_PRECISION.toNumber(),
|
|
290
306
|
maintenanceAssetWeight: SPOT_MARKET_WEIGHT_PRECISION.toNumber(),
|
|
@@ -378,6 +394,7 @@ export const mockSpotMarkets: Array<SpotMarketAccount> = [
|
|
|
378
394
|
borrowBalance: new BN(0),
|
|
379
395
|
lastInterestTs: new BN(0),
|
|
380
396
|
lastTwapTs: new BN(0),
|
|
397
|
+
expiryTs: new BN(0),
|
|
381
398
|
oracle: PublicKey.default,
|
|
382
399
|
initialAssetWeight: 0,
|
|
383
400
|
maintenanceAssetWeight: 0,
|
|
@@ -473,6 +490,7 @@ export const mockSpotMarkets: Array<SpotMarketAccount> = [
|
|
|
473
490
|
borrowBalance: new BN(0),
|
|
474
491
|
lastInterestTs: new BN(0),
|
|
475
492
|
lastTwapTs: new BN(0),
|
|
493
|
+
expiryTs: new BN(0),
|
|
476
494
|
oracle: PublicKey.default,
|
|
477
495
|
initialAssetWeight: 0,
|
|
478
496
|
maintenanceAssetWeight: 0,
|
|
@@ -526,6 +544,7 @@ export const mockSpotMarkets: Array<SpotMarketAccount> = [
|
|
|
526
544
|
export const mockStateAccount: StateAccount = {
|
|
527
545
|
coldAdmin: PublicKey.default,
|
|
528
546
|
warmAdmin: PublicKey.default,
|
|
547
|
+
pauseAdmin: PublicKey.default,
|
|
529
548
|
hotAmmCrank: PublicKey.default,
|
|
530
549
|
hotLpCache: PublicKey.default,
|
|
531
550
|
hotLpSwap: PublicKey.default,
|
|
@@ -540,6 +559,7 @@ export const mockStateAccount: StateAccount = {
|
|
|
540
559
|
protocolFeeRecipientPerp: PublicKey.default,
|
|
541
560
|
protocolFeeRecipientSpot: PublicKey.default,
|
|
542
561
|
featureBitFlags: 0,
|
|
562
|
+
lpPoolFeatureBitFlags: 0,
|
|
543
563
|
defaultMarketOrderTimeInForce: 0,
|
|
544
564
|
defaultSpotAuctionDuration: 0,
|
|
545
565
|
discountMint: PublicKey.default,
|
|
@@ -578,8 +598,8 @@ export const mockStateAccount: StateAccount = {
|
|
|
578
598
|
},
|
|
579
599
|
],
|
|
580
600
|
fillerRewardStructure: {
|
|
581
|
-
rewardNumerator:
|
|
582
|
-
rewardDenominator:
|
|
601
|
+
rewardNumerator: 0,
|
|
602
|
+
rewardDenominator: 0,
|
|
583
603
|
timeBasedRewardLowerBound: new BN(0),
|
|
584
604
|
},
|
|
585
605
|
flatFillerFee: new BN(0),
|
|
@@ -603,8 +623,8 @@ export const mockStateAccount: StateAccount = {
|
|
|
603
623
|
},
|
|
604
624
|
],
|
|
605
625
|
fillerRewardStructure: {
|
|
606
|
-
rewardNumerator:
|
|
607
|
-
rewardDenominator:
|
|
626
|
+
rewardNumerator: 0,
|
|
627
|
+
rewardDenominator: 0,
|
|
608
628
|
timeBasedRewardLowerBound: new BN(0),
|
|
609
629
|
},
|
|
610
630
|
flatFillerFee: new BN(0),
|