Skip to content

Commit

Permalink
Merge pull request #98 from invariant-labs/fix-eclipse-testnet-snapshot
Browse files Browse the repository at this point in the history
Fix eclipse testnet snapshot
  • Loading branch information
Sniezka1927 authored Dec 2, 2024
2 parents 948c6c8 + 4b60803 commit 27f2785
Show file tree
Hide file tree
Showing 5 changed files with 63 additions and 48 deletions.
2 changes: 1 addition & 1 deletion data/eclipse/full_testnet.json

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion eclipse/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
"@coral-xyz/anchor": "0.29.0",
"@invariant-labs/locker-eclipse-sdk": "^0.0.12",
"@invariant-labs/sdk-eclipse": "^0.0.49",
"@invariant-labs/staker-sdk": "0.2.11",
"@solana/spl-token": "^0.4.9",
"@solana/spl-token-registry": "^0.2.4484",
"@solana/web3.js": "^1.95.4",
Expand Down
2 changes: 1 addition & 1 deletion eclipse/snap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ export NODE_OPTIONS="--max-old-space-size=8192"
npx tsx ./src/snap.ts
# npx tsx ./src/ticks.ts
# npx tsx ./src/pool_apy.ts
# npx tsx ./src/full-snap.ts
npx tsx ./src/full-snap.ts
38 changes: 23 additions & 15 deletions eclipse/src/full-snap.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import {
Market,
Network,
} from "@invariant-labs/sdk-eclipse";
import { Provider } from "@project-serum/anchor";
import { AnchorProvider } from "@coral-xyz/anchor";
import { PublicKey } from "@solana/web3.js";
import {
getCoingeckoPricesData2,
Expand All @@ -24,26 +24,30 @@ import fs from "fs";
import { DECIMAL } from "@invariant-labs/sdk-eclipse/lib/utils";

export const createSnapshotForNetwork = async (network: Network) => {
let provider: Provider;
let provider: AnchorProvider;
let fileName: string;
let dataFileName: string;
let poolsApyFileName: string;

switch (network) {
case Network.DEV:
provider = Provider.local("https://staging-rpc.dev2.eclipsenetwork.xyz");
provider = AnchorProvider.local(
"https://staging-rpc.dev2.eclipsenetwork.xyz"
);
fileName = "../data/eclipse/full_devnet.json";
dataFileName = "../data/eclipse/devnet.json";
poolsApyFileName = "../data/eclipse/pool_apy_devnet.json";
break;
case Network.TEST:
provider = Provider.local("https://testnet.dev2.eclipsenetwork.xyz");
provider = AnchorProvider.local(
"https://testnet.dev2.eclipsenetwork.xyz"
);
fileName = "../data/eclipse/full_testnet.json";
dataFileName = "../data/eclipse/testnet.json";
poolsApyFileName = "../data/eclipse/pool_apy_testnet.json";
break;
case Network.MAIN:
provider = Provider.local("https://eclipse.helius-rpc.com");
provider = AnchorProvider.local("https://eclipse.helius-rpc.com");
fileName = "../data/eclipse/full_mainnet.json";
dataFileName = "../data/eclipse/mainnet.json";
poolsApyFileName = "../data/eclipse/pool_apy_mainnet.json";
Expand Down Expand Up @@ -134,9 +138,11 @@ export const createSnapshotForNetwork = async (network: Network) => {
tvl: 0,
tokenX: poolsDataObject[address].tokenX.toString(),
tokenY: poolsDataObject[address].tokenY.toString(),
fee: +printBN(poolsDataObject[address].fee.v, DECIMAL - 2),
fee: +printBN(poolsDataObject[address].fee, DECIMAL - 2),
apy: poolsApy[address].apy ?? 0,
poolAddress: new PublicKey(address).toString(),
lockedX: 0,
lockedY: 0,
});
return;
}
Expand Down Expand Up @@ -169,9 +175,11 @@ export const createSnapshotForNetwork = async (network: Network) => {
: 0,
tokenX: poolsDataObject[address].tokenX.toString(),
tokenY: poolsDataObject[address].tokenY.toString(),
fee: +printBN(poolsDataObject[address].fee.v, DECIMAL - 2),
fee: +printBN(poolsDataObject[address].fee, DECIMAL - 2),
apy: poolsApy[address]?.apy ?? 0,
poolAddress: new PublicKey(address).toString(),
lockedX: lastSnapshot.lockedX?.usdValue24 ?? 0,
lockedY: lastSnapshot.lockedY?.usdValue24 ?? 0,
});

snapshots.slice(-30).forEach((snapshot) => {
Expand Down Expand Up @@ -291,14 +299,14 @@ export const createSnapshotForNetwork = async (network: Network) => {
// }
// );

// createSnapshotForNetwork(Network.TEST).then(
// () => {
// console.log("Eclipse: Full testnet snapshot done!");
// },
// (err) => {
// console.log(err);
// }
// );
createSnapshotForNetwork(Network.TEST).then(
() => {
console.log("Eclipse: Full testnet snapshot done!");
},
(err) => {
console.log(err);
}
);

createSnapshotForNetwork(Network.MAIN).then(
() => {
Expand Down
68 changes: 38 additions & 30 deletions eclipse/src/utils.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
/* eslint-disable @typescript-eslint/naming-convention */
import { MOCK_TOKENS, Network } from "@invariant-labs/sdk";
import { Network as StakerNetwork } from "@invariant-labs/staker-sdk";
import { Market, PoolStructure, Tick } from "@invariant-labs/sdk/lib/market";
import { MOCK_TOKENS, Network } from "@invariant-labs/sdk-eclipse";
// import { Network as StakerNetwork } from "@invariant-labs/staker-sdk";
import {
Market,
PoolStructure,
Tick,
} from "@invariant-labs/sdk-eclipse/lib/market";
import { Market as EclipseMarket } from "@invariant-labs/sdk-eclipse/lib/market";
import { DECIMAL, Range } from "@invariant-labs/sdk/lib/utils";
import { DECIMAL, Range } from "@invariant-labs/sdk-eclipse/lib/utils";
import BN from "bn.js";
import { PublicKey } from "@solana/web3.js";
import axios, { AxiosResponse } from "axios";
Expand Down Expand Up @@ -329,14 +333,15 @@ export const jsonToTicks = (data: Record<string, any[]>) => {
index: tick.index,
sign: tick.sign,
bump: tick.bump,
liquidityChange: { v: new BN(tick.liquidityChange.v, "hex") },
liquidityGross: { v: new BN(tick.liquidityGross.v, "hex") },
sqrtPrice: { v: new BN(tick.sqrtPrice.v, "hex") },
feeGrowthOutsideX: { v: new BN(tick.feeGrowthOutsideX.v, "hex") },
feeGrowthOutsideY: { v: new BN(tick.feeGrowthOutsideY.v, "hex") },
secondsPerLiquidityOutside: {
v: new BN(tick.secondsPerLiquidityOutside.v, "hex"),
},
liquidityChange: new BN(tick.liquidityChange.v, "hex"),
liquidityGross: new BN(tick.liquidityGross.v, "hex"),
sqrtPrice: new BN(tick.sqrtPrice.v, "hex"),
feeGrowthOutsideX: new BN(tick.feeGrowthOutsideX.v, "hex"),
feeGrowthOutsideY: new BN(tick.feeGrowthOutsideY.v, "hex"),
secondsPerLiquidityOutside: new BN(
tick.secondsPerLiquidityOutside.v,
"hex"
),
pool: new PublicKey(address),
});
});
Expand All @@ -353,16 +358,16 @@ export const jsonToTicks = (data: Record<string, any[]>) => {
return snaps;
};

export const marketToStakerNetwork = (network: Network): StakerNetwork => {
switch (network) {
case Network.DEV:
return StakerNetwork.DEV;
case Network.MAIN:
return StakerNetwork.MAIN;
default:
return StakerNetwork.DEV;
}
};
// export const marketToStakerNetwork = (network: Network): StakerNetwork => {
// switch (network) {
// case Network.DEV:
// return StakerNetwork.DEV;
// case Network.MAIN:
// return StakerNetwork.MAIN;
// default:
// return StakerNetwork.DEV;
// }
// };

export interface RewardsData {
token: string;
Expand Down Expand Up @@ -391,14 +396,15 @@ export const jsonArrayToTicks = (address: string, data: any[]) => {
index: tick.index,
sign: tick.sign,
bump: tick.bump,
liquidityChange: { v: new BN(tick.liquidityChange.v, "hex") },
liquidityGross: { v: new BN(tick.liquidityGross.v, "hex") },
sqrtPrice: { v: new BN(tick.sqrtPrice.v, "hex") },
feeGrowthOutsideX: { v: new BN(tick.feeGrowthOutsideX.v, "hex") },
feeGrowthOutsideY: { v: new BN(tick.feeGrowthOutsideY.v, "hex") },
secondsPerLiquidityOutside: {
v: new BN(tick.secondsPerLiquidityOutside.v, "hex"),
},
liquidityChange: new BN(tick.liquidityChange.v, "hex"),
liquidityGross: new BN(tick.liquidityGross.v, "hex"),
sqrtPrice: new BN(tick.sqrtPrice.v, "hex"),
feeGrowthOutsideX: new BN(tick.feeGrowthOutsideX.v, "hex"),
feeGrowthOutsideY: new BN(tick.feeGrowthOutsideY.v, "hex"),
secondsPerLiquidityOutside: new BN(
tick.secondsPerLiquidityOutside.v,
"hex"
),
pool: new PublicKey(address),
});
});
Expand Down Expand Up @@ -457,6 +463,8 @@ export interface PoolStatsDataWithString {
volume24: number;
tvl: number;
apy: number;
lockedX: number;
lockedY: number;
}

export const getPoolsFromAdresses = async (
Expand Down

0 comments on commit 27f2785

Please sign in to comment.