tardis-dev 12.6.2 → 12.6.7

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 (90) hide show
  1. package/dist/apikeyaccessinfo.js +1 -1
  2. package/dist/apikeyaccessinfo.js.map +1 -1
  3. package/dist/clearcache.js +12 -12
  4. package/dist/clearcache.js.map +1 -1
  5. package/dist/combine.js +1 -1
  6. package/dist/combine.js.map +1 -1
  7. package/dist/computable/booksnapshot.d.ts.map +1 -1
  8. package/dist/computable/booksnapshot.js +1 -1
  9. package/dist/computable/booksnapshot.js.map +1 -1
  10. package/dist/computable/tradebar.d.ts.map +1 -1
  11. package/dist/computable/tradebar.js.map +1 -1
  12. package/dist/debug.js +1 -1
  13. package/dist/debug.js.map +1 -1
  14. package/dist/downloaddatasets.js +13 -13
  15. package/dist/downloaddatasets.js.map +1 -1
  16. package/dist/exchangedetails.js +1 -1
  17. package/dist/exchangedetails.js.map +1 -1
  18. package/dist/filter.js.map +1 -1
  19. package/dist/handy.js +8 -8
  20. package/dist/handy.js.map +1 -1
  21. package/dist/instrumentinfo.js +1 -1
  22. package/dist/instrumentinfo.js.map +1 -1
  23. package/dist/mappers/binance.d.ts.map +1 -1
  24. package/dist/mappers/binance.js +2 -2
  25. package/dist/mappers/binance.js.map +1 -1
  26. package/dist/mappers/binanceoptions.js +10 -10
  27. package/dist/mappers/binanceoptions.js.map +1 -1
  28. package/dist/mappers/bitflyer.js +1 -1
  29. package/dist/mappers/bitflyer.js.map +1 -1
  30. package/dist/mappers/coinbase.js +2 -2
  31. package/dist/mappers/coinbase.js.map +1 -1
  32. package/dist/mappers/ftx.js +2 -2
  33. package/dist/mappers/ftx.js.map +1 -1
  34. package/dist/mappers/huobi.d.ts.map +1 -1
  35. package/dist/mappers/huobi.js +11 -11
  36. package/dist/mappers/huobi.js.map +1 -1
  37. package/dist/mappers/okex.js +14 -14
  38. package/dist/mappers/okex.js.map +1 -1
  39. package/dist/mappers/phemex.d.ts.map +1 -1
  40. package/dist/mappers/phemex.js.map +1 -1
  41. package/dist/realtimefeeds/ascendex.js +2 -2
  42. package/dist/realtimefeeds/ascendex.js.map +1 -1
  43. package/dist/realtimefeeds/binance.js +1 -1
  44. package/dist/realtimefeeds/binance.js.map +1 -1
  45. package/dist/realtimefeeds/bitmex.js +1 -1
  46. package/dist/realtimefeeds/bitmex.js.map +1 -1
  47. package/dist/realtimefeeds/ftx.js +1 -1
  48. package/dist/realtimefeeds/ftx.js.map +1 -1
  49. package/dist/realtimefeeds/huobi.js +7 -7
  50. package/dist/realtimefeeds/huobi.js.map +1 -1
  51. package/dist/realtimefeeds/okex.js +1 -1
  52. package/dist/realtimefeeds/okex.js.map +1 -1
  53. package/dist/realtimefeeds/realtimefeed.js +9 -9
  54. package/dist/realtimefeeds/realtimefeed.js.map +1 -1
  55. package/dist/replay.d.ts.map +1 -1
  56. package/dist/replay.js +34 -36
  57. package/dist/replay.js.map +1 -1
  58. package/dist/stream.js +4 -4
  59. package/dist/stream.js.map +1 -1
  60. package/dist/worker.js +12 -12
  61. package/dist/worker.js.map +1 -1
  62. package/package.json +19 -18
  63. package/src/computable/booksnapshot.ts +4 -2
  64. package/src/computable/tradebar.ts +4 -1
  65. package/src/downloaddatasets.ts +188 -188
  66. package/src/filter.ts +69 -69
  67. package/src/instrumentinfo.ts +1 -1
  68. package/src/mappers/ascendex.ts +156 -156
  69. package/src/mappers/binance.ts +6 -3
  70. package/src/mappers/coinflex.ts +159 -159
  71. package/src/mappers/delta.ts +175 -175
  72. package/src/mappers/dydx.ts +303 -303
  73. package/src/mappers/gateio.ts +117 -117
  74. package/src/mappers/gateiofutures.ts +185 -185
  75. package/src/mappers/huobi.ts +4 -2
  76. package/src/mappers/phemex.ts +179 -177
  77. package/src/mappers/poloniex.ts +150 -150
  78. package/src/mappers/serum.ts +103 -103
  79. package/src/mappers/upbit.ts +104 -104
  80. package/src/realtimefeeds/ascendex.ts +65 -65
  81. package/src/realtimefeeds/coinflex.ts +29 -29
  82. package/src/realtimefeeds/delta.ts +27 -27
  83. package/src/realtimefeeds/dydx.ts +40 -40
  84. package/src/realtimefeeds/gateio.ts +41 -41
  85. package/src/realtimefeeds/gateiofutures.ts +90 -90
  86. package/src/realtimefeeds/poloniex.ts +28 -28
  87. package/src/realtimefeeds/realtimefeed.ts +2 -2
  88. package/src/realtimefeeds/upbit.ts +35 -35
  89. package/src/replay.ts +7 -8
  90. package/src/stream.ts +1 -1
@@ -1,175 +1,175 @@
1
- import { Mapper, PendingTickerInfoHelper } from './mapper'
2
- import { Trade, BookChange, DerivativeTicker } from '../types'
3
-
4
- const fromMicroSecondsToDate = (micros: number) => {
5
- const timestamp = new Date(micros / 1000)
6
- timestamp.μs = micros % 1000
7
-
8
- return timestamp
9
- }
10
-
11
- export class DeltaTradesMapper implements Mapper<'delta', Trade> {
12
- constructor(private _useV2Channels: boolean) {}
13
-
14
- canHandle(message: DeltaTrade) {
15
- return message.type === (this._useV2Channels ? 'all_trades' : 'recent_trade')
16
- }
17
-
18
- getFilters(symbols?: string[]) {
19
- return [
20
- {
21
- channel: this._useV2Channels ? 'all_trades' : 'recent_trade',
22
- symbols
23
- } as const
24
- ]
25
- }
26
-
27
- *map(message: DeltaTrade, localTimestamp: Date): IterableIterator<Trade> {
28
- yield {
29
- type: 'trade',
30
- symbol: message.symbol,
31
- exchange: 'delta',
32
- id: undefined,
33
- price: Number(message.price),
34
- amount: Number(message.size),
35
- side: message.buyer_role === 'taker' ? 'buy' : 'sell',
36
- timestamp: fromMicroSecondsToDate(message.timestamp),
37
- localTimestamp: localTimestamp
38
- }
39
- }
40
- }
41
-
42
- const mapBookLevel = (level: DeltaBookLevel) => {
43
- return {
44
- price: Number(level.limit_price),
45
- amount: Number(level.size)
46
- }
47
- }
48
-
49
- export const deltaBookChangeMapper: Mapper<'delta', BookChange> = {
50
- canHandle(message: DeltaL2OrderBook) {
51
- return message.type === 'l2_orderbook'
52
- },
53
-
54
- getFilters(symbols?: string[]) {
55
- return [
56
- {
57
- channel: 'l2_orderbook',
58
- symbols
59
- } as const
60
- ]
61
- },
62
-
63
- *map(message: DeltaL2OrderBook, localTimestamp: Date): IterableIterator<BookChange> {
64
- yield {
65
- type: 'book_change',
66
- symbol: message.symbol,
67
- exchange: 'delta',
68
- isSnapshot: true,
69
- bids: message.buy.map(mapBookLevel),
70
- asks: message.sell.map(mapBookLevel),
71
- timestamp: message.timestamp !== undefined ? fromMicroSecondsToDate(message.timestamp) : localTimestamp,
72
- localTimestamp
73
- }
74
- }
75
- }
76
-
77
- export class DeltaDerivativeTickerMapper implements Mapper<'delta', DerivativeTicker> {
78
- constructor(private _useV2Channels: boolean) {}
79
-
80
- private readonly pendingTickerInfoHelper = new PendingTickerInfoHelper()
81
-
82
- canHandle(message: DeltaTrade | DeltaMarkPrice | DeltaFundingRate) {
83
- return (
84
- message.type === (this._useV2Channels ? 'all_trades' : 'recent_trade') ||
85
- message.type === 'funding_rate' ||
86
- message.type === 'mark_price'
87
- )
88
- }
89
-
90
- getFilters(symbols?: string[]) {
91
- return [
92
- {
93
- channel: this._useV2Channels ? 'all_trades' : 'recent_trade',
94
- symbols
95
- } as const,
96
- {
97
- channel: 'funding_rate',
98
- symbols
99
- } as const,
100
- {
101
- channel: 'mark_price',
102
- symbols
103
- } as const
104
- ]
105
- }
106
-
107
- *map(message: DeltaTrade | DeltaMarkPrice | DeltaFundingRate, localTimestamp: Date): IterableIterator<DerivativeTicker> {
108
- const pendingTickerInfo = this.pendingTickerInfoHelper.getPendingTickerInfo(message.symbol.replace('MARK:', ''), 'delta')
109
-
110
- if (message.type === 'recent_trade' || message.type === 'all_trades') {
111
- pendingTickerInfo.updateLastPrice(Number(message.price))
112
- }
113
- if (message.type === 'mark_price') {
114
- pendingTickerInfo.updateMarkPrice(Number(message.price))
115
- }
116
-
117
- if (message.type === 'funding_rate') {
118
- if (message.funding_rate !== undefined) {
119
- pendingTickerInfo.updateFundingRate(Number(message.funding_rate))
120
- }
121
-
122
- if (message.predicted_funding_rate !== undefined) {
123
- pendingTickerInfo.updatePredictedFundingRate(Number(message.predicted_funding_rate))
124
- }
125
-
126
- if (message.next_funding_realization !== undefined) {
127
- pendingTickerInfo.updateFundingTimestamp(fromMicroSecondsToDate(message.next_funding_realization))
128
- }
129
- }
130
-
131
- pendingTickerInfo.updateTimestamp(fromMicroSecondsToDate(message.timestamp))
132
-
133
- if (pendingTickerInfo.hasChanged()) {
134
- yield pendingTickerInfo.getSnapshot(localTimestamp)
135
- }
136
- }
137
- }
138
-
139
- type DeltaTrade = {
140
- buyer_role: 'taker' | 'maker'
141
- price: string
142
- size: number | string
143
- symbol: string
144
- timestamp: number
145
- type: 'recent_trade' | 'all_trades'
146
- }
147
-
148
- type DeltaBookLevel = {
149
- limit_price: string
150
- size: number | string
151
- }
152
-
153
- type DeltaL2OrderBook = {
154
- buy: DeltaBookLevel[]
155
- sell: DeltaBookLevel[]
156
- symbol: string
157
- timestamp?: number
158
- type: 'l2_orderbook'
159
- }
160
-
161
- type DeltaMarkPrice = {
162
- price: string
163
- symbol: string
164
- timestamp: number
165
- type: 'mark_price'
166
- }
167
-
168
- type DeltaFundingRate = {
169
- funding_rate?: string | number
170
- next_funding_realization?: number
171
- predicted_funding_rate?: number
172
- symbol: string
173
- timestamp: number
174
- type: 'funding_rate'
175
- }
1
+ import { Mapper, PendingTickerInfoHelper } from './mapper'
2
+ import { Trade, BookChange, DerivativeTicker } from '../types'
3
+
4
+ const fromMicroSecondsToDate = (micros: number) => {
5
+ const timestamp = new Date(micros / 1000)
6
+ timestamp.μs = micros % 1000
7
+
8
+ return timestamp
9
+ }
10
+
11
+ export class DeltaTradesMapper implements Mapper<'delta', Trade> {
12
+ constructor(private _useV2Channels: boolean) {}
13
+
14
+ canHandle(message: DeltaTrade) {
15
+ return message.type === (this._useV2Channels ? 'all_trades' : 'recent_trade')
16
+ }
17
+
18
+ getFilters(symbols?: string[]) {
19
+ return [
20
+ {
21
+ channel: this._useV2Channels ? 'all_trades' : 'recent_trade',
22
+ symbols
23
+ } as const
24
+ ]
25
+ }
26
+
27
+ *map(message: DeltaTrade, localTimestamp: Date): IterableIterator<Trade> {
28
+ yield {
29
+ type: 'trade',
30
+ symbol: message.symbol,
31
+ exchange: 'delta',
32
+ id: undefined,
33
+ price: Number(message.price),
34
+ amount: Number(message.size),
35
+ side: message.buyer_role === 'taker' ? 'buy' : 'sell',
36
+ timestamp: fromMicroSecondsToDate(message.timestamp),
37
+ localTimestamp: localTimestamp
38
+ }
39
+ }
40
+ }
41
+
42
+ const mapBookLevel = (level: DeltaBookLevel) => {
43
+ return {
44
+ price: Number(level.limit_price),
45
+ amount: Number(level.size)
46
+ }
47
+ }
48
+
49
+ export const deltaBookChangeMapper: Mapper<'delta', BookChange> = {
50
+ canHandle(message: DeltaL2OrderBook) {
51
+ return message.type === 'l2_orderbook'
52
+ },
53
+
54
+ getFilters(symbols?: string[]) {
55
+ return [
56
+ {
57
+ channel: 'l2_orderbook',
58
+ symbols
59
+ } as const
60
+ ]
61
+ },
62
+
63
+ *map(message: DeltaL2OrderBook, localTimestamp: Date): IterableIterator<BookChange> {
64
+ yield {
65
+ type: 'book_change',
66
+ symbol: message.symbol,
67
+ exchange: 'delta',
68
+ isSnapshot: true,
69
+ bids: message.buy.map(mapBookLevel),
70
+ asks: message.sell.map(mapBookLevel),
71
+ timestamp: message.timestamp !== undefined ? fromMicroSecondsToDate(message.timestamp) : localTimestamp,
72
+ localTimestamp
73
+ }
74
+ }
75
+ }
76
+
77
+ export class DeltaDerivativeTickerMapper implements Mapper<'delta', DerivativeTicker> {
78
+ constructor(private _useV2Channels: boolean) {}
79
+
80
+ private readonly pendingTickerInfoHelper = new PendingTickerInfoHelper()
81
+
82
+ canHandle(message: DeltaTrade | DeltaMarkPrice | DeltaFundingRate) {
83
+ return (
84
+ message.type === (this._useV2Channels ? 'all_trades' : 'recent_trade') ||
85
+ message.type === 'funding_rate' ||
86
+ message.type === 'mark_price'
87
+ )
88
+ }
89
+
90
+ getFilters(symbols?: string[]) {
91
+ return [
92
+ {
93
+ channel: this._useV2Channels ? 'all_trades' : 'recent_trade',
94
+ symbols
95
+ } as const,
96
+ {
97
+ channel: 'funding_rate',
98
+ symbols
99
+ } as const,
100
+ {
101
+ channel: 'mark_price',
102
+ symbols
103
+ } as const
104
+ ]
105
+ }
106
+
107
+ *map(message: DeltaTrade | DeltaMarkPrice | DeltaFundingRate, localTimestamp: Date): IterableIterator<DerivativeTicker> {
108
+ const pendingTickerInfo = this.pendingTickerInfoHelper.getPendingTickerInfo(message.symbol.replace('MARK:', ''), 'delta')
109
+
110
+ if (message.type === 'recent_trade' || message.type === 'all_trades') {
111
+ pendingTickerInfo.updateLastPrice(Number(message.price))
112
+ }
113
+ if (message.type === 'mark_price') {
114
+ pendingTickerInfo.updateMarkPrice(Number(message.price))
115
+ }
116
+
117
+ if (message.type === 'funding_rate') {
118
+ if (message.funding_rate !== undefined) {
119
+ pendingTickerInfo.updateFundingRate(Number(message.funding_rate))
120
+ }
121
+
122
+ if (message.predicted_funding_rate !== undefined) {
123
+ pendingTickerInfo.updatePredictedFundingRate(Number(message.predicted_funding_rate))
124
+ }
125
+
126
+ if (message.next_funding_realization !== undefined) {
127
+ pendingTickerInfo.updateFundingTimestamp(fromMicroSecondsToDate(message.next_funding_realization))
128
+ }
129
+ }
130
+
131
+ pendingTickerInfo.updateTimestamp(fromMicroSecondsToDate(message.timestamp))
132
+
133
+ if (pendingTickerInfo.hasChanged()) {
134
+ yield pendingTickerInfo.getSnapshot(localTimestamp)
135
+ }
136
+ }
137
+ }
138
+
139
+ type DeltaTrade = {
140
+ buyer_role: 'taker' | 'maker'
141
+ price: string
142
+ size: number | string
143
+ symbol: string
144
+ timestamp: number
145
+ type: 'recent_trade' | 'all_trades'
146
+ }
147
+
148
+ type DeltaBookLevel = {
149
+ limit_price: string
150
+ size: number | string
151
+ }
152
+
153
+ type DeltaL2OrderBook = {
154
+ buy: DeltaBookLevel[]
155
+ sell: DeltaBookLevel[]
156
+ symbol: string
157
+ timestamp?: number
158
+ type: 'l2_orderbook'
159
+ }
160
+
161
+ type DeltaMarkPrice = {
162
+ price: string
163
+ symbol: string
164
+ timestamp: number
165
+ type: 'mark_price'
166
+ }
167
+
168
+ type DeltaFundingRate = {
169
+ funding_rate?: string | number
170
+ next_funding_realization?: number
171
+ predicted_funding_rate?: number
172
+ symbol: string
173
+ timestamp: number
174
+ type: 'funding_rate'
175
+ }