tardis-dev 13.29.10 → 13.29.12
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/computable/tradebar.js +7 -5
- package/dist/computable/tradebar.js.map +1 -1
- package/dist/mappers/ascendex.d.ts.map +1 -1
- package/dist/mappers/ascendex.js +3 -0
- package/dist/mappers/ascendex.js.map +1 -1
- package/package.json +1 -1
- package/src/computable/tradebar.ts +8 -6
- package/src/mappers/ascendex.ts +4 -0
|
@@ -79,6 +79,8 @@ class TradeBarComputable {
|
|
|
79
79
|
_update(trade) {
|
|
80
80
|
const inProgressBar = this._inProgressBar;
|
|
81
81
|
const isNotOpenedYet = inProgressBar.trades === 0;
|
|
82
|
+
// some exchanges (like dydx) sometimes publish trade data out of order (older trades published after newer ones)
|
|
83
|
+
const tradeIsInCorrectTimeOrder = trade.timestamp.valueOf() >= inProgressBar.timestamp.valueOf();
|
|
82
84
|
if (isNotOpenedYet) {
|
|
83
85
|
inProgressBar.open = trade.price;
|
|
84
86
|
inProgressBar.openTimestamp = trade.timestamp;
|
|
@@ -89,17 +91,17 @@ class TradeBarComputable {
|
|
|
89
91
|
if (inProgressBar.low > trade.price) {
|
|
90
92
|
inProgressBar.low = trade.price;
|
|
91
93
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
+
if (tradeIsInCorrectTimeOrder) {
|
|
95
|
+
inProgressBar.close = trade.price;
|
|
96
|
+
inProgressBar.closeTimestamp = trade.timestamp;
|
|
97
|
+
inProgressBar.timestamp = trade.timestamp;
|
|
98
|
+
}
|
|
94
99
|
inProgressBar.buyVolume += trade.side === 'buy' ? trade.amount : 0;
|
|
95
100
|
inProgressBar.sellVolume += trade.side === 'sell' ? trade.amount : 0;
|
|
96
101
|
inProgressBar.trades += 1;
|
|
97
102
|
inProgressBar.vwap = (inProgressBar.vwap * inProgressBar.volume + trade.price * trade.amount) / (inProgressBar.volume + trade.amount);
|
|
98
103
|
// volume needs to be updated after vwap otherwise vwap calc will go wrong
|
|
99
104
|
inProgressBar.volume += trade.amount;
|
|
100
|
-
if (trade.timestamp.valueOf() > inProgressBar.timestamp.valueOf()) {
|
|
101
|
-
inProgressBar.timestamp = trade.timestamp;
|
|
102
|
-
}
|
|
103
105
|
}
|
|
104
106
|
_reset() {
|
|
105
107
|
const barToReset = this._inProgressBar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tradebar.js","sourceRoot":"","sources":["../../src/computable/tradebar.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tradebar.js","sourceRoot":"","sources":["../../src/computable/tradebar.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ascendex.d.ts","sourceRoot":"","sources":["../../src/mappers/ascendex.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAC1E,OAAO,EAAE,MAAM,EAA2B,MAAM,UAAU,CAAA;AAE1D,qBAAa,oBAAqB,YAAW,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC;IACpE,SAAS,CAAC,OAAO,EAAE,aAAa;IAIhC,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE;;;;IAU5B,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC;CAe5E;AAED,qBAAa,wBAAyB,YAAW,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC;IAC7E,SAAS,CAAC,OAAO,EAAE,qBAAqB,GAAG,6BAA6B;IAIxE,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE;;;;;;;IAc5B,GAAG,CAAC,OAAO,EAAE,qBAAqB,GAAG,6BAA6B,EAAE,cAAc,EAAE,IAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ascendex.d.ts","sourceRoot":"","sources":["../../src/mappers/ascendex.ts"],"names":[],"mappings":"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"}
|
package/dist/mappers/ascendex.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ascendex.js","sourceRoot":"","sources":["../../src/mappers/ascendex.ts"],"names":[],"mappings":";;;AAAA,oCAA2C;AAE3C,qCAA0D;AAE1D,MAAa,oBAAoB;IAC/B,SAAS,CAAC,OAAsB;QAC9B,OAAO,OAAO,CAAC,CAAC,KAAK,QAAQ,CAAA;IAC/B,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,QAAQ;gBACjB,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAsB,EAAE,cAAoB;QAC/C,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE;YAC9B,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,QAAQ,EAAE,UAAU;gBACpB,EAAE,EAAE,SAAS;gBACb,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvB,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;gBACxC,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,cAAc,EAAE,cAAc;aAC/B,CAAA;SACF;IACH,CAAC;CACF;AA9BD,oDA8BC;AAED,MAAa,wBAAwB;IACnC,SAAS,CAAC,OAA8D;QACtE,OAAO,OAAO,CAAC,CAAC,KAAK,gBAAgB,IAAI,OAAO,CAAC,CAAC,KAAK,yBAAyB,CAAA;IAClF,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,gBAAgB;gBACzB,OAAO;aACC;YACV;gBACE,OAAO,EAAE,yBAAyB;gBAClC,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAA8D,EAAE,cAAoB;QACvF,MAAM;YACJ,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,UAAU;YACpB,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,yBAAyB;YACnD,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc;YAC3E,cAAc;SACf,CAAA;IACH,CAAC;IAES,YAAY,CAAC,KAAyB;QAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IAC1B,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"ascendex.js","sourceRoot":"","sources":["../../src/mappers/ascendex.ts"],"names":[],"mappings":";;;AAAA,oCAA2C;AAE3C,qCAA0D;AAE1D,MAAa,oBAAoB;IAC/B,SAAS,CAAC,OAAsB;QAC9B,OAAO,OAAO,CAAC,CAAC,KAAK,QAAQ,CAAA;IAC/B,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,QAAQ;gBACjB,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAsB,EAAE,cAAoB;QAC/C,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE;YAC9B,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,QAAQ,EAAE,UAAU;gBACpB,EAAE,EAAE,SAAS;gBACb,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvB,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;gBACxC,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,cAAc,EAAE,cAAc;aAC/B,CAAA;SACF;IACH,CAAC;CACF;AA9BD,oDA8BC;AAED,MAAa,wBAAwB;IACnC,SAAS,CAAC,OAA8D;QACtE,OAAO,OAAO,CAAC,CAAC,KAAK,gBAAgB,IAAI,OAAO,CAAC,CAAC,KAAK,yBAAyB,CAAA;IAClF,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,gBAAgB;gBACzB,OAAO;aACC;YACV;gBACE,OAAO,EAAE,yBAAyB;gBAClC,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAA8D,EAAE,cAAoB;QACvF,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YAC/D,OAAM;SACP;QAED,MAAM;YACJ,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,UAAU;YACpB,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,yBAAyB;YACnD,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc;YAC3E,cAAc;SACf,CAAA;IACH,CAAC;IAES,YAAY,CAAC,KAAyB;QAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IAC1B,CAAC;CACF;AAzCD,4DAyCC;AAED,MAAa,8BAA8B;IAA3C;QACmB,4BAAuB,GAAG,IAAI,gCAAuB,EAAE,CAAA;IA0C1E,CAAC;IAxCC,SAAS,CAAC,OAA4C;QACpD,OAAO,OAAO,CAAC,CAAC,KAAK,sBAAsB,IAAI,OAAO,CAAC,CAAC,KAAK,QAAQ,CAAA;IACvE,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,sBAAsB;gBAC/B,OAAO,EAAE,EAAc;aACf;YACV;gBACE,OAAO,EAAE,QAAQ;gBACjB,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAA4C,EAAE,cAAoB;QACrE,IAAI,OAAO,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC1B,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YACvG,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAClF,OAAM;SACP;QAED,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE;YACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;YAEtG,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YAC1D,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YACzD,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YAC5D,iBAAiB,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1D,iBAAiB,CAAC,sBAAsB,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;YACjE,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;YAE1D,IAAI,iBAAiB,CAAC,UAAU,EAAE,EAAE;gBAClC,MAAM,iBAAiB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;aACpD;SACF;IACH,CAAC;CACF;AA3CD,wEA2CC;AAED,MAAa,wBAAwB;IACnC,SAAS,CAAC,OAAuB;QAC/B,OAAO,OAAO,CAAC,CAAC,KAAK,KAAK,CAAA;IAC5B,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;QACnC,OAAO;YACL;gBACE,OAAO,EAAE,KAAK;gBACd,OAAO;aACC;SACX,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAuB,EAAE,cAAoB;QAChD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA;QAE5B,MAAM;YACJ,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,UAAU;YAEpB,SAAS,EAAE,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACjF,QAAQ,EAAE,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAChF,QAAQ,EAAE,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAChF,SAAS,EAAE,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACjF,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,cAAc,EAAE,cAAc;SAC/B,CAAA;IACH,CAAC;CACF;AAhCD,4DAgCC"}
|
package/package.json
CHANGED
|
@@ -111,6 +111,9 @@ class TradeBarComputable implements Computable<TradeBar> {
|
|
|
111
111
|
private _update(trade: Trade) {
|
|
112
112
|
const inProgressBar = this._inProgressBar
|
|
113
113
|
const isNotOpenedYet = inProgressBar.trades === 0
|
|
114
|
+
// some exchanges (like dydx) sometimes publish trade data out of order (older trades published after newer ones)
|
|
115
|
+
|
|
116
|
+
const tradeIsInCorrectTimeOrder = trade.timestamp.valueOf() >= inProgressBar.timestamp.valueOf()
|
|
114
117
|
|
|
115
118
|
if (isNotOpenedYet) {
|
|
116
119
|
inProgressBar.open = trade.price
|
|
@@ -124,8 +127,11 @@ class TradeBarComputable implements Computable<TradeBar> {
|
|
|
124
127
|
inProgressBar.low = trade.price
|
|
125
128
|
}
|
|
126
129
|
|
|
127
|
-
|
|
128
|
-
|
|
130
|
+
if (tradeIsInCorrectTimeOrder) {
|
|
131
|
+
inProgressBar.close = trade.price
|
|
132
|
+
inProgressBar.closeTimestamp = trade.timestamp
|
|
133
|
+
inProgressBar.timestamp = trade.timestamp
|
|
134
|
+
}
|
|
129
135
|
|
|
130
136
|
inProgressBar.buyVolume += trade.side === 'buy' ? trade.amount : 0
|
|
131
137
|
inProgressBar.sellVolume += trade.side === 'sell' ? trade.amount : 0
|
|
@@ -133,10 +139,6 @@ class TradeBarComputable implements Computable<TradeBar> {
|
|
|
133
139
|
inProgressBar.vwap = (inProgressBar.vwap * inProgressBar.volume + trade.price * trade.amount) / (inProgressBar.volume + trade.amount)
|
|
134
140
|
// volume needs to be updated after vwap otherwise vwap calc will go wrong
|
|
135
141
|
inProgressBar.volume += trade.amount
|
|
136
|
-
|
|
137
|
-
if (trade.timestamp.valueOf() > inProgressBar.timestamp.valueOf()) {
|
|
138
|
-
inProgressBar.timestamp = trade.timestamp
|
|
139
|
-
}
|
|
140
142
|
}
|
|
141
143
|
|
|
142
144
|
private _reset() {
|
package/src/mappers/ascendex.ts
CHANGED
|
@@ -54,6 +54,10 @@ export class AscendexBookChangeMapper implements Mapper<'ascendex', BookChange>
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
*map(message: AscendexDepthRealTime | AscendexDepthRealTimeSnapshot, localTimestamp: Date): IterableIterator<BookChange> {
|
|
57
|
+
if (!message.symbol || !message.data.bids || !message.data.asks) {
|
|
58
|
+
return
|
|
59
|
+
}
|
|
60
|
+
|
|
57
61
|
yield {
|
|
58
62
|
type: 'book_change',
|
|
59
63
|
symbol: message.symbol,
|