@metadaoproject/futarchy 0.4.0-alpha.4 → 0.4.0-alpha.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/v0.3/AmmClient.d.ts +223 -0
- package/dist/v0.3/AmmClient.js +186 -0
- package/dist/v0.3/AmmClient.js.map +1 -0
- package/dist/v0.3/AutocratClient.d.ts +234 -0
- package/dist/v0.3/AutocratClient.js +270 -0
- package/dist/v0.3/AutocratClient.js.map +1 -0
- package/dist/v0.3/ConditionalVaultClient.d.ts +281 -0
- package/dist/v0.3/ConditionalVaultClient.js +135 -0
- package/dist/v0.3/ConditionalVaultClient.js.map +1 -0
- package/dist/v0.3/FutarchyClient.d.ts +27 -0
- package/dist/v0.3/FutarchyClient.js +57 -0
- package/dist/v0.3/FutarchyClient.js.map +1 -0
- package/dist/v0.3/constants.d.ts +9 -0
- package/dist/v0.3/constants.js +10 -0
- package/dist/v0.3/constants.js.map +1 -0
- package/dist/v0.3/index.d.ts +7 -0
- package/dist/v0.3/index.js +8 -0
- package/dist/v0.3/index.js.map +1 -0
- package/dist/v0.3/types/amm.d.ts +542 -0
- package/dist/v0.3/types/amm.js +542 -0
- package/dist/v0.3/types/amm.js.map +1 -0
- package/dist/v0.3/types/autocrat.d.ts +632 -0
- package/dist/v0.3/types/autocrat.js +632 -0
- package/dist/v0.3/types/autocrat.js.map +1 -0
- package/dist/v0.3/types/conditional_vault.d.ts +448 -0
- package/dist/v0.3/types/conditional_vault.js +448 -0
- package/dist/v0.3/types/conditional_vault.js.map +1 -0
- package/dist/v0.3/types/index.d.ts +21 -0
- package/dist/v0.3/types/index.js +4 -0
- package/dist/v0.3/types/index.js.map +1 -0
- package/dist/v0.3/types/utils.d.ts +3 -0
- package/dist/v0.3/types/utils.js +2 -0
- package/dist/v0.3/types/utils.js.map +1 -0
- package/dist/v0.3/utils/ammMath.d.ts +39 -0
- package/dist/v0.3/utils/ammMath.js +142 -0
- package/dist/v0.3/utils/ammMath.js.map +1 -0
- package/dist/v0.3/utils/cu.d.ts +10 -0
- package/dist/v0.3/utils/cu.js +11 -0
- package/dist/v0.3/utils/cu.js.map +1 -0
- package/dist/v0.3/utils/filters.d.ts +3 -0
- package/dist/v0.3/utils/filters.js +14 -0
- package/dist/v0.3/utils/filters.js.map +1 -0
- package/dist/v0.3/utils/index.d.ts +16 -0
- package/dist/v0.3/utils/index.js +30 -0
- package/dist/v0.3/utils/index.js.map +1 -0
- package/dist/v0.3/utils/instruction.d.ts +4 -0
- package/dist/v0.3/utils/instruction.js +10 -0
- package/dist/v0.3/utils/instruction.js.map +1 -0
- package/dist/v0.3/utils/metadata.d.ts +4 -0
- package/dist/v0.3/utils/metadata.js +26 -0
- package/dist/v0.3/utils/metadata.js.map +1 -0
- package/dist/v0.3/utils/pda.d.ts +10 -0
- package/dist/v0.3/utils/pda.js +47 -0
- package/dist/v0.3/utils/pda.js.map +1 -0
- package/dist/v0.4/AmmClient.d.ts +45 -25
- package/dist/v0.4/AmmClient.js +11 -97
- package/dist/v0.4/AmmClient.js.map +1 -1
- package/dist/v0.4/AutocratClient.d.ts +43 -1
- package/dist/v0.4/AutocratClient.js +21 -2
- package/dist/v0.4/AutocratClient.js.map +1 -1
- package/dist/v0.4/ConditionalVaultClient.d.ts +70 -11
- package/dist/v0.4/ConditionalVaultClient.js +23 -33
- package/dist/v0.4/ConditionalVaultClient.js.map +1 -1
- package/dist/v0.4/LaunchpadClient.d.ts +324 -0
- package/dist/v0.4/LaunchpadClient.js +152 -0
- package/dist/v0.4/LaunchpadClient.js.map +1 -0
- package/dist/v0.4/constants.d.ts +5 -0
- package/dist/v0.4/constants.js +9 -3
- package/dist/v0.4/constants.js.map +1 -1
- package/dist/v0.4/index.d.ts +1 -0
- package/dist/v0.4/index.js +1 -0
- package/dist/v0.4/index.js.map +1 -1
- package/dist/v0.4/types/amm.d.ts +268 -2
- package/dist/v0.4/types/amm.js +268 -2
- package/dist/v0.4/types/amm.js.map +1 -1
- package/dist/v0.4/types/autocrat.d.ts +347 -1
- package/dist/v0.4/types/autocrat.js +347 -1
- package/dist/v0.4/types/autocrat.js.map +1 -1
- package/dist/v0.4/types/conditional_vault.d.ts +416 -4
- package/dist/v0.4/types/conditional_vault.js +416 -4
- package/dist/v0.4/types/conditional_vault.js.map +1 -1
- package/dist/v0.4/types/index.d.ts +18 -1
- package/dist/v0.4/types/index.js +2 -0
- package/dist/v0.4/types/index.js.map +1 -1
- package/dist/v0.4/types/launchpad.d.ts +728 -0
- package/dist/v0.4/types/launchpad.js +728 -0
- package/dist/v0.4/types/launchpad.js.map +1 -0
- package/dist/v0.4/utils/cu.js +1 -1
- package/dist/v0.4/utils/pda.d.ts +8 -1
- package/dist/v0.4/utils/pda.js +19 -3
- package/dist/v0.4/utils/pda.js.map +1 -1
- package/dist/v0.4/utils/priceMath.d.ts +51 -9
- package/dist/v0.4/utils/priceMath.js +102 -38
- package/dist/v0.4/utils/priceMath.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"launchpad.js","sourceRoot":"","sources":["../../../src/v0.4/types/launchpad.ts"],"names":[],"mappings":"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"}
|
package/dist/v0.4/utils/cu.js
CHANGED
package/dist/v0.4/utils/pda.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { PublicKey } from "@solana/web3.js";
|
|
2
2
|
import BN from "bn.js";
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const getEventAuthorityAddr: (programId: PublicKey) => [PublicKey, number];
|
|
4
|
+
export declare const getQuestionAddr: (programId: PublicKey, questionId: Uint8Array, oracle: PublicKey, numOutcomes: number) => [PublicKey, number];
|
|
4
5
|
export declare const getVaultAddr: (programId: PublicKey, question: PublicKey, underlyingTokenMint: PublicKey) => [PublicKey, number];
|
|
5
6
|
export declare const getConditionalTokenMintAddr: (programId: PublicKey, vault: PublicKey, index: number) => [PublicKey, number];
|
|
7
|
+
export declare const getDownAndUpMintAddrs: (programId: PublicKey, vault: PublicKey) => {
|
|
8
|
+
down: PublicKey;
|
|
9
|
+
up: PublicKey;
|
|
10
|
+
};
|
|
6
11
|
export declare const getVaultFinalizeMintAddr: (programId: PublicKey, vault: PublicKey) => [PublicKey, number];
|
|
7
12
|
export declare const getMetadataAddr: (mint: PublicKey) => [PublicKey, number];
|
|
8
13
|
export declare const getVaultRevertMintAddr: (programId: PublicKey, vault: PublicKey) => [PublicKey, number];
|
|
@@ -10,3 +15,5 @@ export declare const getDaoTreasuryAddr: (programId: PublicKey, dao: PublicKey)
|
|
|
10
15
|
export declare const getProposalAddr: (programId: PublicKey, proposer: PublicKey, nonce: BN) => [PublicKey, number];
|
|
11
16
|
export declare const getAmmAddr: (programId: PublicKey, baseMint: PublicKey, quoteMint: PublicKey) => [PublicKey, number];
|
|
12
17
|
export declare const getAmmLpMintAddr: (programId: PublicKey, amm: PublicKey) => [PublicKey, number];
|
|
18
|
+
export declare function getLaunchAddr(programId: PublicKey | undefined, dao: PublicKey): [PublicKey, number];
|
|
19
|
+
export declare const getLaunchSignerAddr: (programId: PublicKey | undefined, launch: PublicKey) => [PublicKey, number];
|
package/dist/v0.4/utils/pda.js
CHANGED
|
@@ -2,7 +2,11 @@ import { PublicKey } from "@solana/web3.js";
|
|
|
2
2
|
import { utils } from "@coral-xyz/anchor";
|
|
3
3
|
import BN from "bn.js";
|
|
4
4
|
import { MPL_TOKEN_METADATA_PROGRAM_ID } from "../constants.js";
|
|
5
|
-
|
|
5
|
+
import { LAUNCHPAD_PROGRAM_ID } from "../constants.js";
|
|
6
|
+
export const getEventAuthorityAddr = (programId) => {
|
|
7
|
+
return PublicKey.findProgramAddressSync([Buffer.from("__event_authority")], programId);
|
|
8
|
+
};
|
|
9
|
+
export const getQuestionAddr = (programId, questionId, oracle, numOutcomes) => {
|
|
6
10
|
if (questionId.length != 32) {
|
|
7
11
|
throw new Error("questionId must be 32 bytes");
|
|
8
12
|
}
|
|
@@ -10,7 +14,7 @@ export const getQuestionAddr = (programId, questionId, oracle, numConditions) =>
|
|
|
10
14
|
utils.bytes.utf8.encode("question"),
|
|
11
15
|
Buffer.from(questionId),
|
|
12
16
|
oracle.toBuffer(),
|
|
13
|
-
new BN(
|
|
17
|
+
new BN(numOutcomes).toArrayLike(Buffer, "le", 1),
|
|
14
18
|
], programId);
|
|
15
19
|
};
|
|
16
20
|
export const getVaultAddr = (programId, question, underlyingTokenMint) => {
|
|
@@ -24,9 +28,15 @@ export const getConditionalTokenMintAddr = (programId, vault, index) => {
|
|
|
24
28
|
return PublicKey.findProgramAddressSync([
|
|
25
29
|
utils.bytes.utf8.encode("conditional_token"),
|
|
26
30
|
vault.toBuffer(),
|
|
27
|
-
new BN(index).
|
|
31
|
+
new BN(index).toArrayLike(Buffer, "le", 1),
|
|
28
32
|
], programId);
|
|
29
33
|
};
|
|
34
|
+
export const getDownAndUpMintAddrs = (programId, vault) => {
|
|
35
|
+
return {
|
|
36
|
+
down: getConditionalTokenMintAddr(programId, vault, 0)[0],
|
|
37
|
+
up: getConditionalTokenMintAddr(programId, vault, 1)[0],
|
|
38
|
+
};
|
|
39
|
+
};
|
|
30
40
|
export const getVaultFinalizeMintAddr = (programId, vault) => {
|
|
31
41
|
return getVaultMintAddr(programId, vault, "conditional_on_finalize_mint");
|
|
32
42
|
};
|
|
@@ -63,4 +73,10 @@ export const getAmmAddr = (programId, baseMint, quoteMint) => {
|
|
|
63
73
|
export const getAmmLpMintAddr = (programId, amm) => {
|
|
64
74
|
return PublicKey.findProgramAddressSync([utils.bytes.utf8.encode("amm_lp_mint"), amm.toBuffer()], programId);
|
|
65
75
|
};
|
|
76
|
+
export function getLaunchAddr(programId = LAUNCHPAD_PROGRAM_ID, dao) {
|
|
77
|
+
return PublicKey.findProgramAddressSync([Buffer.from("launch"), dao.toBuffer()], programId);
|
|
78
|
+
}
|
|
79
|
+
export const getLaunchSignerAddr = (programId = LAUNCHPAD_PROGRAM_ID, launch) => {
|
|
80
|
+
return PublicKey.findProgramAddressSync([Buffer.from("launch_signer"), launch.toBuffer()], programId);
|
|
81
|
+
};
|
|
66
82
|
//# sourceMappingURL=pda.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pda.js","sourceRoot":"","sources":["../../../src/v0.4/utils/pda.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK1C,OAAO,EAAE,MAAM,OAAO,CAAC;AAKvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"pda.js","sourceRoot":"","sources":["../../../src/v0.4/utils/pda.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,54 @@
|
|
|
1
1
|
import BN from "bn.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import { Amm } from "../types/index.js";
|
|
3
|
+
import { SwapType } from "../AmmClient.js";
|
|
4
|
+
import { AmmMath as V3AmmMath } from "../../v0.3/utils/ammMath.js";
|
|
5
|
+
export type AddLiquiditySimulation = {
|
|
6
|
+
baseAmount: BN;
|
|
7
|
+
quoteAmount: BN;
|
|
8
|
+
expectedLpTokens: BN;
|
|
9
|
+
minLpTokens?: BN;
|
|
10
|
+
maxBaseAmount?: BN;
|
|
11
|
+
};
|
|
12
|
+
export type SwapSimulation = {
|
|
13
|
+
expectedOut: BN;
|
|
14
|
+
newBaseReserves: BN;
|
|
15
|
+
newQuoteReserves: BN;
|
|
16
|
+
minExpectedOut?: BN;
|
|
17
|
+
};
|
|
18
|
+
export type RemoveLiquiditySimulation = {
|
|
19
|
+
expectedBaseOut: BN;
|
|
20
|
+
expectedQuoteOut: BN;
|
|
21
|
+
minBaseOut?: BN;
|
|
22
|
+
minQuoteOut?: BN;
|
|
23
|
+
};
|
|
24
|
+
export declare class AmmMath {
|
|
25
|
+
static getHumanPriceFromReserves: typeof V3AmmMath.getHumanPriceFromReserves;
|
|
26
|
+
static getAmmPriceFromReserves: typeof V3AmmMath.getAmmPriceFromReserves;
|
|
27
|
+
static getChainAmount: typeof V3AmmMath.getChainAmount;
|
|
28
|
+
static getHumanAmount: typeof V3AmmMath.getHumanAmount;
|
|
29
|
+
static getAmmPrice: typeof V3AmmMath.getAmmPrice;
|
|
30
|
+
static getAmmPrices: typeof V3AmmMath.getAmmPrices;
|
|
31
|
+
static scale: typeof V3AmmMath.scale;
|
|
32
|
+
static addSlippage: typeof V3AmmMath.addSlippage;
|
|
33
|
+
static subtractSlippage: typeof V3AmmMath.subtractSlippage;
|
|
34
|
+
static simulateAddLiquidity: typeof V3AmmMath.simulateAddLiquidity;
|
|
35
|
+
static simulateRemoveLiquidity: typeof V3AmmMath.simulateRemoveLiquidity;
|
|
6
36
|
static getHumanPrice(ammPrice: BN, baseDecimals: number, quoteDecimals: number): number;
|
|
7
|
-
static
|
|
8
|
-
static
|
|
9
|
-
static
|
|
10
|
-
|
|
11
|
-
|
|
37
|
+
static getTwap(amm: Amm): BN;
|
|
38
|
+
static simulateSwapInner(inputAmount: BN, inputReserves: BN, outputReserves: BN): BN;
|
|
39
|
+
static simulateSwap(inputAmount: BN, swapType: SwapType, baseReserves: BN, quoteReserves: BN, slippageBps?: BN): SwapSimulation;
|
|
40
|
+
/**
|
|
41
|
+
* Calculates the optimal swap amount and mergeable tokens without using square roots.
|
|
42
|
+
* @param userBalanceIn BN – Tokens that a user wants to dispose of.
|
|
43
|
+
* @param ammReserveIn BN – Amount of tokens in the AMM of the token that the user wants to dispose of.
|
|
44
|
+
* @param ammReserveOut BN – Amount of tokens in the AMM of the token that the user wants to receive.
|
|
45
|
+
* @returns An object containing the optimal swap amount, expected quote received, and expected mergeable tokens.
|
|
46
|
+
*/
|
|
47
|
+
static calculateOptimalSwapForMerge(userBalanceIn: BN, ammReserveIn: BN, ammReserveOut: BN, slippageBps: BN): {
|
|
48
|
+
optimalSwapAmount: BN;
|
|
49
|
+
userInAfterSwap: BN;
|
|
50
|
+
expectedOut: BN;
|
|
51
|
+
minimumExpectedOut: BN;
|
|
52
|
+
};
|
|
12
53
|
}
|
|
54
|
+
export { AmmMath as PriceMath };
|
|
@@ -1,52 +1,116 @@
|
|
|
1
1
|
import BN from "bn.js";
|
|
2
|
+
import { AmmMath as V3AmmMath } from "../../v0.3/utils/ammMath.js";
|
|
2
3
|
const BN_TEN = new BN(10);
|
|
3
4
|
const PRICE_SCALE = BN_TEN.pow(new BN(12));
|
|
4
5
|
const PRICE_SCALE_NUMBER = 1e12;
|
|
5
|
-
export class
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
static getChainAmount
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
static getHumanAmount(chainAmount, decimals) {
|
|
20
|
-
return chainAmount.toNumber() / 10 ** decimals;
|
|
21
|
-
}
|
|
6
|
+
export class AmmMath {
|
|
7
|
+
// Re-export common methods from v0.3
|
|
8
|
+
static getHumanPriceFromReserves = V3AmmMath.getHumanPriceFromReserves;
|
|
9
|
+
static getAmmPriceFromReserves = V3AmmMath.getAmmPriceFromReserves;
|
|
10
|
+
static getChainAmount = V3AmmMath.getChainAmount;
|
|
11
|
+
static getHumanAmount = V3AmmMath.getHumanAmount;
|
|
12
|
+
static getAmmPrice = V3AmmMath.getAmmPrice;
|
|
13
|
+
static getAmmPrices = V3AmmMath.getAmmPrices;
|
|
14
|
+
static scale = V3AmmMath.scale;
|
|
15
|
+
static addSlippage = V3AmmMath.addSlippage;
|
|
16
|
+
static subtractSlippage = V3AmmMath.subtractSlippage;
|
|
17
|
+
static simulateAddLiquidity = V3AmmMath.simulateAddLiquidity;
|
|
18
|
+
static simulateRemoveLiquidity = V3AmmMath.simulateRemoveLiquidity;
|
|
22
19
|
static getHumanPrice(ammPrice, baseDecimals, quoteDecimals) {
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
const decimalScalar = BN_TEN.pow(new BN(quoteDecimals - baseDecimals).abs());
|
|
21
|
+
const price1e12 = quoteDecimals > baseDecimals
|
|
25
22
|
? ammPrice.div(decimalScalar)
|
|
26
23
|
: ammPrice.mul(decimalScalar);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return scaledPrice;
|
|
24
|
+
// in case the BN is too large to cast to number, we try
|
|
25
|
+
try {
|
|
26
|
+
return price1e12.toNumber() / 1e12;
|
|
27
|
+
}
|
|
28
|
+
catch (e) {
|
|
29
|
+
// BN tried to cast into number larger than 53 bits so we we do division via BN methods first, then cast to number(so it is smaller before the cast)
|
|
30
|
+
return price1e12.div(new BN(1e12)).toNumber();
|
|
31
|
+
}
|
|
36
32
|
}
|
|
37
|
-
static
|
|
38
|
-
|
|
39
|
-
return prices.map((price) => this.getAmmPrice(price, baseDecimals, quoteDecimals));
|
|
33
|
+
static getTwap(amm) {
|
|
34
|
+
return amm.oracle.aggregator.div(amm.oracle.lastUpdatedSlot.sub(amm.createdAtSlot));
|
|
40
35
|
}
|
|
41
|
-
static
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
static simulateSwapInner(inputAmount, inputReserves, outputReserves) {
|
|
37
|
+
if (inputReserves.eqn(0) || outputReserves.eqn(0)) {
|
|
38
|
+
throw new Error("reserves must be non-zero");
|
|
39
|
+
}
|
|
40
|
+
let inputAmountWithFee = inputAmount.muln(990);
|
|
41
|
+
let numerator = inputAmountWithFee.mul(outputReserves);
|
|
42
|
+
let denominator = inputReserves.muln(1000).add(inputAmountWithFee);
|
|
43
|
+
return numerator.div(denominator);
|
|
44
44
|
}
|
|
45
|
-
static
|
|
46
|
-
|
|
45
|
+
static simulateSwap(inputAmount, swapType, baseReserves, quoteReserves, slippageBps) {
|
|
46
|
+
let inputReserves, outputReserves;
|
|
47
|
+
if (swapType.buy) {
|
|
48
|
+
inputReserves = quoteReserves;
|
|
49
|
+
outputReserves = baseReserves;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
inputReserves = baseReserves;
|
|
53
|
+
outputReserves = quoteReserves;
|
|
54
|
+
}
|
|
55
|
+
let expectedOut = this.simulateSwapInner(inputAmount, inputReserves, outputReserves);
|
|
56
|
+
let minExpectedOut;
|
|
57
|
+
if (slippageBps) {
|
|
58
|
+
minExpectedOut = AmmMath.subtractSlippage(expectedOut, slippageBps);
|
|
59
|
+
}
|
|
60
|
+
let newBaseReserves, newQuoteReserves;
|
|
61
|
+
if (swapType.buy) {
|
|
62
|
+
newBaseReserves = baseReserves.sub(expectedOut);
|
|
63
|
+
newQuoteReserves = quoteReserves.add(inputAmount);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
newBaseReserves = baseReserves.add(inputAmount);
|
|
67
|
+
newQuoteReserves = quoteReserves.sub(expectedOut);
|
|
68
|
+
}
|
|
69
|
+
return {
|
|
70
|
+
expectedOut,
|
|
71
|
+
newBaseReserves,
|
|
72
|
+
newQuoteReserves,
|
|
73
|
+
minExpectedOut,
|
|
74
|
+
};
|
|
47
75
|
}
|
|
48
|
-
|
|
49
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Calculates the optimal swap amount and mergeable tokens without using square roots.
|
|
78
|
+
* @param userBalanceIn BN – Tokens that a user wants to dispose of.
|
|
79
|
+
* @param ammReserveIn BN – Amount of tokens in the AMM of the token that the user wants to dispose of.
|
|
80
|
+
* @param ammReserveOut BN – Amount of tokens in the AMM of the token that the user wants to receive.
|
|
81
|
+
* @returns An object containing the optimal swap amount, expected quote received, and expected mergeable tokens.
|
|
82
|
+
*/
|
|
83
|
+
static calculateOptimalSwapForMerge(userBalanceIn, ammReserveIn, ammReserveOut, slippageBps) {
|
|
84
|
+
// essentially, we want to calculate the swap amount so that the remaining user balance = received token amount
|
|
85
|
+
// solve this system of equations for swapAmount, outputAmount (we only care about swap amount tho)
|
|
86
|
+
// (baseReserve + swapAmount) * (quoteReserve - outputAmount) = baseReserve * quoteReserve
|
|
87
|
+
// baseAmount - swapAmount = outputAmount
|
|
88
|
+
//solve equation
|
|
89
|
+
// (baseReserve + .99*swapAmount) * (quoteReserve - (userTokens - swapAmount)) = baseReserve * quoteReserve
|
|
90
|
+
// multiplying out the left hand side and subtracting baseReserve * quoteReserve from both sides yields the following:
|
|
91
|
+
// baseReserve*quoteReserve - baseReserve*userTokens + baseReserve*swapAmount + .99*swapAmount*quoteReserve - .99*swapAmount*userTokens + .99*swapAmount^2 = baseReserve*quoteReserve
|
|
92
|
+
// .99*swapAmount^2 + baseReserve*swapAmount + .99*swapAmount*quoteReserve - baseReserve*userTokens - .99*swapAmount*userTokens = 0
|
|
93
|
+
// in the quadratic equation, a = .99, b = (baseReserve + .99*quoteReserve - .99*userTokens), c = -baseReserve*userTokens
|
|
94
|
+
// x = (-b + sqrt(b^2 - 4ac)) / 2a
|
|
95
|
+
let a = 0.99;
|
|
96
|
+
let b = Number(ammReserveIn) +
|
|
97
|
+
0.99 * Number(ammReserveOut) -
|
|
98
|
+
0.99 * Number(userBalanceIn);
|
|
99
|
+
let c = -Number(ammReserveIn) * Number(userBalanceIn);
|
|
100
|
+
let x = (-b + Math.sqrt(b ** 2 - 4 * a * c)) / (2 * a);
|
|
101
|
+
//this should mathematically return a positive number assuming userBalanceIn, ammReserveIn, and ammReserveOut are all positive (which they should be)
|
|
102
|
+
// -b + Math.sqrt(b ** 2 - 4 * a * c) > 0 because -4*a*c > 0 and sqrt(b**2 + positive number) > b
|
|
103
|
+
const swapAmount = x;
|
|
104
|
+
let expectedOut = this.simulateSwapInner(new BN(swapAmount), ammReserveIn, ammReserveOut);
|
|
105
|
+
let minimumExpectedOut = Number(expectedOut) - (Number(expectedOut) * Number(slippageBps)) / 10000;
|
|
106
|
+
return {
|
|
107
|
+
optimalSwapAmount: new BN(swapAmount),
|
|
108
|
+
userInAfterSwap: new BN(Number(userBalanceIn) - swapAmount),
|
|
109
|
+
expectedOut: expectedOut,
|
|
110
|
+
minimumExpectedOut: new BN(minimumExpectedOut),
|
|
111
|
+
};
|
|
50
112
|
}
|
|
51
113
|
}
|
|
114
|
+
// Add backwards compatibility alias
|
|
115
|
+
export { AmmMath as PriceMath };
|
|
52
116
|
//# sourceMappingURL=priceMath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"priceMath.js","sourceRoot":"","sources":["../../../src/v0.4/utils/priceMath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"priceMath.js","sourceRoot":"","sources":["../../../src/v0.4/utils/priceMath.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metadaoproject/futarchy",
|
|
3
|
-
"version": "0.4.0-alpha.
|
|
3
|
+
"version": "0.4.0-alpha.41",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
|
+
"license": "BSL-1.0",
|
|
8
9
|
"files": [
|
|
9
10
|
"/dist"
|
|
10
11
|
],
|