flash-sdk 2.3.12 → 2.3.16
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/OraclePrice.d.ts +1 -1
- package/dist/OraclePrice.js +8 -17
- package/dist/PerpetualsClient.d.ts +6 -5
- package/dist/PerpetualsClient.js +194 -232
- package/dist/PoolConfig.json +15 -229
- package/dist/PoolDataClient.js +3 -3
- package/dist/constants/index.d.ts +0 -1
- package/dist/constants/index.js +1 -2
- package/dist/idl/perpetuals.d.ts +14 -420
- package/dist/idl/perpetuals.js +14 -420
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/index.d.ts +5 -14
- package/package.json +4 -2
- package/readme.md +1 -0
package/dist/OraclePrice.d.ts
CHANGED
@@ -20,7 +20,7 @@ export declare class OraclePrice {
|
|
20
20
|
}): OraclePrice;
|
21
21
|
toContractOraclePrice(): ContractOraclePrice;
|
22
22
|
cmp(other: OraclePrice): -1 | 0 | 1;
|
23
|
-
|
23
|
+
getDeviationFactor(other: OraclePrice): BN;
|
24
24
|
scale_to_exponent(target_exponent: BN): OraclePrice;
|
25
25
|
getTokenAmount(asset_amount_usd: BN, token_decimals: number): BN;
|
26
26
|
getAssetAmountUsd(token_amount: BN, token_decimals: number): BN;
|
package/dist/OraclePrice.js
CHANGED
@@ -36,29 +36,20 @@ var OraclePrice = (function () {
|
|
36
36
|
;
|
37
37
|
return lhs.cmp(rhs);
|
38
38
|
};
|
39
|
-
OraclePrice.prototype.
|
40
|
-
|
41
|
-
|
42
|
-
thisPrice = this;
|
43
|
-
reference = other.scale_to_exponent(this.exponent);
|
44
|
-
}
|
45
|
-
else {
|
46
|
-
thisPrice = this.scale_to_exponent(other.exponent);
|
47
|
-
reference = other;
|
48
|
-
}
|
49
|
-
if (!thisPrice.exponent.eq(reference.exponent)) {
|
50
|
-
throw "Exponents mistmatch ".concat(thisPrice.exponent.toNumber(), " != ").concat(reference.exponent.toNumber());
|
39
|
+
OraclePrice.prototype.getDeviationFactor = function (other) {
|
40
|
+
if (!this.exponent.eq(other.exponent)) {
|
41
|
+
throw "Exponents mistmatch ".concat(this.exponent.toNumber(), " != ").concat(other.exponent.toNumber());
|
51
42
|
}
|
52
43
|
var factor;
|
53
|
-
if (
|
54
|
-
factor = OraclePrice.from({ price: (
|
44
|
+
if (this.price.gt(other.price)) {
|
45
|
+
factor = OraclePrice.from({ price: (this.price.sub(other.price).div(other.price)), exponent: this.exponent, confidence: constants_1.BN_ZERO, timestamp: constants_1.BN_ZERO });
|
55
46
|
}
|
56
47
|
else {
|
57
|
-
if (!
|
58
|
-
factor = OraclePrice.from({ price: (
|
48
|
+
if (!other.price.isZero()) {
|
49
|
+
factor = OraclePrice.from({ price: (other.price.sub(this.price).div(other.price)), exponent: this.exponent, confidence: constants_1.BN_ZERO, timestamp: constants_1.BN_ZERO });
|
59
50
|
}
|
60
51
|
else {
|
61
|
-
factor = OraclePrice.from({ price: constants_1.BN_ZERO, exponent:
|
52
|
+
factor = OraclePrice.from({ price: constants_1.BN_ZERO, exponent: this.exponent, confidence: constants_1.BN_ZERO, timestamp: constants_1.BN_ZERO });
|
62
53
|
}
|
63
54
|
}
|
64
55
|
return (factor.scale_to_exponent(new anchor_1.BN(-1 * constants_1.BPS_DECIMALS)).price);
|
@@ -2145,7 +2145,7 @@ export declare class PerpetualsClient {
|
|
2145
2145
|
prettyPrint: (object: object) => void;
|
2146
2146
|
init: (admins: PublicKey[], config: any) => Promise<void>;
|
2147
2147
|
setAdminSigners: (admins: PublicKey[], minSignatures: number) => Promise<void>;
|
2148
|
-
addPool: (name: string, maxAumUsd: BN, permissions: Permissions, metadataSymbol: string, metadataTitle: string, metadataUri: string
|
2148
|
+
addPool: (name: string, maxAumUsd: BN, permissions: Permissions, metadataSymbol: string, metadataTitle: string, metadataUri: string) => Promise<void>;
|
2149
2149
|
removePool: (name: string) => Promise<void>;
|
2150
2150
|
addCustody: (poolName: string, tokenMint: PublicKey, isStable: boolean, isVirtual: boolean, oracle: OracleParams, pricing: PricingParams, permissions: Permissions, fees: Fees, borrowRate: BorrowRateParams, ratios: TokenRatios[], depegAdjustment: boolean) => Promise<void>;
|
2151
2151
|
editCustody: (poolName: string, tokenMint: PublicKey, isStable: boolean, oracle: OracleParams, pricing: PricingParams, permissions: Permissions, fees: Fees, borrowRate: BorrowRateParams, ratios: TokenRatios[]) => Promise<void>;
|
@@ -2156,7 +2156,7 @@ export declare class PerpetualsClient {
|
|
2156
2156
|
getAddLiquidityAmountAndFeeSync: (amountIn: BN, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, lpTokenSupplyAmount: BN, poolAumUsdMax: BN, poolConfig: PoolConfig) => AddLiquidityAmountAndFee;
|
2157
2157
|
getRemoveLiquidityAmountAndFeeSync: (lpAmountIn: BN, poolAccount: PoolAccount, outputTokenPrice: OraclePrice, outputTokenEmaPrice: OraclePrice, outputTokenCustodyAccount: CustodyAccount, lpTokenSupply: BN, poolAumUsdMax: BN, poolConfig: PoolConfig) => RemoveLiquidityAmountAndFee;
|
2158
2158
|
private getNewRatioHelper;
|
2159
|
-
getFeeHelper: (action: FeesAction, amountAdd: BN, amountRemove: BN, inputTokenCustodyAccount: CustodyAccount,
|
2159
|
+
getFeeHelper: (action: FeesAction, amountAdd: BN, amountRemove: BN, inputTokenCustodyAccount: CustodyAccount, maxPrice: BN, poolAumUsdMax: BN, poolAccount: PoolAccount, poolConfig: PoolConfig) => {
|
2160
2160
|
feeBps: BN;
|
2161
2161
|
feeAmount: BN;
|
2162
2162
|
};
|
@@ -2170,7 +2170,8 @@ export declare class PerpetualsClient {
|
|
2170
2170
|
getLeverageSync: (sizeUsd: BN, collateralAmount: BN, collateralMinOraclePrice: OraclePrice, collateralTokenDecimals: number, pnlUsd: BN) => BN;
|
2171
2171
|
getLeverageAtAmountEntryWithSwapSync: (positionAccount: PositionAccount | null, inputDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfigPosition: PoolConfig, poolConfigSwap: PoolConfig, pnlUsd: BN) => BN;
|
2172
2172
|
getEntryPriceAndFeeSync: (positionAccount: PositionAccount | null, marketCorrelation: boolean, collateralDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, discountBps?: BN) => EntryPriceAndFee;
|
2173
|
-
getEntryPriceUsdSync: (side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount) =>
|
2173
|
+
getEntryPriceUsdSync: (side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount) => BN;
|
2174
|
+
getPriceAfterSlippageOld(isEntry: boolean, slippageBps: BN, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, side: Side, custody: CustodyAccount): ContractOraclePrice;
|
2174
2175
|
getPriceAfterSlippage(isEntry: boolean, slippageBps: BN, targetPrice: OraclePrice, side: Side): ContractOraclePrice;
|
2175
2176
|
getExitFeeSync: (positionAccount: PositionAccount, targetCustody: CustodyAccount, collateralCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, discountBps?: BN) => {
|
2176
2177
|
exitFeeAmount: BN;
|
@@ -2191,8 +2192,8 @@ export declare class PerpetualsClient {
|
|
2191
2192
|
getMaxWithdrawableAmountSync: (positionAccount: PositionAccount, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig, errorBandwidthPercentageUi?: number) => BN;
|
2192
2193
|
getCumulativeLockFeeSync: (custodyAccount: CustodyAccount, currentTimestamp: BN) => BN;
|
2193
2194
|
getLockFeeAndUnsettledUsdForPosition: (position: PositionAccount, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN) => BN;
|
2194
|
-
getLiquidationPriceSync: (collateralAmount: BN, sizeAmount: BN,
|
2195
|
-
getMaxProfitPriceSync: (
|
2195
|
+
getLiquidationPriceSync: (collateralAmount: BN, sizeAmount: BN, entryPriceUsd: BN, lockAndUnsettledFeeUsd: BN, marketCorrelation: boolean, side: Side, custodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, positionAccount: PositionAccount) => BN;
|
2196
|
+
getMaxProfitPriceSync: (entryPriceUsd: BN, marketCorrelation: boolean, side: Side, positionAccount: PositionAccount) => BN;
|
2196
2197
|
getPnlSync: (positionAccount: PositionAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, delay: BN, poolConfig: PoolConfig) => {
|
2197
2198
|
profitUsd: BN;
|
2198
2199
|
lossUsd: BN;
|