@clober/v2-sdk 1.0.0-rc.30 → 1.0.0-rc.31

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.
@@ -6,7 +6,7 @@ import { getDailyStartTimestampInSeconds } from '../../../utils/time';
6
6
  import { convertTokenToDecimal } from '../../../utils/bigint';
7
7
  export const fetchMarketSnapshot = async (publicClient, chainId, token0, token1, timestampInSeconds) => {
8
8
  const dayStartTimestamp = getDailyStartTimestampInSeconds(timestampInSeconds);
9
- const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshot', 'query getMarkets($date: Int!, $bases: [String!]!, $quotes: [String!]!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date, book_: {base_in: $bases, quote_in: $quotes}} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
9
+ const { data: { books, bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshot', 'query getMarkets($date: Int!, $bases: [String!]!, $quotes: [String!]!) { books: books(where: {base_in: $bases, quote_in: $quotes}) { price inversePrice totalValueLockedUSD lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } } bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date, book_: {base_in: $bases, quote_in: $quotes}} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
10
10
  date: dayStartTimestamp,
11
11
  bases: [token0, token1].map((address) => address.toLowerCase()),
12
12
  quotes: [token0, token1].map((address) => address.toLowerCase()),
@@ -17,116 +17,216 @@ export const fetchMarketSnapshot = async (publicClient, chainId, token0, token1,
17
17
  return null;
18
18
  }
19
19
  const totalSupplyMap = await fetchTotalSupplyMap(publicClient, chainId, [token0, token1].map((address) => getAddress(address)));
20
- const bidBook = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
20
+ const dailyBidBookData = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
21
21
  chainId,
22
22
  token0: getAddress(base.id),
23
23
  token1: getAddress(quote.id),
24
24
  })));
25
- const askBook = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(base.id), getQuoteToken({
25
+ const dailyAskBookData = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(base.id), getQuoteToken({
26
26
  chainId,
27
27
  token0: getAddress(quote.id),
28
28
  token1: getAddress(base.id),
29
29
  })));
30
- if (bidBook && askBook) {
31
- const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.book.base.id)] ?? 0n), Number(bidBook.book.base.decimals));
32
- const isBidNewer = Number(bidBook.book.lastTakenTimestamp) >=
33
- Number(askBook.book.lastTakenTimestamp);
30
+ if (dailyBidBookData && dailyAskBookData) {
31
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyBidBookData.book.base.id)] ?? 0n), Number(dailyBidBookData.book.base.decimals));
32
+ const isBidNewer = Number(dailyBidBookData.book.lastTakenTimestamp) >=
33
+ Number(dailyAskBookData.book.lastTakenTimestamp);
34
34
  return {
35
35
  chainId,
36
- marketId: `${bidBook.book.base.symbol}/${bidBook.book.quote.symbol}`,
36
+ marketId: `${dailyBidBookData.book.base.symbol}/${dailyBidBookData.book.quote.symbol}`,
37
37
  base: {
38
- address: getAddress(bidBook.book.base.id),
39
- name: bidBook.book.base.name,
40
- symbol: bidBook.book.base.symbol,
41
- decimals: Number(bidBook.book.base.decimals),
38
+ address: getAddress(dailyBidBookData.book.base.id),
39
+ name: dailyBidBookData.book.base.name,
40
+ symbol: dailyBidBookData.book.base.symbol,
41
+ decimals: Number(dailyBidBookData.book.base.decimals),
42
42
  },
43
43
  quote: {
44
- address: getAddress(bidBook.book.quote.id),
45
- name: bidBook.book.quote.name,
46
- symbol: bidBook.book.quote.symbol,
47
- decimals: Number(bidBook.book.quote.decimals),
44
+ address: getAddress(dailyBidBookData.book.quote.id),
45
+ name: dailyBidBookData.book.quote.name,
46
+ symbol: dailyBidBookData.book.quote.symbol,
47
+ decimals: Number(dailyBidBookData.book.quote.decimals),
48
48
  },
49
49
  price: isBidNewer
50
- ? Number(bidBook.book.price)
51
- : Number(askBook.book.inversePrice),
50
+ ? Number(dailyBidBookData.book.price)
51
+ : Number(dailyAskBookData.book.inversePrice),
52
52
  priceUSD: isBidNewer
53
- ? Number(bidBook.book.base.priceUSD)
54
- : Number(askBook.book.quote.priceUSD),
55
- volume24hUSD: Number(bidBook.volumeUSD) + Number(askBook.volumeUSD),
56
- totalValueLockedUSD: Number(bidBook.book.totalValueLockedUSD) +
57
- Number(askBook.book.totalValueLockedUSD),
58
- priceChange24h: isBidNewer && Number(bidBook.open) > 0
59
- ? Number(bidBook.close) / Number(bidBook.open) - 1
60
- : !isBidNewer && Number(askBook.close) > 0
61
- ? Number(askBook.open) / Number(askBook.close) - 1
53
+ ? Number(dailyBidBookData.book.base.priceUSD)
54
+ : Number(dailyAskBookData.book.quote.priceUSD),
55
+ volume24hUSD: Number(dailyBidBookData.volumeUSD) + Number(dailyAskBookData.volumeUSD),
56
+ totalValueLockedUSD: Number(dailyBidBookData.book.totalValueLockedUSD) +
57
+ Number(dailyAskBookData.book.totalValueLockedUSD),
58
+ priceChange24h: isBidNewer && Number(dailyBidBookData.open) > 0
59
+ ? Number(dailyBidBookData.close) / Number(dailyBidBookData.open) - 1
60
+ : !isBidNewer && Number(dailyAskBookData.close) > 0
61
+ ? Number(dailyAskBookData.open) / Number(dailyAskBookData.close) - 1
62
62
  : 0,
63
- createdAtTimestamp: Math.min(Number(bidBook.book.createdAtTimestamp), Number(askBook.book.createdAtTimestamp)),
63
+ createdAtTimestamp: Math.min(Number(dailyBidBookData.book.createdAtTimestamp), Number(dailyAskBookData.book.createdAtTimestamp)),
64
64
  fdv: baseTotalSupply *
65
65
  (isBidNewer
66
- ? Number(bidBook.book.base.priceUSD)
67
- : Number(askBook.book.quote.priceUSD)),
68
- bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp),
69
- askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp),
66
+ ? Number(dailyBidBookData.book.base.priceUSD)
67
+ : Number(dailyAskBookData.book.quote.priceUSD)),
68
+ bidBookUpdatedAt: Number(dailyBidBookData.book.lastTakenTimestamp),
69
+ askBookUpdatedAt: Number(dailyAskBookData.book.lastTakenTimestamp),
70
70
  };
71
71
  }
72
- else if (bidBook) {
73
- const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.book.base.id)] ?? 0n), Number(bidBook.book.base.decimals));
72
+ else if (dailyBidBookData) {
73
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyBidBookData.book.base.id)] ?? 0n), Number(dailyBidBookData.book.base.decimals));
74
74
  return {
75
75
  chainId,
76
- marketId: `${bidBook.book.base.symbol}/${bidBook.book.quote.symbol}`,
76
+ marketId: `${dailyBidBookData.book.base.symbol}/${dailyBidBookData.book.quote.symbol}`,
77
77
  base: {
78
- address: getAddress(bidBook.book.base.id),
79
- name: bidBook.book.base.name,
80
- symbol: bidBook.book.base.symbol,
81
- decimals: Number(bidBook.book.base.decimals),
78
+ address: getAddress(dailyBidBookData.book.base.id),
79
+ name: dailyBidBookData.book.base.name,
80
+ symbol: dailyBidBookData.book.base.symbol,
81
+ decimals: Number(dailyBidBookData.book.base.decimals),
82
82
  },
83
83
  quote: {
84
- address: getAddress(bidBook.book.quote.id),
85
- name: bidBook.book.quote.name,
86
- symbol: bidBook.book.quote.symbol,
87
- decimals: Number(bidBook.book.quote.decimals),
84
+ address: getAddress(dailyBidBookData.book.quote.id),
85
+ name: dailyBidBookData.book.quote.name,
86
+ symbol: dailyBidBookData.book.quote.symbol,
87
+ decimals: Number(dailyBidBookData.book.quote.decimals),
88
88
  },
89
- price: Number(bidBook.book.price) || 0,
90
- priceUSD: Number(bidBook.book.base.priceUSD) || 0,
91
- volume24hUSD: Number(bidBook.volumeUSD) || 0,
92
- totalValueLockedUSD: Number(bidBook.book.totalValueLockedUSD) || 0,
93
- priceChange24h: Number(bidBook.open) > 0
94
- ? Number(bidBook.close) / Number(bidBook.open) - 1
89
+ price: Number(dailyBidBookData.book.price) || 0,
90
+ priceUSD: Number(dailyBidBookData.book.base.priceUSD) || 0,
91
+ volume24hUSD: Number(dailyBidBookData.volumeUSD) || 0,
92
+ totalValueLockedUSD: Number(dailyBidBookData.book.totalValueLockedUSD) || 0,
93
+ priceChange24h: Number(dailyBidBookData.open) > 0
94
+ ? Number(dailyBidBookData.close) / Number(dailyBidBookData.open) - 1
95
95
  : 0,
96
- createdAtTimestamp: Number(bidBook.book.createdAtTimestamp) || 0,
97
- fdv: baseTotalSupply * Number(bidBook.book.base.priceUSD) || 0,
98
- bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp) || 0,
96
+ createdAtTimestamp: Number(dailyBidBookData.book.createdAtTimestamp) || 0,
97
+ fdv: baseTotalSupply * Number(dailyBidBookData.book.base.priceUSD) || 0,
98
+ bidBookUpdatedAt: Number(dailyBidBookData.book.lastTakenTimestamp) || 0,
99
99
  askBookUpdatedAt: 0,
100
100
  };
101
101
  }
102
- else if (askBook) {
103
- const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(askBook.book.quote.id)] ?? 0n), Number(askBook.book.quote.decimals));
102
+ else if (dailyAskBookData) {
103
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyAskBookData.book.quote.id)] ?? 0n), Number(dailyAskBookData.book.quote.decimals));
104
104
  return {
105
105
  chainId,
106
- marketId: `${askBook.book.quote.symbol}/${askBook.book.base.symbol}`,
106
+ marketId: `${dailyAskBookData.book.quote.symbol}/${dailyAskBookData.book.base.symbol}`,
107
107
  base: {
108
- address: getAddress(askBook.book.quote.id),
109
- name: askBook.book.quote.name,
110
- symbol: askBook.book.quote.symbol,
111
- decimals: Number(askBook.book.quote.decimals),
108
+ address: getAddress(dailyAskBookData.book.quote.id),
109
+ name: dailyAskBookData.book.quote.name,
110
+ symbol: dailyAskBookData.book.quote.symbol,
111
+ decimals: Number(dailyAskBookData.book.quote.decimals),
112
112
  },
113
113
  quote: {
114
- address: getAddress(askBook.book.base.id),
115
- name: askBook.book.base.name,
116
- symbol: askBook.book.base.symbol,
117
- decimals: Number(askBook.book.base.decimals),
114
+ address: getAddress(dailyAskBookData.book.base.id),
115
+ name: dailyAskBookData.book.base.name,
116
+ symbol: dailyAskBookData.book.base.symbol,
117
+ decimals: Number(dailyAskBookData.book.base.decimals),
118
118
  },
119
- price: Number(askBook.book.inversePrice) || 0,
120
- priceUSD: Number(askBook.book.quote.priceUSD) || 0,
121
- volume24hUSD: Number(askBook.volumeUSD) || 0,
122
- totalValueLockedUSD: Number(askBook.book.totalValueLockedUSD) || 0,
123
- priceChange24h: Number(askBook.close) > 0
124
- ? Number(askBook.open) / Number(askBook.close) - 1
119
+ price: Number(dailyAskBookData.book.inversePrice) || 0,
120
+ priceUSD: Number(dailyAskBookData.book.quote.priceUSD) || 0,
121
+ volume24hUSD: Number(dailyAskBookData.volumeUSD) || 0,
122
+ totalValueLockedUSD: Number(dailyAskBookData.book.totalValueLockedUSD) || 0,
123
+ priceChange24h: Number(dailyAskBookData.close) > 0
124
+ ? Number(dailyAskBookData.open) / Number(dailyAskBookData.close) - 1
125
125
  : 0,
126
- createdAtTimestamp: Number(askBook.book.createdAtTimestamp) || 0,
127
- fdv: baseTotalSupply * Number(askBook.book.quote.priceUSD) || 0,
126
+ createdAtTimestamp: Number(dailyAskBookData.book.createdAtTimestamp) || 0,
127
+ fdv: baseTotalSupply * Number(dailyAskBookData.book.quote.priceUSD) || 0,
128
+ bidBookUpdatedAt: 0,
129
+ askBookUpdatedAt: Number(dailyAskBookData.book.lastTakenTimestamp) || 0,
130
+ };
131
+ }
132
+ if (books.length >= 3) {
133
+ // TODO: check fee policy if needed
134
+ console.warn(`[fetchMarketSnapshot] too many books for ${token0}/${token1}`);
135
+ return null;
136
+ }
137
+ const bidBook = books.find(({ quote, base }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
138
+ chainId,
139
+ token0: getAddress(base.id),
140
+ token1: getAddress(quote.id),
141
+ })));
142
+ const askBook = books.find(({ quote, base }) => isAddressEqual(getAddress(base.id), getQuoteToken({
143
+ chainId,
144
+ token0: getAddress(quote.id),
145
+ token1: getAddress(base.id),
146
+ })));
147
+ if (bidBook && askBook) {
148
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.base.id)] ?? 0n), Number(bidBook.base.decimals));
149
+ return {
150
+ chainId,
151
+ marketId: `${bidBook.base.symbol}/${bidBook.quote.symbol}`,
152
+ base: {
153
+ address: getAddress(bidBook.base.id),
154
+ name: bidBook.base.name,
155
+ symbol: bidBook.base.symbol,
156
+ decimals: Number(bidBook.base.decimals),
157
+ },
158
+ quote: {
159
+ address: getAddress(bidBook.quote.id),
160
+ name: bidBook.quote.name,
161
+ symbol: bidBook.quote.symbol,
162
+ decimals: Number(bidBook.quote.decimals),
163
+ },
164
+ price: Number(bidBook.price),
165
+ priceUSD: Number(bidBook.base.priceUSD),
166
+ volume24hUSD: 0,
167
+ totalValueLockedUSD: Number(bidBook.totalValueLockedUSD) +
168
+ Number(askBook.totalValueLockedUSD),
169
+ priceChange24h: 0,
170
+ createdAtTimestamp: Math.min(Number(bidBook.lastTakenTimestamp), Number(askBook.lastTakenTimestamp)),
171
+ fdv: baseTotalSupply * Number(bidBook.quote.priceUSD),
172
+ bidBookUpdatedAt: Number(bidBook.lastTakenTimestamp),
173
+ askBookUpdatedAt: Number(askBook.lastTakenTimestamp),
174
+ };
175
+ }
176
+ else if (bidBook) {
177
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.base.id)] ?? 0n), Number(bidBook.base.decimals));
178
+ return {
179
+ chainId,
180
+ marketId: `${bidBook.base.symbol}/${bidBook.quote.symbol}`,
181
+ base: {
182
+ address: getAddress(bidBook.base.id),
183
+ name: bidBook.base.name,
184
+ symbol: bidBook.base.symbol,
185
+ decimals: Number(bidBook.base.decimals),
186
+ },
187
+ quote: {
188
+ address: getAddress(bidBook.quote.id),
189
+ name: bidBook.quote.name,
190
+ symbol: bidBook.quote.symbol,
191
+ decimals: Number(bidBook.quote.decimals),
192
+ },
193
+ price: Number(bidBook.price),
194
+ priceUSD: Number(bidBook.base.priceUSD),
195
+ volume24hUSD: 0,
196
+ totalValueLockedUSD: Number(bidBook.totalValueLockedUSD),
197
+ priceChange24h: 0,
198
+ createdAtTimestamp: Number(bidBook.lastTakenTimestamp),
199
+ fdv: baseTotalSupply * Number(bidBook.quote.priceUSD),
200
+ bidBookUpdatedAt: Number(bidBook.lastTakenTimestamp),
201
+ askBookUpdatedAt: 0,
202
+ };
203
+ }
204
+ else if (askBook) {
205
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(askBook.quote.id)] ?? 0n), Number(askBook.quote.decimals));
206
+ return {
207
+ chainId,
208
+ marketId: `${askBook.quote.symbol}/${askBook.base.symbol}`,
209
+ base: {
210
+ address: getAddress(askBook.quote.id),
211
+ name: askBook.quote.name,
212
+ symbol: askBook.quote.symbol,
213
+ decimals: Number(askBook.quote.decimals),
214
+ },
215
+ quote: {
216
+ address: getAddress(askBook.base.id),
217
+ name: askBook.base.name,
218
+ symbol: askBook.base.symbol,
219
+ decimals: Number(askBook.base.decimals),
220
+ },
221
+ price: Number(askBook.inversePrice),
222
+ priceUSD: Number(askBook.quote.priceUSD),
223
+ volume24hUSD: 0,
224
+ totalValueLockedUSD: Number(askBook.totalValueLockedUSD),
225
+ priceChange24h: 0,
226
+ createdAtTimestamp: Number(askBook.lastTakenTimestamp),
227
+ fdv: baseTotalSupply * Number(askBook.quote.priceUSD),
128
228
  bidBookUpdatedAt: 0,
129
- askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp) || 0,
229
+ askBookUpdatedAt: Number(askBook.lastTakenTimestamp),
130
230
  };
131
231
  }
132
232
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/snapshot.ts"],"names":[],"mappings":"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"}