tardis-dev 16.6.0 → 16.6.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.
Files changed (53) hide show
  1. package/README.md +4 -4
  2. package/dist/consts.d.ts +1 -1
  3. package/dist/consts.js +1 -1
  4. package/dist/consts.js.map +1 -1
  5. package/dist/handy.d.ts +1 -0
  6. package/dist/handy.d.ts.map +1 -1
  7. package/dist/handy.js +18 -0
  8. package/dist/handy.js.map +1 -1
  9. package/dist/instrumentinfo.d.ts +1 -1
  10. package/dist/instrumentinfo.d.ts.map +1 -1
  11. package/dist/instrumentinfo.js +3 -1
  12. package/dist/instrumentinfo.js.map +1 -1
  13. package/dist/mappers/index.d.ts +3 -3
  14. package/dist/mappers/kraken.d.ts.map +1 -1
  15. package/dist/mappers/kraken.js +95 -8
  16. package/dist/mappers/kraken.js.map +1 -1
  17. package/dist/mappers/woox.d.ts +3 -3
  18. package/dist/mappers/woox.d.ts.map +1 -1
  19. package/dist/mappers/woox.js +255 -6
  20. package/dist/mappers/woox.js.map +1 -1
  21. package/dist/realtimefeeds/index.d.ts.map +1 -1
  22. package/dist/realtimefeeds/index.js +0 -2
  23. package/dist/realtimefeeds/index.js.map +1 -1
  24. package/dist/realtimefeeds/kraken.d.ts +1 -0
  25. package/dist/realtimefeeds/kraken.d.ts.map +1 -1
  26. package/dist/realtimefeeds/kraken.js +26 -15
  27. package/dist/realtimefeeds/kraken.js.map +1 -1
  28. package/dist/realtimefeeds/woox.d.ts +1 -0
  29. package/dist/realtimefeeds/woox.d.ts.map +1 -1
  30. package/dist/realtimefeeds/woox.js +41 -25
  31. package/dist/realtimefeeds/woox.js.map +1 -1
  32. package/dist/replay.d.ts.map +1 -1
  33. package/dist/replay.js +4 -6
  34. package/dist/replay.js.map +1 -1
  35. package/dist/stream.d.ts.map +1 -1
  36. package/dist/stream.js +2 -5
  37. package/dist/stream.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/consts.ts +1 -1
  40. package/src/handy.ts +22 -0
  41. package/src/instrumentinfo.ts +5 -2
  42. package/src/mappers/kraken.ts +162 -11
  43. package/src/mappers/woox.ts +371 -7
  44. package/src/realtimefeeds/index.ts +0 -2
  45. package/src/realtimefeeds/kraken.ts +26 -15
  46. package/src/realtimefeeds/woox.ts +63 -26
  47. package/src/replay.ts +4 -7
  48. package/src/stream.ts +2 -5
  49. package/dist/realtimefeeds/ascendex.d.ts +0 -11
  50. package/dist/realtimefeeds/ascendex.d.ts.map +0 -1
  51. package/dist/realtimefeeds/ascendex.js +0 -59
  52. package/dist/realtimefeeds/ascendex.js.map +0 -1
  53. package/src/realtimefeeds/ascendex.ts +0 -73
package/dist/replay.js CHANGED
@@ -7,7 +7,7 @@ import { BinarySplitStream } from "./binarysplit.js";
7
7
  import { clearCacheSync } from "./clearcache.js";
8
8
  import { EXCHANGES, EXCHANGE_CHANNELS_INFO } from "./consts.js";
9
9
  import { debug } from "./debug.js";
10
- import { addDays, getFilters, normalizeMessages, parseAsUTCDate, wait } from "./handy.js";
10
+ import { addDays, createNormalizedSymbolFilter, getFilters, normalizeMessages, parseAsUTCDate, wait } from "./handy.js";
11
11
  import { normalizeBookChanges } from "./mappers/index.js";
12
12
  import { getOptions } from "./options.js";
13
13
  export async function* replay({ exchange, from, to, filters, skipDecoding = undefined, withDisconnects = undefined, apiKey = undefined, withMicroseconds = undefined, autoCleanup = undefined, waitWhenDataNotYetAvailable = undefined }) {
@@ -193,12 +193,9 @@ export function replayNormalized({ exchange, symbols, from, to, withDisconnectMe
193
193
  const filters = getFilters(mappers, symbols);
194
194
  // filter normalized messages by symbol as some exchanges do not provide server side filtering so we could end up with messages
195
195
  // for symbols we've not requested for
196
- const upperCaseSymbols = symbols !== undefined ? symbols.map((s) => s.toUpperCase()) : undefined;
197
- const filter = (symbol) => {
198
- return upperCaseSymbols === undefined || upperCaseSymbols.length === 0 || upperCaseSymbols.includes(symbol);
199
- };
200
196
  const segments = getReplayNormalizedSegments(exchange, normalizers, fromDate, toDate);
201
197
  if (segments.length <= 1) {
198
+ const filter = createNormalizedSymbolFilter(symbols, filters);
202
199
  const messages = replay({
203
200
  exchange,
204
201
  from,
@@ -218,6 +215,7 @@ export function replayNormalized({ exchange, symbols, from, to, withDisconnectMe
218
215
  const { from: segmentFrom, to: segmentTo } = segments[i];
219
216
  const segmentMappers = i === 0 ? mappers : createMappers(segmentFrom);
220
217
  const segmentFilters = getFilters(segmentMappers, symbols);
218
+ const segmentFilter = createNormalizedSymbolFilter(symbols, segmentFilters);
221
219
  const segmentMessages = replay({
222
220
  exchange,
223
221
  from: segmentFrom.toISOString(),
@@ -229,7 +227,7 @@ export function replayNormalized({ exchange, symbols, from, to, withDisconnectMe
229
227
  autoCleanup,
230
228
  waitWhenDataNotYetAvailable
231
229
  });
232
- yield* normalizeMessages(exchange, undefined, segmentMessages, segmentMappers, createMappers, withDisconnectMessages, filter);
230
+ yield* normalizeMessages(exchange, undefined, segmentMessages, segmentMappers, createMappers, withDisconnectMessages, segmentFilter);
233
231
  }
234
232
  }
235
233
  }
@@ -1 +1 @@
1
- {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAU,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE5E,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACxE,KAAK,uBAAuB,CAAC,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,IAAI,GAC1G,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,GACpC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AA+B3B,wBAAgB,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAAE,EACpE,QAAQ,EACR,OAAO,EACP,iBAAyB,EACzB,eAA2B,EAC3B,OAAmB,EACpB,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,qBAAqB,CAC5C,CAAC,SAAS,IAAI,GAAG;IAAE,cAAc,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,SAAS,GAAG;IAAE,cAAc,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAC7G,CAMA;AA4ED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IAAI;IACzE,QAAQ,EAAE,CAAC,CAAA;IACX,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,CAAC,CAAA;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IAAI;IACnF,QAAQ,EAAE,CAAC,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,sBAAsB,CAAC,EAAE,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CACjC,CAAA;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAC/G,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAyB,EAAE,sBAAkC,EAAE,OAAmB,EAAE,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,EACxI,GAAG,WAAW,EAAE,CAAC,GAChB,qBAAqB,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAMtD"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAU,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE5E,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACxE,KAAK,uBAAuB,CAAC,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,IAAI,GAC1G,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,GACpC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AA+B3B,wBAAgB,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAAE,EACpE,QAAQ,EACR,OAAO,EACP,iBAAyB,EACzB,eAA2B,EAC3B,OAAmB,EACpB,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,qBAAqB,CAC5C,CAAC,SAAS,IAAI,GAAG;IAAE,cAAc,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,SAAS,GAAG;IAAE,cAAc,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAC7G,CAMA;AAyED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IAAI;IACzE,QAAQ,EAAE,CAAC,CAAA;IACX,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,CAAC,CAAA;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IAAI;IACnF,QAAQ,EAAE,CAAC,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,sBAAsB,CAAC,EAAE,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CACjC,CAAA;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAC/G,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAyB,EAAE,sBAAkC,EAAE,OAAmB,EAAE,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,EACxI,GAAG,WAAW,EAAE,CAAC,GAChB,qBAAqB,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAMtD"}
package/dist/stream.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { debug } from "./debug.js";
2
- import { getFilters, normalizeMessages } from "./handy.js";
2
+ import { createNormalizedSymbolFilter, getFilters, normalizeMessages } from "./handy.js";
3
3
  import { createRealTimeFeed } from "./realtimefeeds/index.js";
4
4
  async function* _stream({ exchange, filters, timeoutIntervalMS = 10000, withDisconnects = undefined, onError = undefined }) {
5
5
  validateStreamOptions(filters);
@@ -40,10 +40,7 @@ async function* _streamNormalized({ exchange, symbols, timeoutIntervalMS = 10000
40
40
  });
41
41
  // filter normalized messages by symbol as some exchanges do not offer subscribing to specific symbols for some of the channels
42
42
  // for example Phemex market24h channel
43
- const upperCaseSymbols = symbols !== undefined ? symbols.map((s) => s.toUpperCase()) : undefined;
44
- const filter = (symbol) => {
45
- return upperCaseSymbols === undefined || upperCaseSymbols.length === 0 || upperCaseSymbols.includes(symbol);
46
- };
43
+ const filter = createNormalizedSymbolFilter(symbols, filters);
47
44
  const normalizedMessages = normalizeMessages(exchange, symbols, messages, mappers, createMappers, withDisconnectMessages, filter, new Date());
48
45
  for await (const message of normalizedMessages) {
49
46
  yield message;
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tardis-dev",
3
- "version": "16.6.0",
3
+ "version": "16.6.2",
4
4
  "engines": {
5
5
  "node": ">=25"
6
6
  },
package/src/consts.ts CHANGED
@@ -124,7 +124,7 @@ const DERIBIT_CHANNELS = [
124
124
  'instrument.state.any'
125
125
  ] as const
126
126
 
127
- const KRAKEN_CHANNELS = ['trade', 'ticker', 'book', 'spread'] as const
127
+ const KRAKEN_CHANNELS = ['trade', 'ticker', 'book', 'spread', 'instrument'] as const
128
128
 
129
129
  const OKEX_CHANNELS = [
130
130
  'spot/trade',
package/src/handy.ts CHANGED
@@ -819,6 +819,28 @@ export function upperCaseSymbols(symbols?: string[]) {
819
819
  return
820
820
  }
821
821
 
822
+ export function createNormalizedSymbolFilter(symbols: string[] | undefined, filters: Filter<any>[]) {
823
+ if (symbols === undefined || symbols.length === 0) {
824
+ return
825
+ }
826
+
827
+ const allowedSymbols = new Set<string>()
828
+ for (const symbol of symbols) {
829
+ allowedSymbols.add(symbol)
830
+ allowedSymbols.add(symbol.toUpperCase())
831
+ }
832
+
833
+ for (const filter of filters) {
834
+ if (filter.symbols !== undefined) {
835
+ for (const symbol of filter.symbols) {
836
+ allowedSymbols.add(symbol)
837
+ }
838
+ }
839
+ }
840
+
841
+ return (symbol: string) => allowedSymbols.has(symbol)
842
+ }
843
+
822
844
  export function lowerCaseSymbols(symbols?: string[]) {
823
845
  if (symbols !== undefined) {
824
846
  return symbols.map((s) => s.toLowerCase())
@@ -66,7 +66,10 @@ export async function findInstrumentSymbols(
66
66
 
67
67
  return {
68
68
  exchange,
69
- symbols: instruments.map((instrument) => (selector === 'datasetId' ? (instrument.datasetId ?? instrument.id) : instrument.id))
69
+ symbols:
70
+ selector === 'datasetId'
71
+ ? instruments.flatMap((instrument) => instrument.datasetId ?? [])
72
+ : instruments.map((instrument) => instrument.id)
70
73
  }
71
74
  })
72
75
  )
@@ -112,7 +115,7 @@ export type UnderlyingType = 'native' | 'equity' | 'commodity' | 'fixed_income'
112
115
  export interface InstrumentInfo {
113
116
  /** symbol id */
114
117
  id: string
115
- /** dataset symbol id, may differ from id */
118
+ /** dataset symbol id, present after the symbol appears in exported dataset metadata */
116
119
  datasetId?: string
117
120
  /** exchange id */
118
121
  exchange: string
@@ -1,15 +1,22 @@
1
- import { asNonZeroNumberOrUndefined, upperCaseSymbols } from '../handy.ts'
1
+ import { asNonZeroNumberOrUndefined, parseμs } from '../handy.ts'
2
2
  import { BookChange, BookTicker, Trade } from '../types.ts'
3
3
  import { Mapper } from './mapper.ts'
4
- import { exchangeMappers } from './registry.ts'
4
+ import { exchangeMappers, mapper } from './registry.ts'
5
5
 
6
6
  // https://www.kraken.com/features/websocket-api
7
+ const KRAKEN_V2_API_SWITCH_DATE = new Date('2026-07-10T00:00:00.000Z')
7
8
 
8
9
  export const krakenMappers = exchangeMappers({
9
10
  kraken: {
10
- trades: () => krakenTradesMapper,
11
- bookChanges: () => krakenBookChangeMapper,
12
- bookTickers: () => krakenBookTickerMapper
11
+ trades: mapper([{ until: KRAKEN_V2_API_SWITCH_DATE, use: () => krakenTradesMapper }, { use: () => new KrakenV2TradesMapper() }]),
12
+ bookChanges: mapper([
13
+ { until: KRAKEN_V2_API_SWITCH_DATE, use: () => krakenBookChangeMapper },
14
+ { use: () => new KrakenV2BookChangeMapper() }
15
+ ]),
16
+ bookTickers: mapper([
17
+ { until: KRAKEN_V2_API_SWITCH_DATE, use: () => krakenBookTickerMapper },
18
+ { use: () => new KrakenV2BookTickerMapper() }
19
+ ])
13
20
  }
14
21
  })
15
22
 
@@ -24,8 +31,6 @@ const krakenTradesMapper: Mapper<'kraken', Trade> = {
24
31
  },
25
32
 
26
33
  getFilters(symbols?: string[]) {
27
- symbols = upperCaseSymbols(symbols)
28
-
29
34
  return [
30
35
  {
31
36
  channel: 'trade',
@@ -84,8 +89,6 @@ const krakenBookChangeMapper: Mapper<'kraken', BookChange> = {
84
89
  },
85
90
 
86
91
  getFilters(symbols?: string[]) {
87
- symbols = upperCaseSymbols(symbols)
88
-
89
92
  return [
90
93
  {
91
94
  channel: 'book',
@@ -142,8 +145,6 @@ const krakenBookTickerMapper: Mapper<'kraken', BookTicker> = {
142
145
  },
143
146
 
144
147
  getFilters(symbols?: string[]) {
145
- symbols = upperCaseSymbols(symbols)
146
-
147
148
  return [
148
149
  {
149
150
  channel: 'spread',
@@ -226,3 +227,153 @@ type KrakenSpread = [
226
227
  'spread',
227
228
  'XBT/USD'
228
229
  ]
230
+
231
+ /** @see https://docs.kraken.com/api/docs/websocket-v2/trade */
232
+ class KrakenV2TradesMapper implements Mapper<'kraken', Trade> {
233
+ canHandle(message: KrakenV2Trades) {
234
+ return message.channel === 'trade' && message.type === 'update'
235
+ }
236
+
237
+ getFilters(symbols?: string[]) {
238
+ return [{ channel: 'trade', symbols } as const]
239
+ }
240
+
241
+ *map(message: KrakenV2Trades, localTimestamp: Date): IterableIterator<Trade> {
242
+ for (const trade of message.data) {
243
+ const timestamp = new Date(trade.timestamp)
244
+ timestamp.μs = parseμs(trade.timestamp)
245
+
246
+ yield {
247
+ type: 'trade',
248
+ symbol: trade.symbol,
249
+ exchange: 'kraken',
250
+ id: trade.trade_id.toString(),
251
+ price: trade.price,
252
+ amount: trade.qty,
253
+ side: trade.side,
254
+ timestamp,
255
+ localTimestamp
256
+ }
257
+ }
258
+ }
259
+ }
260
+
261
+ /** @see https://docs.kraken.com/api/docs/websocket-v2/book */
262
+ class KrakenV2BookChangeMapper implements Mapper<'kraken', BookChange> {
263
+ canHandle(message: KrakenV2Book) {
264
+ return message.channel === 'book'
265
+ }
266
+
267
+ getFilters(symbols?: string[]) {
268
+ return [{ channel: 'book', symbols } as const]
269
+ }
270
+
271
+ *map(message: KrakenV2Book, localTimestamp: Date): IterableIterator<BookChange> {
272
+ for (const book of message.data) {
273
+ const timestamp = new Date(book.timestamp)
274
+ timestamp.μs = parseμs(book.timestamp)
275
+
276
+ yield {
277
+ type: 'book_change',
278
+ symbol: book.symbol,
279
+ exchange: 'kraken',
280
+ isSnapshot: message.type === 'snapshot',
281
+ bids: book.bids?.map(this.mapBookLevel) ?? [],
282
+ asks: book.asks?.map(this.mapBookLevel) ?? [],
283
+ timestamp,
284
+ localTimestamp
285
+ }
286
+ }
287
+ }
288
+
289
+ private mapBookLevel(level: KrakenV2BookLevel) {
290
+ return {
291
+ price: level.price,
292
+ amount: level.qty
293
+ }
294
+ }
295
+ }
296
+
297
+ /** @see https://docs.kraken.com/api/docs/websocket-v2/ticker */
298
+ class KrakenV2BookTickerMapper implements Mapper<'kraken', BookTicker> {
299
+ canHandle(message: KrakenV2Ticker) {
300
+ return message.channel === 'ticker'
301
+ }
302
+
303
+ getFilters(symbols?: string[]) {
304
+ return [{ channel: 'ticker', symbols } as const]
305
+ }
306
+
307
+ *map(message: KrakenV2Ticker, localTimestamp: Date): IterableIterator<BookTicker> {
308
+ for (const tickerMessage of message.data) {
309
+ const timestamp = new Date(tickerMessage.timestamp)
310
+ timestamp.μs = parseμs(tickerMessage.timestamp)
311
+
312
+ yield {
313
+ type: 'book_ticker',
314
+ symbol: tickerMessage.symbol,
315
+ exchange: 'kraken',
316
+ askAmount: tickerMessage.ask_qty === 0 ? undefined : tickerMessage.ask_qty,
317
+ askPrice: tickerMessage.ask === 0 ? undefined : tickerMessage.ask,
318
+ bidPrice: tickerMessage.bid === 0 ? undefined : tickerMessage.bid,
319
+ bidAmount: tickerMessage.bid_qty === 0 ? undefined : tickerMessage.bid_qty,
320
+ timestamp,
321
+ localTimestamp
322
+ }
323
+ }
324
+ }
325
+ }
326
+
327
+ type KrakenV2Message<Channel extends string, Data> = {
328
+ channel: Channel
329
+ type: 'snapshot' | 'update'
330
+ data: Data[]
331
+ }
332
+
333
+ type KrakenV2Trades = KrakenV2Message<
334
+ 'trade',
335
+ {
336
+ symbol: string
337
+ side: 'buy' | 'sell'
338
+ price: number
339
+ qty: number
340
+ ord_type?: string
341
+ trade_id: number
342
+ timestamp: string
343
+ }
344
+ >
345
+
346
+ type KrakenV2Book = KrakenV2Message<
347
+ 'book',
348
+ {
349
+ symbol: string
350
+ bids?: KrakenV2BookLevel[]
351
+ asks?: KrakenV2BookLevel[]
352
+ checksum?: number
353
+ timestamp: string
354
+ }
355
+ >
356
+
357
+ type KrakenV2BookLevel = {
358
+ price: number
359
+ qty: number
360
+ }
361
+
362
+ type KrakenV2Ticker = KrakenV2Message<
363
+ 'ticker',
364
+ {
365
+ symbol: string
366
+ bid: number
367
+ bid_qty: number
368
+ ask: number
369
+ ask_qty: number
370
+ last: number
371
+ volume: number
372
+ vwap: number
373
+ low: number
374
+ high: number
375
+ change: number
376
+ change_pct: number
377
+ timestamp: string
378
+ }
379
+ >