@drift-labs/sdk 2.141.0-beta.0 → 2.141.0-beta.2
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/VERSION +1 -1
- package/lib/browser/driftClient.d.ts +3 -2
- package/lib/browser/driftClient.js +61 -12
- package/lib/browser/idl/drift.json +14 -0
- package/lib/browser/user.d.ts +5 -5
- package/lib/browser/user.js +17 -15
- package/lib/node/driftClient.d.ts +3 -2
- package/lib/node/driftClient.d.ts.map +1 -1
- package/lib/node/driftClient.js +61 -12
- package/lib/node/idl/drift.json +14 -0
- package/lib/node/user.d.ts +5 -5
- package/lib/node/user.d.ts.map +1 -1
- package/lib/node/user.js +17 -15
- package/package.json +1 -1
- package/src/driftClient.ts +102 -21
- package/src/idl/drift.json +15 -1
- package/src/user.ts +36 -15
- package/tests/dlob/helpers.ts +1 -0
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
2.141.0-beta.
|
|
1
|
+
2.141.0-beta.2
|
|
@@ -200,7 +200,7 @@ export declare class DriftClient {
|
|
|
200
200
|
}[], txParams?: TxParams): Promise<TransactionSignature>;
|
|
201
201
|
getUpdateUserCustomMarginRatioIx(marginRatio: number, subAccountId?: number): Promise<TransactionInstruction>;
|
|
202
202
|
getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex: number, marginRatio: number, subAccountId?: number): Promise<TransactionInstruction>;
|
|
203
|
-
updateUserPerpPositionCustomMarginRatio(perpMarketIndex: number, marginRatio: number, subAccountId?: number, txParams?: TxParams): Promise<TransactionSignature>;
|
|
203
|
+
updateUserPerpPositionCustomMarginRatio(perpMarketIndex: number, marginRatio: number, subAccountId?: number, txParams?: TxParams, enterHighLeverageMode?: boolean): Promise<TransactionSignature>;
|
|
204
204
|
getUpdateUserMarginTradingEnabledIx(marginTradingEnabled: boolean, subAccountId?: number, userAccountPublicKey?: PublicKey): Promise<TransactionInstruction>;
|
|
205
205
|
updateUserMarginTradingEnabled(updates: {
|
|
206
206
|
marginTradingEnabled: boolean;
|
|
@@ -414,7 +414,7 @@ export declare class DriftClient {
|
|
|
414
414
|
*/
|
|
415
415
|
openPosition(direction: PositionDirection, amount: BN, marketIndex: number, limitPrice?: BN, subAccountId?: number): Promise<TransactionSignature>;
|
|
416
416
|
sendSignedTx(tx: Transaction | VersionedTransaction, opts?: ConfirmOptions): Promise<TransactionSignature>;
|
|
417
|
-
prepareMarketOrderTxs(orderParams: OptionalOrderParams, userAccountPublicKey: PublicKey, userAccount: UserAccount, makerInfo?: MakerInfo | MakerInfo[], txParams?: TxParams, bracketOrdersParams?: OptionalOrderParams[], referrerInfo?: ReferrerInfo, cancelExistingOrders?: boolean, settlePnl?: boolean): Promise<{
|
|
417
|
+
prepareMarketOrderTxs(orderParams: OptionalOrderParams, userAccountPublicKey: PublicKey, userAccount: UserAccount, makerInfo?: MakerInfo | MakerInfo[], txParams?: TxParams, bracketOrdersParams?: OptionalOrderParams[], referrerInfo?: ReferrerInfo, cancelExistingOrders?: boolean, settlePnl?: boolean, positionMaxLev?: number): Promise<{
|
|
418
418
|
cancelExistingOrdersTx?: Transaction | VersionedTransaction;
|
|
419
419
|
settlePnlTx?: Transaction | VersionedTransaction;
|
|
420
420
|
fillTx?: Transaction | VersionedTransaction;
|
|
@@ -483,6 +483,7 @@ export declare class DriftClient {
|
|
|
483
483
|
placeOrdersTx: anchor.web3.Transaction | anchor.web3.VersionedTransaction;
|
|
484
484
|
}>;
|
|
485
485
|
getPlaceOrdersIx(params: OptionalOrderParams[], subAccountId?: number): Promise<TransactionInstruction>;
|
|
486
|
+
getPlaceOrdersAndSetPositionMaxLevIx(params: OptionalOrderParams[], positionMaxLev: number, subAccountId?: number): Promise<TransactionInstruction[]>;
|
|
486
487
|
fillPerpOrder(userAccountPublicKey: PublicKey, user: UserAccount, order?: Pick<Order, 'marketIndex' | 'orderId'>, makerInfo?: MakerInfo | MakerInfo[], referrerInfo?: ReferrerInfo, txParams?: TxParams, fillerSubAccountId?: number, fillerAuthority?: PublicKey, hasBuilderFee?: boolean): Promise<TransactionSignature>;
|
|
487
488
|
getFillPerpOrderIx(userAccountPublicKey: PublicKey, userAccount: UserAccount, order: Pick<Order, 'marketIndex' | 'orderId'>, makerInfo?: MakerInfo | MakerInfo[], referrerInfo?: ReferrerInfo, fillerSubAccountId?: number, isSignedMsg?: boolean, fillerAuthority?: PublicKey, hasBuilderFee?: boolean): Promise<TransactionInstruction>;
|
|
488
489
|
getRevertFillIx(fillerPublicKey?: PublicKey): Promise<TransactionInstruction>;
|
|
@@ -962,8 +962,8 @@ class DriftClient {
|
|
|
962
962
|
return ix;
|
|
963
963
|
}
|
|
964
964
|
async getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex, marginRatio, subAccountId = 0) {
|
|
965
|
-
const userAccountPublicKey = (0, pda_1.getUserAccountPublicKeySync)(this.program.programId, this.
|
|
966
|
-
await this.addUser(subAccountId, this.
|
|
965
|
+
const userAccountPublicKey = (0, pda_1.getUserAccountPublicKeySync)(this.program.programId, this.authority, subAccountId);
|
|
966
|
+
await this.addUser(subAccountId, this.authority);
|
|
967
967
|
const ix = this.program.instruction.updateUserPerpPositionCustomMarginRatio(subAccountId, perpMarketIndex, marginRatio, {
|
|
968
968
|
accounts: {
|
|
969
969
|
user: userAccountPublicKey,
|
|
@@ -972,9 +972,15 @@ class DriftClient {
|
|
|
972
972
|
});
|
|
973
973
|
return ix;
|
|
974
974
|
}
|
|
975
|
-
async updateUserPerpPositionCustomMarginRatio(perpMarketIndex, marginRatio, subAccountId = 0, txParams) {
|
|
976
|
-
const
|
|
977
|
-
|
|
975
|
+
async updateUserPerpPositionCustomMarginRatio(perpMarketIndex, marginRatio, subAccountId = 0, txParams, enterHighLeverageMode) {
|
|
976
|
+
const ixs = [];
|
|
977
|
+
if (enterHighLeverageMode) {
|
|
978
|
+
const enableIx = await this.getEnableHighLeverageModeIx(subAccountId);
|
|
979
|
+
ixs.push(enableIx);
|
|
980
|
+
}
|
|
981
|
+
const updateIx = await this.getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex, marginRatio, subAccountId);
|
|
982
|
+
ixs.push(updateIx);
|
|
983
|
+
const tx = await this.buildTransaction(ixs, txParams !== null && txParams !== void 0 ? txParams : this.txParams);
|
|
978
984
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
979
985
|
return txSig;
|
|
980
986
|
}
|
|
@@ -2232,7 +2238,7 @@ class DriftClient {
|
|
|
2232
2238
|
const { txSig } = await this.sendTransaction(tx, undefined, opts !== null && opts !== void 0 ? opts : this.opts, true);
|
|
2233
2239
|
return txSig;
|
|
2234
2240
|
}
|
|
2235
|
-
async prepareMarketOrderTxs(orderParams, userAccountPublicKey, userAccount, makerInfo, txParams, bracketOrdersParams = new Array(), referrerInfo, cancelExistingOrders, settlePnl) {
|
|
2241
|
+
async prepareMarketOrderTxs(orderParams, userAccountPublicKey, userAccount, makerInfo, txParams, bracketOrdersParams = new Array(), referrerInfo, cancelExistingOrders, settlePnl, positionMaxLev) {
|
|
2236
2242
|
const marketIndex = orderParams.marketIndex;
|
|
2237
2243
|
const orderId = userAccount.nextOrderId;
|
|
2238
2244
|
const ixPromisesForTxs = {
|
|
@@ -2242,7 +2248,10 @@ class DriftClient {
|
|
|
2242
2248
|
marketOrderTx: undefined,
|
|
2243
2249
|
};
|
|
2244
2250
|
const txKeys = Object.keys(ixPromisesForTxs);
|
|
2245
|
-
|
|
2251
|
+
const marketOrderTxIxs = positionMaxLev
|
|
2252
|
+
? this.getPlaceOrdersAndSetPositionMaxLevIx([orderParams, ...bracketOrdersParams], positionMaxLev, userAccount.subAccountId)
|
|
2253
|
+
: this.getPlaceOrdersIx([orderParams, ...bracketOrdersParams], userAccount.subAccountId);
|
|
2254
|
+
ixPromisesForTxs.marketOrderTx = marketOrderTxIxs;
|
|
2246
2255
|
/* Cancel open orders in market if requested */
|
|
2247
2256
|
if (cancelExistingOrders && (0, types_1.isVariant)(orderParams.marketType, 'perp')) {
|
|
2248
2257
|
ixPromisesForTxs.cancelExistingOrdersTx = this.getCancelOrdersIx(orderParams.marketType, orderParams.marketIndex, null, userAccount.subAccountId);
|
|
@@ -2567,6 +2576,51 @@ class DriftClient {
|
|
|
2567
2576
|
remainingAccounts,
|
|
2568
2577
|
});
|
|
2569
2578
|
}
|
|
2579
|
+
async getPlaceOrdersAndSetPositionMaxLevIx(params, positionMaxLev, subAccountId) {
|
|
2580
|
+
const user = await this.getUserAccountPublicKey(subAccountId);
|
|
2581
|
+
const readablePerpMarketIndex = [];
|
|
2582
|
+
const readableSpotMarketIndexes = [];
|
|
2583
|
+
for (const param of params) {
|
|
2584
|
+
if (!param.marketType) {
|
|
2585
|
+
throw new Error('must set param.marketType');
|
|
2586
|
+
}
|
|
2587
|
+
if ((0, types_1.isVariant)(param.marketType, 'perp')) {
|
|
2588
|
+
readablePerpMarketIndex.push(param.marketIndex);
|
|
2589
|
+
}
|
|
2590
|
+
else {
|
|
2591
|
+
readableSpotMarketIndexes.push(param.marketIndex);
|
|
2592
|
+
}
|
|
2593
|
+
}
|
|
2594
|
+
const remainingAccounts = this.getRemainingAccounts({
|
|
2595
|
+
userAccounts: [this.getUserAccount(subAccountId)],
|
|
2596
|
+
readablePerpMarketIndex,
|
|
2597
|
+
readableSpotMarketIndexes,
|
|
2598
|
+
useMarketLastSlotCache: true,
|
|
2599
|
+
});
|
|
2600
|
+
for (const param of params) {
|
|
2601
|
+
if ((0, orderParams_1.isUpdateHighLeverageMode)(param.bitFlags)) {
|
|
2602
|
+
remainingAccounts.push({
|
|
2603
|
+
pubkey: (0, pda_1.getHighLeverageModeConfigPublicKey)(this.program.programId),
|
|
2604
|
+
isWritable: true,
|
|
2605
|
+
isSigner: false,
|
|
2606
|
+
});
|
|
2607
|
+
}
|
|
2608
|
+
}
|
|
2609
|
+
const formattedParams = params.map((item) => (0, orderParams_1.getOrderParams)(item));
|
|
2610
|
+
const placeOrdersIxs = await this.program.instruction.placeOrders(formattedParams, {
|
|
2611
|
+
accounts: {
|
|
2612
|
+
state: await this.getStatePublicKey(),
|
|
2613
|
+
user,
|
|
2614
|
+
userStats: this.getUserStatsAccountPublicKey(),
|
|
2615
|
+
authority: this.wallet.publicKey,
|
|
2616
|
+
},
|
|
2617
|
+
remainingAccounts,
|
|
2618
|
+
});
|
|
2619
|
+
const marginRatio = Math.floor((1 / positionMaxLev) * numericConstants_1.MARGIN_PRECISION.toNumber());
|
|
2620
|
+
// TODO: Handle multiple markets?
|
|
2621
|
+
const setPositionMaxLevIxs = await this.getUpdateUserPerpPositionCustomMarginRatioIx(readablePerpMarketIndex[0], marginRatio, subAccountId);
|
|
2622
|
+
return [placeOrdersIxs, setPositionMaxLevIxs];
|
|
2623
|
+
}
|
|
2570
2624
|
async fillPerpOrder(userAccountPublicKey, user, order, makerInfo, referrerInfo, txParams, fillerSubAccountId, fillerAuthority, hasBuilderFee) {
|
|
2571
2625
|
const { txSig } = await this.sendTransaction(await this.buildTransaction(await this.getFillPerpOrderIx(userAccountPublicKey, user, order, makerInfo, referrerInfo, fillerSubAccountId, undefined, fillerAuthority, hasBuilderFee), txParams), [], this.opts);
|
|
2572
2626
|
return txSig;
|
|
@@ -3574,11 +3628,6 @@ class DriftClient {
|
|
|
3574
3628
|
isSigner: false,
|
|
3575
3629
|
});
|
|
3576
3630
|
}
|
|
3577
|
-
remainingAccounts.push({
|
|
3578
|
-
pubkey: (0, pda_1.getRevenueShareEscrowAccountPublicKey)(this.program.programId, takerInfo.takerUserAccount.authority),
|
|
3579
|
-
isWritable: true,
|
|
3580
|
-
isSigner: false,
|
|
3581
|
-
});
|
|
3582
3631
|
const takerOrderId = takerInfo.order.orderId;
|
|
3583
3632
|
if ((0, orders_1.hasBuilder)(takerInfo.order)) {
|
|
3584
3633
|
remainingAccounts.push({
|
|
@@ -14031,6 +14031,20 @@
|
|
|
14031
14031
|
"option": "u64"
|
|
14032
14032
|
},
|
|
14033
14033
|
"index": false
|
|
14034
|
+
},
|
|
14035
|
+
{
|
|
14036
|
+
"name": "builderIdx",
|
|
14037
|
+
"type": {
|
|
14038
|
+
"option": "u8"
|
|
14039
|
+
},
|
|
14040
|
+
"index": false
|
|
14041
|
+
},
|
|
14042
|
+
{
|
|
14043
|
+
"name": "builderFee",
|
|
14044
|
+
"type": {
|
|
14045
|
+
"option": "u64"
|
|
14046
|
+
},
|
|
14047
|
+
"index": false
|
|
14034
14048
|
}
|
|
14035
14049
|
]
|
|
14036
14050
|
},
|
package/lib/browser/user.d.ts
CHANGED
|
@@ -90,8 +90,8 @@ export declare class User {
|
|
|
90
90
|
* calculates Buying Power = free collateral / initial margin ratio
|
|
91
91
|
* @returns : Precision QUOTE_PRECISION
|
|
92
92
|
*/
|
|
93
|
-
getPerpBuyingPower(marketIndex: number, collateralBuffer?: BN, enterHighLeverageMode?: any): BN;
|
|
94
|
-
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex: number, freeCollateral: BN, baseAssetAmount: BN, enterHighLeverageMode?: any,
|
|
93
|
+
getPerpBuyingPower(marketIndex: number, collateralBuffer?: BN, enterHighLeverageMode?: any, maxMarginRatio?: any): BN;
|
|
94
|
+
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex: number, freeCollateral: BN, baseAssetAmount: BN, enterHighLeverageMode?: any, perpMarketMaxMarginRatio?: any): BN;
|
|
95
95
|
/**
|
|
96
96
|
* calculates Free Collateral = Total collateral - margin requirement
|
|
97
97
|
* @returns : Precision QUOTE_PRECISION
|
|
@@ -271,8 +271,8 @@ export declare class User {
|
|
|
271
271
|
* @returns : Precision PRICE_PRECISION
|
|
272
272
|
*/
|
|
273
273
|
liquidationPriceAfterClose(positionMarketIndex: number, closeQuoteAmount: BN, estimatedEntryPrice?: BN): BN;
|
|
274
|
-
getMarginUSDCRequiredForTrade(targetMarketIndex: number, baseSize: BN, estEntryPrice?: BN): BN;
|
|
275
|
-
getCollateralDepositRequiredForTrade(targetMarketIndex: number, baseSize: BN, collateralIndex: number): BN;
|
|
274
|
+
getMarginUSDCRequiredForTrade(targetMarketIndex: number, baseSize: BN, estEntryPrice?: BN, perpMarketMaxMarginRatio?: number): BN;
|
|
275
|
+
getCollateralDepositRequiredForTrade(targetMarketIndex: number, baseSize: BN, collateralIndex: number, perpMarketMaxMarginRatio?: number): BN;
|
|
276
276
|
/**
|
|
277
277
|
* Separates the max trade size into two parts:
|
|
278
278
|
* - tradeSize: The maximum trade size for target direction
|
|
@@ -282,7 +282,7 @@ export declare class User {
|
|
|
282
282
|
* @param isLp
|
|
283
283
|
* @returns { tradeSize: BN, oppositeSideTradeSize: BN} : Precision QUOTE_PRECISION
|
|
284
284
|
*/
|
|
285
|
-
getMaxTradeSizeUSDCForPerp(targetMarketIndex: number, tradeSide: PositionDirection, isLp?: boolean, enterHighLeverageMode?: any): {
|
|
285
|
+
getMaxTradeSizeUSDCForPerp(targetMarketIndex: number, tradeSide: PositionDirection, isLp?: boolean, enterHighLeverageMode?: any, maxMarginRatio?: any): {
|
|
286
286
|
tradeSize: BN;
|
|
287
287
|
oppositeSideTradeSize: BN;
|
|
288
288
|
};
|
package/lib/browser/user.js
CHANGED
|
@@ -261,7 +261,7 @@ class User {
|
|
|
261
261
|
* calculates Buying Power = free collateral / initial margin ratio
|
|
262
262
|
* @returns : Precision QUOTE_PRECISION
|
|
263
263
|
*/
|
|
264
|
-
getPerpBuyingPower(marketIndex, collateralBuffer = numericConstants_1.ZERO, enterHighLeverageMode = undefined) {
|
|
264
|
+
getPerpBuyingPower(marketIndex, collateralBuffer = numericConstants_1.ZERO, enterHighLeverageMode = undefined, maxMarginRatio = undefined) {
|
|
265
265
|
const perpPosition = this.getPerpPositionOrEmpty(marketIndex);
|
|
266
266
|
const perpMarket = this.driftClient.getPerpMarketAccount(marketIndex);
|
|
267
267
|
const oraclePriceData = this.getOracleDataForPerpMarket(marketIndex);
|
|
@@ -269,12 +269,11 @@ class User {
|
|
|
269
269
|
? (0, margin_2.calculateWorstCaseBaseAssetAmount)(perpPosition, perpMarket, oraclePriceData.price)
|
|
270
270
|
: numericConstants_1.ZERO;
|
|
271
271
|
const freeCollateral = this.getFreeCollateral('Initial', enterHighLeverageMode).sub(collateralBuffer);
|
|
272
|
-
return this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, worstCaseBaseAssetAmount, enterHighLeverageMode, perpPosition);
|
|
272
|
+
return this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, worstCaseBaseAssetAmount, enterHighLeverageMode, maxMarginRatio || perpPosition.maxMarginRatio);
|
|
273
273
|
}
|
|
274
|
-
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, baseAssetAmount, enterHighLeverageMode = undefined,
|
|
275
|
-
|
|
276
|
-
const
|
|
277
|
-
const marginRatio = (0, market_1.calculateMarketMarginRatio)(this.driftClient.getPerpMarketAccount(marketIndex), baseAssetAmount, 'Initial', userCustomMargin, enterHighLeverageMode || this.isHighLeverageMode('Initial'));
|
|
274
|
+
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, baseAssetAmount, enterHighLeverageMode = undefined, perpMarketMaxMarginRatio = undefined) {
|
|
275
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
276
|
+
const marginRatio = (0, market_1.calculateMarketMarginRatio)(this.driftClient.getPerpMarketAccount(marketIndex), baseAssetAmount, 'Initial', maxMarginRatio, enterHighLeverageMode || this.isHighLeverageMode('Initial'));
|
|
278
277
|
return freeCollateral.mul(numericConstants_1.MARGIN_PRECISION).div(new anchor_1.BN(marginRatio));
|
|
279
278
|
}
|
|
280
279
|
/**
|
|
@@ -600,7 +599,7 @@ class User {
|
|
|
600
599
|
liabilityValue = (0, margin_1.calculatePerpLiabilityValue)(baseAssetAmount, valuationPrice, (0, types_1.isVariant)(market.contractType, 'prediction'));
|
|
601
600
|
}
|
|
602
601
|
if (marginCategory) {
|
|
603
|
-
const userCustomMargin = this.getUserAccount().maxMarginRatio;
|
|
602
|
+
const userCustomMargin = Math.max(perpPosition.maxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
604
603
|
let marginRatio = new anchor_1.BN((0, market_1.calculateMarketMarginRatio)(market, baseAssetAmount.abs(), marginCategory, enteringHighLeverage === false
|
|
605
604
|
? Math.max(market.marginRatioInitial, userCustomMargin)
|
|
606
605
|
: userCustomMargin, this.isHighLeverageMode(marginCategory) ||
|
|
@@ -1168,11 +1167,13 @@ class User {
|
|
|
1168
1167
|
.neg();
|
|
1169
1168
|
return this.liquidationPrice(positionMarketIndex, closeBaseAmount, estimatedEntryPrice);
|
|
1170
1169
|
}
|
|
1171
|
-
getMarginUSDCRequiredForTrade(targetMarketIndex, baseSize, estEntryPrice) {
|
|
1172
|
-
|
|
1170
|
+
getMarginUSDCRequiredForTrade(targetMarketIndex, baseSize, estEntryPrice, perpMarketMaxMarginRatio) {
|
|
1171
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1172
|
+
return (0, margin_2.calculateMarginUSDCRequiredForTrade)(this.driftClient, targetMarketIndex, baseSize, maxMarginRatio, undefined, estEntryPrice);
|
|
1173
1173
|
}
|
|
1174
|
-
getCollateralDepositRequiredForTrade(targetMarketIndex, baseSize, collateralIndex) {
|
|
1175
|
-
|
|
1174
|
+
getCollateralDepositRequiredForTrade(targetMarketIndex, baseSize, collateralIndex, perpMarketMaxMarginRatio) {
|
|
1175
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1176
|
+
return (0, margin_2.calculateCollateralDepositRequiredForTrade)(this.driftClient, targetMarketIndex, baseSize, collateralIndex, maxMarginRatio, false // assume user cant be high leverage if they havent created user account ?
|
|
1176
1177
|
);
|
|
1177
1178
|
}
|
|
1178
1179
|
/**
|
|
@@ -1184,7 +1185,7 @@ class User {
|
|
|
1184
1185
|
* @param isLp
|
|
1185
1186
|
* @returns { tradeSize: BN, oppositeSideTradeSize: BN} : Precision QUOTE_PRECISION
|
|
1186
1187
|
*/
|
|
1187
|
-
getMaxTradeSizeUSDCForPerp(targetMarketIndex, tradeSide, isLp = false, enterHighLeverageMode = undefined) {
|
|
1188
|
+
getMaxTradeSizeUSDCForPerp(targetMarketIndex, tradeSide, isLp = false, enterHighLeverageMode = undefined, maxMarginRatio = undefined) {
|
|
1188
1189
|
let tradeSize = numericConstants_1.ZERO;
|
|
1189
1190
|
let oppositeSideTradeSize = numericConstants_1.ZERO;
|
|
1190
1191
|
const currentPosition = this.getPerpPositionOrEmpty(targetMarketIndex);
|
|
@@ -1206,7 +1207,7 @@ class User {
|
|
|
1206
1207
|
const oppositeSizeLiabilityValue = targetingSameSide
|
|
1207
1208
|
? numericConstants_1.ZERO
|
|
1208
1209
|
: (0, margin_1.calculatePerpLiabilityValue)(currentPosition.baseAssetAmount, oracleData.price, (0, types_1.isVariant)(marketAccount.contractType, 'prediction'));
|
|
1209
|
-
const maxPositionSize = this.getPerpBuyingPower(targetMarketIndex, lpBuffer, enterHighLeverageMode);
|
|
1210
|
+
const maxPositionSize = this.getPerpBuyingPower(targetMarketIndex, lpBuffer, enterHighLeverageMode, maxMarginRatio);
|
|
1210
1211
|
if (maxPositionSize.gte(numericConstants_1.ZERO)) {
|
|
1211
1212
|
if (oppositeSizeLiabilityValue.eq(numericConstants_1.ZERO)) {
|
|
1212
1213
|
// case 1 : Regular trade where current total position less than max, and no opposite position to account for
|
|
@@ -1226,8 +1227,9 @@ class User {
|
|
|
1226
1227
|
const perpLiabilityValue = (0, margin_1.calculatePerpLiabilityValue)(currentPosition.baseAssetAmount, oracleData.price, (0, types_1.isVariant)(market.contractType, 'prediction'));
|
|
1227
1228
|
const totalCollateral = this.getTotalCollateral();
|
|
1228
1229
|
const marginRequirement = this.getInitialMarginRequirement(enterHighLeverageMode);
|
|
1230
|
+
const marginRatio = Math.max(currentPosition.maxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1229
1231
|
const marginFreedByClosing = perpLiabilityValue
|
|
1230
|
-
.mul(new anchor_1.BN(
|
|
1232
|
+
.mul(new anchor_1.BN(marginRatio))
|
|
1231
1233
|
.div(numericConstants_1.MARGIN_PRECISION);
|
|
1232
1234
|
const marginRequirementAfterClosing = marginRequirement.sub(marginFreedByClosing);
|
|
1233
1235
|
if (marginRequirementAfterClosing.gt(totalCollateral)) {
|
|
@@ -1235,7 +1237,7 @@ class User {
|
|
|
1235
1237
|
}
|
|
1236
1238
|
else {
|
|
1237
1239
|
const freeCollateralAfterClose = totalCollateral.sub(marginRequirementAfterClosing);
|
|
1238
|
-
const buyingPowerAfterClose = this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(targetMarketIndex, freeCollateralAfterClose, numericConstants_1.ZERO);
|
|
1240
|
+
const buyingPowerAfterClose = this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(targetMarketIndex, freeCollateralAfterClose, numericConstants_1.ZERO, currentPosition.maxMarginRatio);
|
|
1239
1241
|
oppositeSideTradeSize = perpLiabilityValue;
|
|
1240
1242
|
tradeSize = buyingPowerAfterClose;
|
|
1241
1243
|
}
|
|
@@ -200,7 +200,7 @@ export declare class DriftClient {
|
|
|
200
200
|
}[], txParams?: TxParams): Promise<TransactionSignature>;
|
|
201
201
|
getUpdateUserCustomMarginRatioIx(marginRatio: number, subAccountId?: number): Promise<TransactionInstruction>;
|
|
202
202
|
getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex: number, marginRatio: number, subAccountId?: number): Promise<TransactionInstruction>;
|
|
203
|
-
updateUserPerpPositionCustomMarginRatio(perpMarketIndex: number, marginRatio: number, subAccountId?: number, txParams?: TxParams): Promise<TransactionSignature>;
|
|
203
|
+
updateUserPerpPositionCustomMarginRatio(perpMarketIndex: number, marginRatio: number, subAccountId?: number, txParams?: TxParams, enterHighLeverageMode?: boolean): Promise<TransactionSignature>;
|
|
204
204
|
getUpdateUserMarginTradingEnabledIx(marginTradingEnabled: boolean, subAccountId?: number, userAccountPublicKey?: PublicKey): Promise<TransactionInstruction>;
|
|
205
205
|
updateUserMarginTradingEnabled(updates: {
|
|
206
206
|
marginTradingEnabled: boolean;
|
|
@@ -414,7 +414,7 @@ export declare class DriftClient {
|
|
|
414
414
|
*/
|
|
415
415
|
openPosition(direction: PositionDirection, amount: BN, marketIndex: number, limitPrice?: BN, subAccountId?: number): Promise<TransactionSignature>;
|
|
416
416
|
sendSignedTx(tx: Transaction | VersionedTransaction, opts?: ConfirmOptions): Promise<TransactionSignature>;
|
|
417
|
-
prepareMarketOrderTxs(orderParams: OptionalOrderParams, userAccountPublicKey: PublicKey, userAccount: UserAccount, makerInfo?: MakerInfo | MakerInfo[], txParams?: TxParams, bracketOrdersParams?: OptionalOrderParams[], referrerInfo?: ReferrerInfo, cancelExistingOrders?: boolean, settlePnl?: boolean): Promise<{
|
|
417
|
+
prepareMarketOrderTxs(orderParams: OptionalOrderParams, userAccountPublicKey: PublicKey, userAccount: UserAccount, makerInfo?: MakerInfo | MakerInfo[], txParams?: TxParams, bracketOrdersParams?: OptionalOrderParams[], referrerInfo?: ReferrerInfo, cancelExistingOrders?: boolean, settlePnl?: boolean, positionMaxLev?: number): Promise<{
|
|
418
418
|
cancelExistingOrdersTx?: Transaction | VersionedTransaction;
|
|
419
419
|
settlePnlTx?: Transaction | VersionedTransaction;
|
|
420
420
|
fillTx?: Transaction | VersionedTransaction;
|
|
@@ -483,6 +483,7 @@ export declare class DriftClient {
|
|
|
483
483
|
placeOrdersTx: anchor.web3.Transaction | anchor.web3.VersionedTransaction;
|
|
484
484
|
}>;
|
|
485
485
|
getPlaceOrdersIx(params: OptionalOrderParams[], subAccountId?: number): Promise<TransactionInstruction>;
|
|
486
|
+
getPlaceOrdersAndSetPositionMaxLevIx(params: OptionalOrderParams[], positionMaxLev: number, subAccountId?: number): Promise<TransactionInstruction[]>;
|
|
486
487
|
fillPerpOrder(userAccountPublicKey: PublicKey, user: UserAccount, order?: Pick<Order, 'marketIndex' | 'orderId'>, makerInfo?: MakerInfo | MakerInfo[], referrerInfo?: ReferrerInfo, txParams?: TxParams, fillerSubAccountId?: number, fillerAuthority?: PublicKey, hasBuilderFee?: boolean): Promise<TransactionSignature>;
|
|
487
488
|
getFillPerpOrderIx(userAccountPublicKey: PublicKey, userAccount: UserAccount, order: Pick<Order, 'marketIndex' | 'orderId'>, makerInfo?: MakerInfo | MakerInfo[], referrerInfo?: ReferrerInfo, fillerSubAccountId?: number, isSignedMsg?: boolean, fillerAuthority?: PublicKey, hasBuilderFee?: boolean): Promise<TransactionInstruction>;
|
|
488
489
|
getRevertFillIx(fillerPublicKey?: PublicKey): Promise<TransactionInstruction>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driftClient.d.ts","sourceRoot":"","sources":["../../src/driftClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"driftClient.d.ts","sourceRoot":"","sources":["../../src/driftClient.ts"],"names":[],"mappings":"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"}
|
package/lib/node/driftClient.js
CHANGED
|
@@ -962,8 +962,8 @@ class DriftClient {
|
|
|
962
962
|
return ix;
|
|
963
963
|
}
|
|
964
964
|
async getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex, marginRatio, subAccountId = 0) {
|
|
965
|
-
const userAccountPublicKey = (0, pda_1.getUserAccountPublicKeySync)(this.program.programId, this.
|
|
966
|
-
await this.addUser(subAccountId, this.
|
|
965
|
+
const userAccountPublicKey = (0, pda_1.getUserAccountPublicKeySync)(this.program.programId, this.authority, subAccountId);
|
|
966
|
+
await this.addUser(subAccountId, this.authority);
|
|
967
967
|
const ix = this.program.instruction.updateUserPerpPositionCustomMarginRatio(subAccountId, perpMarketIndex, marginRatio, {
|
|
968
968
|
accounts: {
|
|
969
969
|
user: userAccountPublicKey,
|
|
@@ -972,9 +972,15 @@ class DriftClient {
|
|
|
972
972
|
});
|
|
973
973
|
return ix;
|
|
974
974
|
}
|
|
975
|
-
async updateUserPerpPositionCustomMarginRatio(perpMarketIndex, marginRatio, subAccountId = 0, txParams) {
|
|
976
|
-
const
|
|
977
|
-
|
|
975
|
+
async updateUserPerpPositionCustomMarginRatio(perpMarketIndex, marginRatio, subAccountId = 0, txParams, enterHighLeverageMode) {
|
|
976
|
+
const ixs = [];
|
|
977
|
+
if (enterHighLeverageMode) {
|
|
978
|
+
const enableIx = await this.getEnableHighLeverageModeIx(subAccountId);
|
|
979
|
+
ixs.push(enableIx);
|
|
980
|
+
}
|
|
981
|
+
const updateIx = await this.getUpdateUserPerpPositionCustomMarginRatioIx(perpMarketIndex, marginRatio, subAccountId);
|
|
982
|
+
ixs.push(updateIx);
|
|
983
|
+
const tx = await this.buildTransaction(ixs, txParams !== null && txParams !== void 0 ? txParams : this.txParams);
|
|
978
984
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
979
985
|
return txSig;
|
|
980
986
|
}
|
|
@@ -2232,7 +2238,7 @@ class DriftClient {
|
|
|
2232
2238
|
const { txSig } = await this.sendTransaction(tx, undefined, opts !== null && opts !== void 0 ? opts : this.opts, true);
|
|
2233
2239
|
return txSig;
|
|
2234
2240
|
}
|
|
2235
|
-
async prepareMarketOrderTxs(orderParams, userAccountPublicKey, userAccount, makerInfo, txParams, bracketOrdersParams = new Array(), referrerInfo, cancelExistingOrders, settlePnl) {
|
|
2241
|
+
async prepareMarketOrderTxs(orderParams, userAccountPublicKey, userAccount, makerInfo, txParams, bracketOrdersParams = new Array(), referrerInfo, cancelExistingOrders, settlePnl, positionMaxLev) {
|
|
2236
2242
|
const marketIndex = orderParams.marketIndex;
|
|
2237
2243
|
const orderId = userAccount.nextOrderId;
|
|
2238
2244
|
const ixPromisesForTxs = {
|
|
@@ -2242,7 +2248,10 @@ class DriftClient {
|
|
|
2242
2248
|
marketOrderTx: undefined,
|
|
2243
2249
|
};
|
|
2244
2250
|
const txKeys = Object.keys(ixPromisesForTxs);
|
|
2245
|
-
|
|
2251
|
+
const marketOrderTxIxs = positionMaxLev
|
|
2252
|
+
? this.getPlaceOrdersAndSetPositionMaxLevIx([orderParams, ...bracketOrdersParams], positionMaxLev, userAccount.subAccountId)
|
|
2253
|
+
: this.getPlaceOrdersIx([orderParams, ...bracketOrdersParams], userAccount.subAccountId);
|
|
2254
|
+
ixPromisesForTxs.marketOrderTx = marketOrderTxIxs;
|
|
2246
2255
|
/* Cancel open orders in market if requested */
|
|
2247
2256
|
if (cancelExistingOrders && (0, types_1.isVariant)(orderParams.marketType, 'perp')) {
|
|
2248
2257
|
ixPromisesForTxs.cancelExistingOrdersTx = this.getCancelOrdersIx(orderParams.marketType, orderParams.marketIndex, null, userAccount.subAccountId);
|
|
@@ -2567,6 +2576,51 @@ class DriftClient {
|
|
|
2567
2576
|
remainingAccounts,
|
|
2568
2577
|
});
|
|
2569
2578
|
}
|
|
2579
|
+
async getPlaceOrdersAndSetPositionMaxLevIx(params, positionMaxLev, subAccountId) {
|
|
2580
|
+
const user = await this.getUserAccountPublicKey(subAccountId);
|
|
2581
|
+
const readablePerpMarketIndex = [];
|
|
2582
|
+
const readableSpotMarketIndexes = [];
|
|
2583
|
+
for (const param of params) {
|
|
2584
|
+
if (!param.marketType) {
|
|
2585
|
+
throw new Error('must set param.marketType');
|
|
2586
|
+
}
|
|
2587
|
+
if ((0, types_1.isVariant)(param.marketType, 'perp')) {
|
|
2588
|
+
readablePerpMarketIndex.push(param.marketIndex);
|
|
2589
|
+
}
|
|
2590
|
+
else {
|
|
2591
|
+
readableSpotMarketIndexes.push(param.marketIndex);
|
|
2592
|
+
}
|
|
2593
|
+
}
|
|
2594
|
+
const remainingAccounts = this.getRemainingAccounts({
|
|
2595
|
+
userAccounts: [this.getUserAccount(subAccountId)],
|
|
2596
|
+
readablePerpMarketIndex,
|
|
2597
|
+
readableSpotMarketIndexes,
|
|
2598
|
+
useMarketLastSlotCache: true,
|
|
2599
|
+
});
|
|
2600
|
+
for (const param of params) {
|
|
2601
|
+
if ((0, orderParams_1.isUpdateHighLeverageMode)(param.bitFlags)) {
|
|
2602
|
+
remainingAccounts.push({
|
|
2603
|
+
pubkey: (0, pda_1.getHighLeverageModeConfigPublicKey)(this.program.programId),
|
|
2604
|
+
isWritable: true,
|
|
2605
|
+
isSigner: false,
|
|
2606
|
+
});
|
|
2607
|
+
}
|
|
2608
|
+
}
|
|
2609
|
+
const formattedParams = params.map((item) => (0, orderParams_1.getOrderParams)(item));
|
|
2610
|
+
const placeOrdersIxs = await this.program.instruction.placeOrders(formattedParams, {
|
|
2611
|
+
accounts: {
|
|
2612
|
+
state: await this.getStatePublicKey(),
|
|
2613
|
+
user,
|
|
2614
|
+
userStats: this.getUserStatsAccountPublicKey(),
|
|
2615
|
+
authority: this.wallet.publicKey,
|
|
2616
|
+
},
|
|
2617
|
+
remainingAccounts,
|
|
2618
|
+
});
|
|
2619
|
+
const marginRatio = Math.floor((1 / positionMaxLev) * numericConstants_1.MARGIN_PRECISION.toNumber());
|
|
2620
|
+
// TODO: Handle multiple markets?
|
|
2621
|
+
const setPositionMaxLevIxs = await this.getUpdateUserPerpPositionCustomMarginRatioIx(readablePerpMarketIndex[0], marginRatio, subAccountId);
|
|
2622
|
+
return [placeOrdersIxs, setPositionMaxLevIxs];
|
|
2623
|
+
}
|
|
2570
2624
|
async fillPerpOrder(userAccountPublicKey, user, order, makerInfo, referrerInfo, txParams, fillerSubAccountId, fillerAuthority, hasBuilderFee) {
|
|
2571
2625
|
const { txSig } = await this.sendTransaction(await this.buildTransaction(await this.getFillPerpOrderIx(userAccountPublicKey, user, order, makerInfo, referrerInfo, fillerSubAccountId, undefined, fillerAuthority, hasBuilderFee), txParams), [], this.opts);
|
|
2572
2626
|
return txSig;
|
|
@@ -3574,11 +3628,6 @@ class DriftClient {
|
|
|
3574
3628
|
isSigner: false,
|
|
3575
3629
|
});
|
|
3576
3630
|
}
|
|
3577
|
-
remainingAccounts.push({
|
|
3578
|
-
pubkey: (0, pda_1.getRevenueShareEscrowAccountPublicKey)(this.program.programId, takerInfo.takerUserAccount.authority),
|
|
3579
|
-
isWritable: true,
|
|
3580
|
-
isSigner: false,
|
|
3581
|
-
});
|
|
3582
3631
|
const takerOrderId = takerInfo.order.orderId;
|
|
3583
3632
|
if ((0, orders_1.hasBuilder)(takerInfo.order)) {
|
|
3584
3633
|
remainingAccounts.push({
|
package/lib/node/idl/drift.json
CHANGED
|
@@ -14031,6 +14031,20 @@
|
|
|
14031
14031
|
"option": "u64"
|
|
14032
14032
|
},
|
|
14033
14033
|
"index": false
|
|
14034
|
+
},
|
|
14035
|
+
{
|
|
14036
|
+
"name": "builderIdx",
|
|
14037
|
+
"type": {
|
|
14038
|
+
"option": "u8"
|
|
14039
|
+
},
|
|
14040
|
+
"index": false
|
|
14041
|
+
},
|
|
14042
|
+
{
|
|
14043
|
+
"name": "builderFee",
|
|
14044
|
+
"type": {
|
|
14045
|
+
"option": "u64"
|
|
14046
|
+
},
|
|
14047
|
+
"index": false
|
|
14034
14048
|
}
|
|
14035
14049
|
]
|
|
14036
14050
|
},
|
package/lib/node/user.d.ts
CHANGED
|
@@ -90,8 +90,8 @@ export declare class User {
|
|
|
90
90
|
* calculates Buying Power = free collateral / initial margin ratio
|
|
91
91
|
* @returns : Precision QUOTE_PRECISION
|
|
92
92
|
*/
|
|
93
|
-
getPerpBuyingPower(marketIndex: number, collateralBuffer?: BN, enterHighLeverageMode?: any): BN;
|
|
94
|
-
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex: number, freeCollateral: BN, baseAssetAmount: BN, enterHighLeverageMode?: any,
|
|
93
|
+
getPerpBuyingPower(marketIndex: number, collateralBuffer?: BN, enterHighLeverageMode?: any, maxMarginRatio?: any): BN;
|
|
94
|
+
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex: number, freeCollateral: BN, baseAssetAmount: BN, enterHighLeverageMode?: any, perpMarketMaxMarginRatio?: any): BN;
|
|
95
95
|
/**
|
|
96
96
|
* calculates Free Collateral = Total collateral - margin requirement
|
|
97
97
|
* @returns : Precision QUOTE_PRECISION
|
|
@@ -271,8 +271,8 @@ export declare class User {
|
|
|
271
271
|
* @returns : Precision PRICE_PRECISION
|
|
272
272
|
*/
|
|
273
273
|
liquidationPriceAfterClose(positionMarketIndex: number, closeQuoteAmount: BN, estimatedEntryPrice?: BN): BN;
|
|
274
|
-
getMarginUSDCRequiredForTrade(targetMarketIndex: number, baseSize: BN, estEntryPrice?: BN): BN;
|
|
275
|
-
getCollateralDepositRequiredForTrade(targetMarketIndex: number, baseSize: BN, collateralIndex: number): BN;
|
|
274
|
+
getMarginUSDCRequiredForTrade(targetMarketIndex: number, baseSize: BN, estEntryPrice?: BN, perpMarketMaxMarginRatio?: number): BN;
|
|
275
|
+
getCollateralDepositRequiredForTrade(targetMarketIndex: number, baseSize: BN, collateralIndex: number, perpMarketMaxMarginRatio?: number): BN;
|
|
276
276
|
/**
|
|
277
277
|
* Separates the max trade size into two parts:
|
|
278
278
|
* - tradeSize: The maximum trade size for target direction
|
|
@@ -282,7 +282,7 @@ export declare class User {
|
|
|
282
282
|
* @param isLp
|
|
283
283
|
* @returns { tradeSize: BN, oppositeSideTradeSize: BN} : Precision QUOTE_PRECISION
|
|
284
284
|
*/
|
|
285
|
-
getMaxTradeSizeUSDCForPerp(targetMarketIndex: number, tradeSide: PositionDirection, isLp?: boolean, enterHighLeverageMode?: any): {
|
|
285
|
+
getMaxTradeSizeUSDCForPerp(targetMarketIndex: number, tradeSide: PositionDirection, isLp?: boolean, enterHighLeverageMode?: any, maxMarginRatio?: any): {
|
|
286
286
|
tradeSize: BN;
|
|
287
287
|
oppositeSideTradeSize: BN;
|
|
288
288
|
};
|
package/lib/node/user.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/user.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/user.ts"],"names":[],"mappings":"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"}
|
package/lib/node/user.js
CHANGED
|
@@ -261,7 +261,7 @@ class User {
|
|
|
261
261
|
* calculates Buying Power = free collateral / initial margin ratio
|
|
262
262
|
* @returns : Precision QUOTE_PRECISION
|
|
263
263
|
*/
|
|
264
|
-
getPerpBuyingPower(marketIndex, collateralBuffer = numericConstants_1.ZERO, enterHighLeverageMode = undefined) {
|
|
264
|
+
getPerpBuyingPower(marketIndex, collateralBuffer = numericConstants_1.ZERO, enterHighLeverageMode = undefined, maxMarginRatio = undefined) {
|
|
265
265
|
const perpPosition = this.getPerpPositionOrEmpty(marketIndex);
|
|
266
266
|
const perpMarket = this.driftClient.getPerpMarketAccount(marketIndex);
|
|
267
267
|
const oraclePriceData = this.getOracleDataForPerpMarket(marketIndex);
|
|
@@ -269,12 +269,11 @@ class User {
|
|
|
269
269
|
? (0, margin_2.calculateWorstCaseBaseAssetAmount)(perpPosition, perpMarket, oraclePriceData.price)
|
|
270
270
|
: numericConstants_1.ZERO;
|
|
271
271
|
const freeCollateral = this.getFreeCollateral('Initial', enterHighLeverageMode).sub(collateralBuffer);
|
|
272
|
-
return this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, worstCaseBaseAssetAmount, enterHighLeverageMode, perpPosition);
|
|
272
|
+
return this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, worstCaseBaseAssetAmount, enterHighLeverageMode, maxMarginRatio || perpPosition.maxMarginRatio);
|
|
273
273
|
}
|
|
274
|
-
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, baseAssetAmount, enterHighLeverageMode = undefined,
|
|
275
|
-
|
|
276
|
-
const
|
|
277
|
-
const marginRatio = (0, market_1.calculateMarketMarginRatio)(this.driftClient.getPerpMarketAccount(marketIndex), baseAssetAmount, 'Initial', userCustomMargin, enterHighLeverageMode || this.isHighLeverageMode('Initial'));
|
|
274
|
+
getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(marketIndex, freeCollateral, baseAssetAmount, enterHighLeverageMode = undefined, perpMarketMaxMarginRatio = undefined) {
|
|
275
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
276
|
+
const marginRatio = (0, market_1.calculateMarketMarginRatio)(this.driftClient.getPerpMarketAccount(marketIndex), baseAssetAmount, 'Initial', maxMarginRatio, enterHighLeverageMode || this.isHighLeverageMode('Initial'));
|
|
278
277
|
return freeCollateral.mul(numericConstants_1.MARGIN_PRECISION).div(new anchor_1.BN(marginRatio));
|
|
279
278
|
}
|
|
280
279
|
/**
|
|
@@ -600,7 +599,7 @@ class User {
|
|
|
600
599
|
liabilityValue = (0, margin_1.calculatePerpLiabilityValue)(baseAssetAmount, valuationPrice, (0, types_1.isVariant)(market.contractType, 'prediction'));
|
|
601
600
|
}
|
|
602
601
|
if (marginCategory) {
|
|
603
|
-
const userCustomMargin = this.getUserAccount().maxMarginRatio;
|
|
602
|
+
const userCustomMargin = Math.max(perpPosition.maxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
604
603
|
let marginRatio = new anchor_1.BN((0, market_1.calculateMarketMarginRatio)(market, baseAssetAmount.abs(), marginCategory, enteringHighLeverage === false
|
|
605
604
|
? Math.max(market.marginRatioInitial, userCustomMargin)
|
|
606
605
|
: userCustomMargin, this.isHighLeverageMode(marginCategory) ||
|
|
@@ -1168,11 +1167,13 @@ class User {
|
|
|
1168
1167
|
.neg();
|
|
1169
1168
|
return this.liquidationPrice(positionMarketIndex, closeBaseAmount, estimatedEntryPrice);
|
|
1170
1169
|
}
|
|
1171
|
-
getMarginUSDCRequiredForTrade(targetMarketIndex, baseSize, estEntryPrice) {
|
|
1172
|
-
|
|
1170
|
+
getMarginUSDCRequiredForTrade(targetMarketIndex, baseSize, estEntryPrice, perpMarketMaxMarginRatio) {
|
|
1171
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1172
|
+
return (0, margin_2.calculateMarginUSDCRequiredForTrade)(this.driftClient, targetMarketIndex, baseSize, maxMarginRatio, undefined, estEntryPrice);
|
|
1173
1173
|
}
|
|
1174
|
-
getCollateralDepositRequiredForTrade(targetMarketIndex, baseSize, collateralIndex) {
|
|
1175
|
-
|
|
1174
|
+
getCollateralDepositRequiredForTrade(targetMarketIndex, baseSize, collateralIndex, perpMarketMaxMarginRatio) {
|
|
1175
|
+
const maxMarginRatio = Math.max(perpMarketMaxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1176
|
+
return (0, margin_2.calculateCollateralDepositRequiredForTrade)(this.driftClient, targetMarketIndex, baseSize, collateralIndex, maxMarginRatio, false // assume user cant be high leverage if they havent created user account ?
|
|
1176
1177
|
);
|
|
1177
1178
|
}
|
|
1178
1179
|
/**
|
|
@@ -1184,7 +1185,7 @@ class User {
|
|
|
1184
1185
|
* @param isLp
|
|
1185
1186
|
* @returns { tradeSize: BN, oppositeSideTradeSize: BN} : Precision QUOTE_PRECISION
|
|
1186
1187
|
*/
|
|
1187
|
-
getMaxTradeSizeUSDCForPerp(targetMarketIndex, tradeSide, isLp = false, enterHighLeverageMode = undefined) {
|
|
1188
|
+
getMaxTradeSizeUSDCForPerp(targetMarketIndex, tradeSide, isLp = false, enterHighLeverageMode = undefined, maxMarginRatio = undefined) {
|
|
1188
1189
|
let tradeSize = numericConstants_1.ZERO;
|
|
1189
1190
|
let oppositeSideTradeSize = numericConstants_1.ZERO;
|
|
1190
1191
|
const currentPosition = this.getPerpPositionOrEmpty(targetMarketIndex);
|
|
@@ -1206,7 +1207,7 @@ class User {
|
|
|
1206
1207
|
const oppositeSizeLiabilityValue = targetingSameSide
|
|
1207
1208
|
? numericConstants_1.ZERO
|
|
1208
1209
|
: (0, margin_1.calculatePerpLiabilityValue)(currentPosition.baseAssetAmount, oracleData.price, (0, types_1.isVariant)(marketAccount.contractType, 'prediction'));
|
|
1209
|
-
const maxPositionSize = this.getPerpBuyingPower(targetMarketIndex, lpBuffer, enterHighLeverageMode);
|
|
1210
|
+
const maxPositionSize = this.getPerpBuyingPower(targetMarketIndex, lpBuffer, enterHighLeverageMode, maxMarginRatio);
|
|
1210
1211
|
if (maxPositionSize.gte(numericConstants_1.ZERO)) {
|
|
1211
1212
|
if (oppositeSizeLiabilityValue.eq(numericConstants_1.ZERO)) {
|
|
1212
1213
|
// case 1 : Regular trade where current total position less than max, and no opposite position to account for
|
|
@@ -1226,8 +1227,9 @@ class User {
|
|
|
1226
1227
|
const perpLiabilityValue = (0, margin_1.calculatePerpLiabilityValue)(currentPosition.baseAssetAmount, oracleData.price, (0, types_1.isVariant)(market.contractType, 'prediction'));
|
|
1227
1228
|
const totalCollateral = this.getTotalCollateral();
|
|
1228
1229
|
const marginRequirement = this.getInitialMarginRequirement(enterHighLeverageMode);
|
|
1230
|
+
const marginRatio = Math.max(currentPosition.maxMarginRatio, this.getUserAccount().maxMarginRatio);
|
|
1229
1231
|
const marginFreedByClosing = perpLiabilityValue
|
|
1230
|
-
.mul(new anchor_1.BN(
|
|
1232
|
+
.mul(new anchor_1.BN(marginRatio))
|
|
1231
1233
|
.div(numericConstants_1.MARGIN_PRECISION);
|
|
1232
1234
|
const marginRequirementAfterClosing = marginRequirement.sub(marginFreedByClosing);
|
|
1233
1235
|
if (marginRequirementAfterClosing.gt(totalCollateral)) {
|
|
@@ -1235,7 +1237,7 @@ class User {
|
|
|
1235
1237
|
}
|
|
1236
1238
|
else {
|
|
1237
1239
|
const freeCollateralAfterClose = totalCollateral.sub(marginRequirementAfterClosing);
|
|
1238
|
-
const buyingPowerAfterClose = this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(targetMarketIndex, freeCollateralAfterClose, numericConstants_1.ZERO);
|
|
1240
|
+
const buyingPowerAfterClose = this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(targetMarketIndex, freeCollateralAfterClose, numericConstants_1.ZERO, currentPosition.maxMarginRatio);
|
|
1239
1241
|
oppositeSideTradeSize = perpLiabilityValue;
|
|
1240
1242
|
tradeSize = buyingPowerAfterClose;
|
|
1241
1243
|
}
|
package/package.json
CHANGED
package/src/driftClient.ts
CHANGED
|
@@ -126,6 +126,7 @@ import { TxSender, TxSigAndSlot } from './tx/types';
|
|
|
126
126
|
import {
|
|
127
127
|
BASE_PRECISION,
|
|
128
128
|
GOV_SPOT_MARKET_INDEX,
|
|
129
|
+
MARGIN_PRECISION,
|
|
129
130
|
ONE,
|
|
130
131
|
PERCENTAGE_PRECISION,
|
|
131
132
|
PRICE_PRECISION,
|
|
@@ -1723,11 +1724,11 @@ export class DriftClient {
|
|
|
1723
1724
|
): Promise<TransactionInstruction> {
|
|
1724
1725
|
const userAccountPublicKey = getUserAccountPublicKeySync(
|
|
1725
1726
|
this.program.programId,
|
|
1726
|
-
this.
|
|
1727
|
+
this.authority,
|
|
1727
1728
|
subAccountId
|
|
1728
1729
|
);
|
|
1729
1730
|
|
|
1730
|
-
await this.addUser(subAccountId, this.
|
|
1731
|
+
await this.addUser(subAccountId, this.authority);
|
|
1731
1732
|
|
|
1732
1733
|
const ix = this.program.instruction.updateUserPerpPositionCustomMarginRatio(
|
|
1733
1734
|
subAccountId,
|
|
@@ -1748,14 +1749,21 @@ export class DriftClient {
|
|
|
1748
1749
|
perpMarketIndex: number,
|
|
1749
1750
|
marginRatio: number,
|
|
1750
1751
|
subAccountId = 0,
|
|
1751
|
-
txParams?: TxParams
|
|
1752
|
+
txParams?: TxParams,
|
|
1753
|
+
enterHighLeverageMode?: boolean
|
|
1752
1754
|
): Promise<TransactionSignature> {
|
|
1753
|
-
const
|
|
1755
|
+
const ixs = [];
|
|
1756
|
+
if (enterHighLeverageMode) {
|
|
1757
|
+
const enableIx = await this.getEnableHighLeverageModeIx(subAccountId);
|
|
1758
|
+
ixs.push(enableIx);
|
|
1759
|
+
}
|
|
1760
|
+
const updateIx = await this.getUpdateUserPerpPositionCustomMarginRatioIx(
|
|
1754
1761
|
perpMarketIndex,
|
|
1755
1762
|
marginRatio,
|
|
1756
1763
|
subAccountId
|
|
1757
1764
|
);
|
|
1758
|
-
|
|
1765
|
+
ixs.push(updateIx);
|
|
1766
|
+
const tx = await this.buildTransaction(ixs, txParams ?? this.txParams);
|
|
1759
1767
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1760
1768
|
return txSig;
|
|
1761
1769
|
}
|
|
@@ -4292,7 +4300,8 @@ export class DriftClient {
|
|
|
4292
4300
|
bracketOrdersParams = new Array<OptionalOrderParams>(),
|
|
4293
4301
|
referrerInfo?: ReferrerInfo,
|
|
4294
4302
|
cancelExistingOrders?: boolean,
|
|
4295
|
-
settlePnl?: boolean
|
|
4303
|
+
settlePnl?: boolean,
|
|
4304
|
+
positionMaxLev?: number
|
|
4296
4305
|
): Promise<{
|
|
4297
4306
|
cancelExistingOrdersTx?: Transaction | VersionedTransaction;
|
|
4298
4307
|
settlePnlTx?: Transaction | VersionedTransaction;
|
|
@@ -4308,7 +4317,10 @@ export class DriftClient {
|
|
|
4308
4317
|
const marketIndex = orderParams.marketIndex;
|
|
4309
4318
|
const orderId = userAccount.nextOrderId;
|
|
4310
4319
|
|
|
4311
|
-
const ixPromisesForTxs: Record<
|
|
4320
|
+
const ixPromisesForTxs: Record<
|
|
4321
|
+
TxKeys,
|
|
4322
|
+
Promise<TransactionInstruction | TransactionInstruction[]>
|
|
4323
|
+
> = {
|
|
4312
4324
|
cancelExistingOrdersTx: undefined,
|
|
4313
4325
|
settlePnlTx: undefined,
|
|
4314
4326
|
fillTx: undefined,
|
|
@@ -4317,10 +4329,18 @@ export class DriftClient {
|
|
|
4317
4329
|
|
|
4318
4330
|
const txKeys = Object.keys(ixPromisesForTxs);
|
|
4319
4331
|
|
|
4320
|
-
|
|
4321
|
-
|
|
4322
|
-
|
|
4323
|
-
|
|
4332
|
+
const marketOrderTxIxs = positionMaxLev
|
|
4333
|
+
? this.getPlaceOrdersAndSetPositionMaxLevIx(
|
|
4334
|
+
[orderParams, ...bracketOrdersParams],
|
|
4335
|
+
positionMaxLev,
|
|
4336
|
+
userAccount.subAccountId
|
|
4337
|
+
)
|
|
4338
|
+
: this.getPlaceOrdersIx(
|
|
4339
|
+
[orderParams, ...bracketOrdersParams],
|
|
4340
|
+
userAccount.subAccountId
|
|
4341
|
+
);
|
|
4342
|
+
|
|
4343
|
+
ixPromisesForTxs.marketOrderTx = marketOrderTxIxs;
|
|
4324
4344
|
|
|
4325
4345
|
/* Cancel open orders in market if requested */
|
|
4326
4346
|
if (cancelExistingOrders && isVariant(orderParams.marketType, 'perp')) {
|
|
@@ -4361,7 +4381,10 @@ export class DriftClient {
|
|
|
4361
4381
|
const ixsMap = ixs.reduce((acc, ix, i) => {
|
|
4362
4382
|
acc[txKeys[i]] = ix;
|
|
4363
4383
|
return acc;
|
|
4364
|
-
}, {}) as MappedRecord<
|
|
4384
|
+
}, {}) as MappedRecord<
|
|
4385
|
+
typeof ixPromisesForTxs,
|
|
4386
|
+
TransactionInstruction | TransactionInstruction[]
|
|
4387
|
+
>;
|
|
4365
4388
|
|
|
4366
4389
|
const txsMap = (await this.buildTransactionsMap(
|
|
4367
4390
|
ixsMap,
|
|
@@ -4945,6 +4968,73 @@ export class DriftClient {
|
|
|
4945
4968
|
});
|
|
4946
4969
|
}
|
|
4947
4970
|
|
|
4971
|
+
public async getPlaceOrdersAndSetPositionMaxLevIx(
|
|
4972
|
+
params: OptionalOrderParams[],
|
|
4973
|
+
positionMaxLev: number,
|
|
4974
|
+
subAccountId?: number
|
|
4975
|
+
): Promise<TransactionInstruction[]> {
|
|
4976
|
+
const user = await this.getUserAccountPublicKey(subAccountId);
|
|
4977
|
+
|
|
4978
|
+
const readablePerpMarketIndex: number[] = [];
|
|
4979
|
+
const readableSpotMarketIndexes: number[] = [];
|
|
4980
|
+
for (const param of params) {
|
|
4981
|
+
if (!param.marketType) {
|
|
4982
|
+
throw new Error('must set param.marketType');
|
|
4983
|
+
}
|
|
4984
|
+
if (isVariant(param.marketType, 'perp')) {
|
|
4985
|
+
readablePerpMarketIndex.push(param.marketIndex);
|
|
4986
|
+
} else {
|
|
4987
|
+
readableSpotMarketIndexes.push(param.marketIndex);
|
|
4988
|
+
}
|
|
4989
|
+
}
|
|
4990
|
+
|
|
4991
|
+
const remainingAccounts = this.getRemainingAccounts({
|
|
4992
|
+
userAccounts: [this.getUserAccount(subAccountId)],
|
|
4993
|
+
readablePerpMarketIndex,
|
|
4994
|
+
readableSpotMarketIndexes,
|
|
4995
|
+
useMarketLastSlotCache: true,
|
|
4996
|
+
});
|
|
4997
|
+
|
|
4998
|
+
for (const param of params) {
|
|
4999
|
+
if (isUpdateHighLeverageMode(param.bitFlags)) {
|
|
5000
|
+
remainingAccounts.push({
|
|
5001
|
+
pubkey: getHighLeverageModeConfigPublicKey(this.program.programId),
|
|
5002
|
+
isWritable: true,
|
|
5003
|
+
isSigner: false,
|
|
5004
|
+
});
|
|
5005
|
+
}
|
|
5006
|
+
}
|
|
5007
|
+
|
|
5008
|
+
const formattedParams = params.map((item) => getOrderParams(item));
|
|
5009
|
+
|
|
5010
|
+
const placeOrdersIxs = await this.program.instruction.placeOrders(
|
|
5011
|
+
formattedParams,
|
|
5012
|
+
{
|
|
5013
|
+
accounts: {
|
|
5014
|
+
state: await this.getStatePublicKey(),
|
|
5015
|
+
user,
|
|
5016
|
+
userStats: this.getUserStatsAccountPublicKey(),
|
|
5017
|
+
authority: this.wallet.publicKey,
|
|
5018
|
+
},
|
|
5019
|
+
remainingAccounts,
|
|
5020
|
+
}
|
|
5021
|
+
);
|
|
5022
|
+
|
|
5023
|
+
const marginRatio = Math.floor(
|
|
5024
|
+
(1 / positionMaxLev) * MARGIN_PRECISION.toNumber()
|
|
5025
|
+
);
|
|
5026
|
+
|
|
5027
|
+
// TODO: Handle multiple markets?
|
|
5028
|
+
const setPositionMaxLevIxs =
|
|
5029
|
+
await this.getUpdateUserPerpPositionCustomMarginRatioIx(
|
|
5030
|
+
readablePerpMarketIndex[0],
|
|
5031
|
+
marginRatio,
|
|
5032
|
+
subAccountId
|
|
5033
|
+
);
|
|
5034
|
+
|
|
5035
|
+
return [placeOrdersIxs, setPositionMaxLevIxs];
|
|
5036
|
+
}
|
|
5037
|
+
|
|
4948
5038
|
public async fillPerpOrder(
|
|
4949
5039
|
userAccountPublicKey: PublicKey,
|
|
4950
5040
|
user: UserAccount,
|
|
@@ -6717,15 +6807,6 @@ export class DriftClient {
|
|
|
6717
6807
|
});
|
|
6718
6808
|
}
|
|
6719
6809
|
|
|
6720
|
-
remainingAccounts.push({
|
|
6721
|
-
pubkey: getRevenueShareEscrowAccountPublicKey(
|
|
6722
|
-
this.program.programId,
|
|
6723
|
-
takerInfo.takerUserAccount.authority
|
|
6724
|
-
),
|
|
6725
|
-
isWritable: true,
|
|
6726
|
-
isSigner: false,
|
|
6727
|
-
});
|
|
6728
|
-
|
|
6729
6810
|
const takerOrderId = takerInfo.order.orderId;
|
|
6730
6811
|
if (hasBuilder(takerInfo.order)) {
|
|
6731
6812
|
remainingAccounts.push({
|
package/src/idl/drift.json
CHANGED
|
@@ -14031,6 +14031,20 @@
|
|
|
14031
14031
|
"option": "u64"
|
|
14032
14032
|
},
|
|
14033
14033
|
"index": false
|
|
14034
|
+
},
|
|
14035
|
+
{
|
|
14036
|
+
"name": "builderIdx",
|
|
14037
|
+
"type": {
|
|
14038
|
+
"option": "u8"
|
|
14039
|
+
},
|
|
14040
|
+
"index": false
|
|
14041
|
+
},
|
|
14042
|
+
{
|
|
14043
|
+
"name": "builderFee",
|
|
14044
|
+
"type": {
|
|
14045
|
+
"option": "u64"
|
|
14046
|
+
},
|
|
14047
|
+
"index": false
|
|
14034
14048
|
}
|
|
14035
14049
|
]
|
|
14036
14050
|
},
|
|
@@ -16700,4 +16714,4 @@
|
|
|
16700
16714
|
"metadata": {
|
|
16701
16715
|
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
|
|
16702
16716
|
}
|
|
16703
|
-
}
|
|
16717
|
+
}
|
package/src/user.ts
CHANGED
|
@@ -449,7 +449,8 @@ export class User {
|
|
|
449
449
|
public getPerpBuyingPower(
|
|
450
450
|
marketIndex: number,
|
|
451
451
|
collateralBuffer = ZERO,
|
|
452
|
-
enterHighLeverageMode = undefined
|
|
452
|
+
enterHighLeverageMode = undefined,
|
|
453
|
+
maxMarginRatio = undefined
|
|
453
454
|
): BN {
|
|
454
455
|
const perpPosition = this.getPerpPositionOrEmpty(marketIndex);
|
|
455
456
|
|
|
@@ -473,7 +474,7 @@ export class User {
|
|
|
473
474
|
freeCollateral,
|
|
474
475
|
worstCaseBaseAssetAmount,
|
|
475
476
|
enterHighLeverageMode,
|
|
476
|
-
perpPosition
|
|
477
|
+
maxMarginRatio || perpPosition.maxMarginRatio
|
|
477
478
|
);
|
|
478
479
|
}
|
|
479
480
|
|
|
@@ -482,17 +483,17 @@ export class User {
|
|
|
482
483
|
freeCollateral: BN,
|
|
483
484
|
baseAssetAmount: BN,
|
|
484
485
|
enterHighLeverageMode = undefined,
|
|
485
|
-
|
|
486
|
+
perpMarketMaxMarginRatio = undefined
|
|
486
487
|
): BN {
|
|
487
|
-
const
|
|
488
|
-
|
|
488
|
+
const maxMarginRatio = Math.max(
|
|
489
|
+
perpMarketMaxMarginRatio,
|
|
489
490
|
this.getUserAccount().maxMarginRatio
|
|
490
491
|
);
|
|
491
492
|
const marginRatio = calculateMarketMarginRatio(
|
|
492
493
|
this.driftClient.getPerpMarketAccount(marketIndex),
|
|
493
494
|
baseAssetAmount,
|
|
494
495
|
'Initial',
|
|
495
|
-
|
|
496
|
+
maxMarginRatio,
|
|
496
497
|
enterHighLeverageMode || this.isHighLeverageMode('Initial')
|
|
497
498
|
);
|
|
498
499
|
|
|
@@ -1247,7 +1248,10 @@ export class User {
|
|
|
1247
1248
|
}
|
|
1248
1249
|
|
|
1249
1250
|
if (marginCategory) {
|
|
1250
|
-
const userCustomMargin =
|
|
1251
|
+
const userCustomMargin = Math.max(
|
|
1252
|
+
perpPosition.maxMarginRatio,
|
|
1253
|
+
this.getUserAccount().maxMarginRatio
|
|
1254
|
+
);
|
|
1251
1255
|
let marginRatio = new BN(
|
|
1252
1256
|
calculateMarketMarginRatio(
|
|
1253
1257
|
market,
|
|
@@ -2345,13 +2349,18 @@ export class User {
|
|
|
2345
2349
|
public getMarginUSDCRequiredForTrade(
|
|
2346
2350
|
targetMarketIndex: number,
|
|
2347
2351
|
baseSize: BN,
|
|
2348
|
-
estEntryPrice?: BN
|
|
2352
|
+
estEntryPrice?: BN,
|
|
2353
|
+
perpMarketMaxMarginRatio?: number
|
|
2349
2354
|
): BN {
|
|
2355
|
+
const maxMarginRatio = Math.max(
|
|
2356
|
+
perpMarketMaxMarginRatio,
|
|
2357
|
+
this.getUserAccount().maxMarginRatio
|
|
2358
|
+
);
|
|
2350
2359
|
return calculateMarginUSDCRequiredForTrade(
|
|
2351
2360
|
this.driftClient,
|
|
2352
2361
|
targetMarketIndex,
|
|
2353
2362
|
baseSize,
|
|
2354
|
-
|
|
2363
|
+
maxMarginRatio,
|
|
2355
2364
|
undefined,
|
|
2356
2365
|
estEntryPrice
|
|
2357
2366
|
);
|
|
@@ -2360,14 +2369,19 @@ export class User {
|
|
|
2360
2369
|
public getCollateralDepositRequiredForTrade(
|
|
2361
2370
|
targetMarketIndex: number,
|
|
2362
2371
|
baseSize: BN,
|
|
2363
|
-
collateralIndex: number
|
|
2372
|
+
collateralIndex: number,
|
|
2373
|
+
perpMarketMaxMarginRatio?: number
|
|
2364
2374
|
): BN {
|
|
2375
|
+
const maxMarginRatio = Math.max(
|
|
2376
|
+
perpMarketMaxMarginRatio,
|
|
2377
|
+
this.getUserAccount().maxMarginRatio
|
|
2378
|
+
);
|
|
2365
2379
|
return calculateCollateralDepositRequiredForTrade(
|
|
2366
2380
|
this.driftClient,
|
|
2367
2381
|
targetMarketIndex,
|
|
2368
2382
|
baseSize,
|
|
2369
2383
|
collateralIndex,
|
|
2370
|
-
|
|
2384
|
+
maxMarginRatio,
|
|
2371
2385
|
false // assume user cant be high leverage if they havent created user account ?
|
|
2372
2386
|
);
|
|
2373
2387
|
}
|
|
@@ -2385,7 +2399,8 @@ export class User {
|
|
|
2385
2399
|
targetMarketIndex: number,
|
|
2386
2400
|
tradeSide: PositionDirection,
|
|
2387
2401
|
isLp = false,
|
|
2388
|
-
enterHighLeverageMode = undefined
|
|
2402
|
+
enterHighLeverageMode = undefined,
|
|
2403
|
+
maxMarginRatio = undefined
|
|
2389
2404
|
): { tradeSize: BN; oppositeSideTradeSize: BN } {
|
|
2390
2405
|
let tradeSize = ZERO;
|
|
2391
2406
|
let oppositeSideTradeSize = ZERO;
|
|
@@ -2424,7 +2439,8 @@ export class User {
|
|
|
2424
2439
|
const maxPositionSize = this.getPerpBuyingPower(
|
|
2425
2440
|
targetMarketIndex,
|
|
2426
2441
|
lpBuffer,
|
|
2427
|
-
enterHighLeverageMode
|
|
2442
|
+
enterHighLeverageMode,
|
|
2443
|
+
maxMarginRatio
|
|
2428
2444
|
);
|
|
2429
2445
|
|
|
2430
2446
|
if (maxPositionSize.gte(ZERO)) {
|
|
@@ -2451,8 +2467,12 @@ export class User {
|
|
|
2451
2467
|
const marginRequirement = this.getInitialMarginRequirement(
|
|
2452
2468
|
enterHighLeverageMode
|
|
2453
2469
|
);
|
|
2470
|
+
const marginRatio = Math.max(
|
|
2471
|
+
currentPosition.maxMarginRatio,
|
|
2472
|
+
this.getUserAccount().maxMarginRatio
|
|
2473
|
+
);
|
|
2454
2474
|
const marginFreedByClosing = perpLiabilityValue
|
|
2455
|
-
.mul(new BN(
|
|
2475
|
+
.mul(new BN(marginRatio))
|
|
2456
2476
|
.div(MARGIN_PRECISION);
|
|
2457
2477
|
const marginRequirementAfterClosing =
|
|
2458
2478
|
marginRequirement.sub(marginFreedByClosing);
|
|
@@ -2468,7 +2488,8 @@ export class User {
|
|
|
2468
2488
|
this.getPerpBuyingPowerFromFreeCollateralAndBaseAssetAmount(
|
|
2469
2489
|
targetMarketIndex,
|
|
2470
2490
|
freeCollateralAfterClose,
|
|
2471
|
-
ZERO
|
|
2491
|
+
ZERO,
|
|
2492
|
+
currentPosition.maxMarginRatio
|
|
2472
2493
|
);
|
|
2473
2494
|
oppositeSideTradeSize = perpLiabilityValue;
|
|
2474
2495
|
tradeSize = buyingPowerAfterClose;
|