@quantform/core 0.3.235 → 0.3.242

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 (63) hide show
  1. package/dist/adapter/adapter-aggregate.js +5 -5
  2. package/dist/adapter/adapter-aggregate.js.map +1 -1
  3. package/dist/adapter/backtester/backtester-adapter.d.ts +2 -3
  4. package/dist/adapter/backtester/backtester-adapter.js.map +1 -1
  5. package/dist/adapter/backtester/backtester-streamer.d.ts +6 -0
  6. package/dist/adapter/backtester/backtester-streamer.js +10 -7
  7. package/dist/adapter/backtester/backtester-streamer.js.map +1 -1
  8. package/dist/adapter/backtester/backtester-streamer.spec.js +9 -7
  9. package/dist/adapter/backtester/backtester-streamer.spec.js.map +1 -1
  10. package/dist/adapter/paper/paper-adapter.js +2 -2
  11. package/dist/adapter/paper/paper-adapter.js.map +1 -1
  12. package/dist/bin.d.ts +0 -1
  13. package/dist/bin.js +1 -7
  14. package/dist/bin.js.map +1 -1
  15. package/dist/domain/asset.d.ts +3 -3
  16. package/dist/domain/asset.js +8 -8
  17. package/dist/domain/asset.js.map +1 -1
  18. package/dist/domain/asset.spec.js +4 -4
  19. package/dist/domain/asset.spec.js.map +1 -1
  20. package/dist/domain/instrument.d.ts +1 -1
  21. package/dist/domain/instrument.js +6 -6
  22. package/dist/domain/instrument.js.map +1 -1
  23. package/dist/domain/instrument.spec.js +7 -7
  24. package/dist/domain/instrument.spec.js.map +1 -1
  25. package/dist/domain/orderbook.d.ts +0 -1
  26. package/dist/ipc.d.ts +10 -5
  27. package/dist/ipc.js +81 -38
  28. package/dist/ipc.js.map +1 -1
  29. package/dist/ipc.spec.js +45 -1
  30. package/dist/ipc.spec.js.map +1 -1
  31. package/dist/session/session.d.ts +1 -1
  32. package/dist/session/session.js +9 -9
  33. package/dist/session/session.js.map +1 -1
  34. package/dist/shared/index.d.ts +1 -0
  35. package/dist/shared/index.js +1 -0
  36. package/dist/shared/index.js.map +1 -1
  37. package/dist/shared/task.d.ts +6 -0
  38. package/dist/shared/task.js +25 -0
  39. package/dist/shared/task.js.map +1 -0
  40. package/dist/store/event/store-instrument.event.js +1 -1
  41. package/dist/store/event/store-instrument.event.js.map +1 -1
  42. package/dist/tests/backtester-adapter.spec.js +7 -5
  43. package/dist/tests/backtester-adapter.spec.js.map +1 -1
  44. package/dist/tsconfig.tsbuildinfo +1 -1
  45. package/package.json +1 -1
  46. package/src/adapter/adapter-aggregate.ts +5 -5
  47. package/src/adapter/backtester/backtester-adapter.ts +2 -3
  48. package/src/adapter/backtester/backtester-streamer.spec.ts +9 -7
  49. package/src/adapter/backtester/backtester-streamer.ts +36 -7
  50. package/src/adapter/paper/paper-adapter.ts +2 -2
  51. package/src/bin.ts +0 -11
  52. package/src/domain/asset.spec.ts +4 -4
  53. package/src/domain/asset.ts +9 -9
  54. package/src/domain/instrument.spec.ts +7 -7
  55. package/src/domain/instrument.ts +6 -6
  56. package/src/domain/orderbook.ts +1 -1
  57. package/src/ipc.spec.ts +59 -4
  58. package/src/ipc.ts +93 -41
  59. package/src/session/session.ts +9 -9
  60. package/src/shared/index.ts +1 -0
  61. package/src/shared/task.ts +30 -0
  62. package/src/store/event/store-instrument.event.ts +1 -1
  63. package/src/tests/backtester-adapter.spec.ts +7 -5
@@ -11,16 +11,16 @@ class AdapterAggregate {
11
11
  adapters.forEach(it => (this.adapter[it.name] = it));
12
12
  }
13
13
  async awake(usePrivateScope = true) {
14
- for (const exchange in this.adapter) {
15
- await this.dispatch(exchange, new adapter_event_1.AdapterAwakeCommand());
14
+ for (const adapter in this.adapter) {
15
+ await this.dispatch(adapter, new adapter_event_1.AdapterAwakeCommand());
16
16
  if (usePrivateScope) {
17
- await this.dispatch(exchange, new adapter_event_1.AdapterAccountCommand());
17
+ await this.dispatch(adapter, new adapter_event_1.AdapterAccountCommand());
18
18
  }
19
19
  }
20
20
  }
21
21
  async dispose() {
22
- for (const exchange in this.adapter) {
23
- await this.dispatch(exchange, new adapter_event_1.AdapterDisposeCommand());
22
+ for (const adapter in this.adapter) {
23
+ await this.dispatch(adapter, new adapter_event_1.AdapterDisposeCommand());
24
24
  }
25
25
  }
26
26
  dispatch(adapterName, event) {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-aggregate.js","sourceRoot":"","sources":["../../src/adapter/adapter-aggregate.ts"],"names":[],"mappings":";;;AACA,wBAA4C;AAC5C,sCAAmC;AACnC,mDAIyB;AAMzB,MAAa,gBAAgB;IAG3B,YAA6B,KAAY,EAAE,QAAmB;QAAjC,UAAK,GAAL,KAAK,CAAO;QAFxB,YAAO,GAA4B,EAAE,CAAC;QAGrD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAMD,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI;QAChC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;YACnC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,mCAAmB,EAAE,CAAC,CAAC;YAEzD,IAAI,eAAe,EAAE;gBACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,qCAAqB,EAAE,CAAC,CAAC;aAC5D;SACF;IACH,CAAC;IAKD,KAAK,CAAC,OAAO;QACX,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;YACnC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,qCAAqB,EAAE,CAAC,CAAC;SAC5D;IACH,CAAC;IAQD,QAAQ,CACN,WAAmB,EACnB,KAAa;QAEb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE1C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CACb,oBAAoB,WAAW,qDAAqD,CACrF,CAAC;SACH;QAED,IAAI;YACF,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,iBAAc,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SACzE;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;CACF;AAtDD,4CAsDC"}
1
+ {"version":3,"file":"adapter-aggregate.js","sourceRoot":"","sources":["../../src/adapter/adapter-aggregate.ts"],"names":[],"mappings":";;;AACA,wBAA4C;AAC5C,sCAAmC;AACnC,mDAIyB;AAMzB,MAAa,gBAAgB;IAG3B,YAA6B,KAAY,EAAE,QAAmB;QAAjC,UAAK,GAAL,KAAK,CAAO;QAFxB,YAAO,GAA4B,EAAE,CAAC;QAGrD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAMD,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI;QAChC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE;YAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,mCAAmB,EAAE,CAAC,CAAC;YAExD,IAAI,eAAe,EAAE;gBACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,qCAAqB,EAAE,CAAC,CAAC;aAC3D;SACF;IACH,CAAC;IAKD,KAAK,CAAC,OAAO;QACX,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE;YAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,qCAAqB,EAAE,CAAC,CAAC;SAC3D;IACH,CAAC;IAQD,QAAQ,CACN,WAAmB,EACnB,KAAa;QAEb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE1C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CACb,oBAAoB,WAAW,qDAAqD,CACrF,CAAC;SACH;QAED,IAAI;YACF,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,iBAAc,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SACzE;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;CACF;AAtDD,4CAsDC"}
@@ -1,13 +1,12 @@
1
1
  import { Adapter, AdapterContext } from '..';
2
- import { BacktesterStreamer } from './backtester-streamer';
2
+ import { BacktesterListener, BacktesterStreamer } from './backtester-streamer';
3
3
  import { PaperAdapter, PaperOptions } from '../paper';
4
4
  import { timestamp } from '../../shared';
5
5
  import { AdapterSubscribeCommand, AdapterHistoryQuery } from '../adapter.event';
6
6
  export declare class BacktesterOptions extends PaperOptions {
7
7
  from: timestamp;
8
8
  to: timestamp;
9
- progress?: (timestamp: number) => void;
10
- completed?: () => void;
9
+ listener?: BacktesterListener;
11
10
  }
12
11
  export declare class BacktesterAdapter extends Adapter {
13
12
  readonly decoratedAdapter: Adapter;
@@ -1 +1 @@
1
- {"version":3,"file":"backtester-adapter.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0BAA6C;AAE7C,oCAAsD;AACtD,8CAA6C;AAE7C,oDAAgF;AAChF,6CAAgE;AAEhE,MAAa,iBAAkB,SAAQ,oBAAY;CAKlD;AALD,8CAKC;AAED,MAAa,iBAAkB,SAAQ,WAAO;IAG5C,YAAqB,gBAAyB,EAAW,QAA4B;QACnF,KAAK,EAAE,CAAC;QADW,qBAAgB,GAAhB,gBAAgB,CAAS;QAAW,aAAQ,GAAR,QAAQ,CAAoB;QAF5E,SAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IAI3C,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAED,mBAAmB,CAAC,OAAqB;QACvC,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,KAAuB,EAAE,OAAuB;QAC7D,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAGD,WAAW,CAAC,OAAgC,EAAE,OAAuB;QACnE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,KAAK,CAAC,QAAQ,CACpB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CACvB,EAAE,CAAC,EAAE,CAAC,IAAI,mCAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CACnE,CACF,CAAC;IACJ,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,KAA0B,EAAE,OAAuB;QACjE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEtE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5B,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAtBC;IADC,IAAA,eAAO,EAAC,uCAAuB,CAAC;;qCACZ,uCAAuB,EAAW,kBAAc;;oDAUpE;AAGD;IADC,IAAA,eAAO,EAAC,mCAAmB,CAAC;;qCACN,mCAAmB,EAAW,kBAAc;;kDAQlE;AAzCH,8CA0CC"}
1
+ {"version":3,"file":"backtester-adapter.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0BAA6C;AAE7C,oCAAsD;AACtD,8CAA6C;AAE7C,oDAAgF;AAChF,6CAAgE;AAEhE,MAAa,iBAAkB,SAAQ,oBAAY;CAIlD;AAJD,8CAIC;AAED,MAAa,iBAAkB,SAAQ,WAAO;IAG5C,YAAqB,gBAAyB,EAAW,QAA4B;QACnF,KAAK,EAAE,CAAC;QADW,qBAAgB,GAAhB,gBAAgB,CAAS;QAAW,aAAQ,GAAR,QAAQ,CAAoB;QAF5E,SAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IAI3C,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAED,mBAAmB,CAAC,OAAqB;QACvC,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,KAAuB,EAAE,OAAuB;QAC7D,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAGD,WAAW,CAAC,OAAgC,EAAE,OAAuB;QACnE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,KAAK,CAAC,QAAQ,CACpB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CACvB,EAAE,CAAC,EAAE,CAAC,IAAI,mCAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CACnE,CACF,CAAC;IACJ,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,KAA0B,EAAE,OAAuB;QACjE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEtE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5B,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAtBC;IADC,IAAA,eAAO,EAAC,uCAAuB,CAAC;;qCACZ,uCAAuB,EAAW,kBAAc;;oDAUpE;AAGD;IADC,IAAA,eAAO,EAAC,mCAAmB,CAAC;;qCACN,mCAAmB,EAAW,kBAAc;;kDAQlE;AAzCH,8CA0CC"}
@@ -3,10 +3,16 @@ import { Store } from '../../store';
3
3
  import { timestamp } from '../../shared';
4
4
  import { Feed } from '../../storage';
5
5
  import { BacktesterOptions } from './backtester-adapter';
6
+ export interface BacktesterListener {
7
+ onBacktestStarted?(streamer: BacktesterStreamer): void;
8
+ onBacktestUpdated?(streamer: BacktesterStreamer): void;
9
+ onBacktestCompleted?(streamer: BacktesterStreamer): void;
10
+ }
6
11
  export declare class BacktesterStreamer {
7
12
  private readonly store;
8
13
  private readonly feed;
9
14
  private readonly options;
15
+ private sequenceUpdateBatch;
10
16
  private cursor;
11
17
  private stopAcquire;
12
18
  timestamp: timestamp;
@@ -7,6 +7,7 @@ class BacktesterStreamer {
7
7
  this.store = store;
8
8
  this.feed = feed;
9
9
  this.options = options;
10
+ this.sequenceUpdateBatch = 10000;
10
11
  this.cursor = {};
11
12
  this.stopAcquire = 1;
12
13
  this.sequence = 0;
@@ -30,21 +31,23 @@ class BacktesterStreamer {
30
31
  if (this.stopAcquire != 0) {
31
32
  return;
32
33
  }
33
- if (this.options.progress) {
34
- this.options.progress(this.timestamp);
34
+ if (this.sequence == 0) {
35
+ if (this.options.listener.onBacktestStarted) {
36
+ this.options.listener.onBacktestStarted(this);
37
+ }
35
38
  }
36
39
  while (await this.processNext()) {
37
- if (this.sequence % 10000 == 0) {
38
- if (this.options.progress) {
39
- this.options.progress(this.timestamp);
40
+ if (this.sequence % this.sequenceUpdateBatch == 0) {
41
+ if (this.options.listener.onBacktestUpdated) {
42
+ this.options.listener.onBacktestUpdated(this);
40
43
  }
41
44
  }
42
45
  if (this.stopAcquire > 0) {
43
46
  return;
44
47
  }
45
48
  }
46
- if (this.options.completed) {
47
- this.options.completed();
49
+ if (this.options.listener.onBacktestCompleted) {
50
+ this.options.listener.onBacktestCompleted(this);
48
51
  }
49
52
  }
50
53
  async processNext() {
@@ -1 +1 @@
1
- {"version":3,"file":"backtester-streamer.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-streamer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backtester-streamer.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-streamer.ts"],"names":[],"mappings":"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"}
@@ -16,13 +16,15 @@ describe('backtester streamer tests', () => {
16
16
  balance: {},
17
17
  from: 0,
18
18
  to: 10,
19
- completed: () => {
20
- const trade = store.snapshot.trade[instrument.toString()];
21
- expect(trade.timestamp).toEqual(8);
22
- expect(trade.rate).toEqual(8);
23
- expect(trade.quantity).toEqual(8);
24
- expect(store.snapshot.timestamp).toEqual(8);
25
- done();
19
+ listener: {
20
+ onBacktestCompleted: () => {
21
+ const trade = store.snapshot.trade[instrument.toString()];
22
+ expect(trade.timestamp).toEqual(8);
23
+ expect(trade.rate).toEqual(8);
24
+ expect(trade.quantity).toEqual(8);
25
+ expect(store.snapshot.timestamp).toEqual(8);
26
+ done();
27
+ }
26
28
  }
27
29
  });
28
30
  feed
@@ -1 +1 @@
1
- {"version":3,"file":"backtester-streamer.spec.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-streamer.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backtester-streamer.spec.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-streamer.spec.ts"],"names":[],"mappings":"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"}
@@ -37,10 +37,10 @@ class PaperAdapter extends __1.Adapter {
37
37
  return this.decoratedAdapter.dispatch(event, context);
38
38
  }
39
39
  onAccount(event, context) {
40
- let subscribed = Object.values(this.store.snapshot.subscription.asset).filter(it => it.exchange == this.name);
40
+ let subscribed = Object.values(this.store.snapshot.subscription.asset).filter(it => it.adapter == this.name);
41
41
  for (const balance in this.options.balance) {
42
42
  const asset = (0, domain_1.assetOf)(balance);
43
- if (asset.exchange != this.name) {
43
+ if (asset.adapter != this.name) {
44
44
  continue;
45
45
  }
46
46
  const free = this.options.balance[balance];
@@ -1 +1 @@
1
- {"version":3,"file":"paper-adapter.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paper-adapter.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.ts"],"names":[],"mappings":"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"}
package/dist/bin.d.ts CHANGED
@@ -4,4 +4,3 @@ import { Session, SessionDescriptor } from './session';
4
4
  export declare function backtest(descriptor: SessionDescriptor, options: BacktesterOptions): [Session, BacktesterStreamer];
5
5
  export declare function paper(descriptor: SessionDescriptor, options: PaperOptions): Session;
6
6
  export declare function live(descriptor: SessionDescriptor): Session;
7
- export declare function idle(descriptor: SessionDescriptor): Session;
package/dist/bin.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.idle = exports.live = exports.paper = exports.backtest = void 0;
3
+ exports.live = exports.paper = exports.backtest = void 0;
4
4
  const backtester_1 = require("./adapter/backtester");
5
5
  const adapter_1 = require("./adapter");
6
6
  const paper_1 = require("./adapter/paper");
@@ -25,10 +25,4 @@ function live(descriptor) {
25
25
  return new session_1.Session(store, aggregate, descriptor);
26
26
  }
27
27
  exports.live = live;
28
- function idle(descriptor) {
29
- const store = new store_1.Store();
30
- const aggregate = new adapter_1.AdapterAggregate(store, descriptor.adapter);
31
- return new session_1.Session(store, aggregate);
32
- }
33
- exports.idle = idle;
34
28
  //# sourceMappingURL=bin.js.map
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";;;AAAA,qDAI8B;AAC9B,uCAA6C;AAC7C,2CAA6D;AAC7D,uCAAuD;AACvD,mCAAgC;AAQhC,SAAgB,QAAQ,CACtB,UAA6B,EAC7B,OAA0B;IAE1B,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAE1B,MAAM,QAAQ,GAAG,IAAI,+BAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,0BAAgB,CACpC,KAAK,EACL,UAAU,CAAC,OAAO,CAAC,GAAG,CACpB,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAY,CAAC,IAAI,8BAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAC5E,CACF,CAAC;IAEF,OAAO,CAAC,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAfD,4BAeC;AAQD,SAAgB,KAAK,CAAC,UAA6B,EAAE,OAAqB;IACxE,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAE1B,MAAM,SAAS,GAAG,IAAI,0BAAgB,CACpC,KAAK,EACL,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CACnE,CAAC;IAEF,OAAO,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AATD,sBASC;AAOD,SAAgB,IAAI,CAAC,UAA6B;IAChD,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,0BAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAElE,OAAO,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AALD,oBAKC;AAMD,SAAgB,IAAI,CAAC,UAA6B;IAChD,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,0BAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAElE,OAAO,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AALD,oBAKC"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";;;AAAA,qDAI8B;AAC9B,uCAA6C;AAC7C,2CAA6D;AAC7D,uCAAuD;AACvD,mCAAgC;AAQhC,SAAgB,QAAQ,CACtB,UAA6B,EAC7B,OAA0B;IAE1B,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAE1B,MAAM,QAAQ,GAAG,IAAI,+BAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,0BAAgB,CACpC,KAAK,EACL,UAAU,CAAC,OAAO,CAAC,GAAG,CACpB,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAY,CAAC,IAAI,8BAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAC5E,CACF,CAAC;IAEF,OAAO,CAAC,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAfD,4BAeC;AAQD,SAAgB,KAAK,CAAC,UAA6B,EAAE,OAAqB;IACxE,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAE1B,MAAM,SAAS,GAAG,IAAI,0BAAgB,CACpC,KAAK,EACL,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CACnE,CAAC;IAEF,OAAO,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AATD,sBASC;AAOD,SAAgB,IAAI,CAAC,UAA6B;IAChD,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,0BAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAElE,OAAO,IAAI,iBAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AALD,oBAKC"}
@@ -1,15 +1,15 @@
1
1
  export declare class AssetSelector {
2
2
  private readonly id;
3
3
  readonly name: string;
4
- readonly exchange: string;
5
- constructor(name: string, exchange: string);
4
+ readonly adapter: string;
5
+ constructor(name: string, adapter: string);
6
6
  toString(): string;
7
7
  }
8
8
  export declare function assetOf(asset: string): AssetSelector;
9
9
  export declare class Asset extends AssetSelector {
10
10
  readonly scale: number;
11
11
  readonly tickSize: number;
12
- constructor(name: string, exchange: string, scale: number);
12
+ constructor(name: string, adapter: string, scale: number);
13
13
  fixed(number: number): number;
14
14
  floor(number: number): number;
15
15
  ceil(number: number): number;
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Asset = exports.assetOf = exports.AssetSelector = void 0;
4
4
  const decimals_1 = require("../shared/decimals");
5
5
  class AssetSelector {
6
- constructor(name, exchange) {
6
+ constructor(name, adapter) {
7
7
  this.name = name.toLowerCase();
8
- this.exchange = exchange.toLowerCase();
9
- this.id = `${this.exchange}:${this.name}`;
8
+ this.adapter = adapter.toLowerCase();
9
+ this.id = `${this.adapter}:${this.name}`;
10
10
  }
11
11
  toString() {
12
12
  return this.id;
@@ -19,16 +19,16 @@ function assetOf(asset) {
19
19
  throw Error('invalid asset format');
20
20
  }
21
21
  const assetName = section[1];
22
- const exchangeName = section[0];
23
- if (assetName.length == 0 || exchangeName.length == 0) {
22
+ const adapterName = section[0];
23
+ if (assetName.length == 0 || adapterName.length == 0) {
24
24
  throw Error('invalid asset format');
25
25
  }
26
- return new AssetSelector(assetName, exchangeName);
26
+ return new AssetSelector(assetName, adapterName);
27
27
  }
28
28
  exports.assetOf = assetOf;
29
29
  class Asset extends AssetSelector {
30
- constructor(name, exchange, scale) {
31
- super(name, exchange);
30
+ constructor(name, adapter, scale) {
31
+ super(name, adapter);
32
32
  this.scale = scale;
33
33
  this.tickSize = 1.0 / Math.pow(10, this.scale);
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/domain/asset.ts"],"names":[],"mappings":";;;AAAA,iDAAwD;AAKxD,MAAa,aAAa;IAMxB,YAAY,IAAY,EAAE,QAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAEvC,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IAKD,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF;AAnBD,sCAmBC;AAKD,SAAgB,OAAO,CAAC,KAAa;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;QACvB,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACrC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEhC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE;QACrD,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACrC;IAED,OAAO,IAAI,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AACpD,CAAC;AAfD,0BAeC;AAMD,MAAa,KAAM,SAAQ,aAAa;IAGtC,YAAY,IAAY,EAAE,QAAgB,EAAkB,KAAa;QACvE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QADoC,UAAK,GAAL,KAAK,CAAQ;QAGvE,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAKD,KAAK,CAAC,MAAc;QAClB,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAKD,KAAK,CAAC,MAAc;QAClB,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAKD,IAAI,CAAC,MAAc;QACjB,OAAO,IAAA,eAAI,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;CACF;AA7BD,sBA6BC"}
1
+ {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/domain/asset.ts"],"names":[],"mappings":";;;AAAA,iDAAwD;AAKxD,MAAa,aAAa;IAMxB,YAAY,IAAY,EAAE,OAAe;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAErC,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAKD,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF;AAnBD,sCAmBC;AAKD,SAAgB,OAAO,CAAC,KAAa;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;QACvB,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACrC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE/B,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE;QACpD,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACrC;IAED,OAAO,IAAI,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AACnD,CAAC;AAfD,0BAeC;AAMD,MAAa,KAAM,SAAQ,aAAa;IAGtC,YAAY,IAAY,EAAE,OAAe,EAAkB,KAAa;QACtE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QADoC,UAAK,GAAL,KAAK,CAAQ;QAGtE,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAKD,KAAK,CAAC,MAAc;QAClB,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAKD,KAAK,CAAC,MAAc;QAClB,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAKD,IAAI,CAAC,MAAc;QACjB,OAAO,IAAA,eAAI,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;CACF;AA7BD,sBA6BC"}
@@ -5,7 +5,7 @@ describe('asset tests', () => {
5
5
  test('should instantiate proper asset', () => {
6
6
  const sut = new asset_1.Asset('abc', 'xyz', 4);
7
7
  expect(sut.name).toEqual('abc');
8
- expect(sut.exchange).toEqual('xyz');
8
+ expect(sut.adapter).toEqual('xyz');
9
9
  expect(sut.scale).toEqual(4);
10
10
  expect(sut.tickSize).toEqual(0.0001);
11
11
  expect(sut.fixed(1.1234567)).toEqual(1.1234);
@@ -18,13 +18,13 @@ describe('asset selector tests', () => {
18
18
  test('should instantiate proper asset selector', () => {
19
19
  const sut = (0, asset_1.assetOf)('xyz:abc');
20
20
  expect(sut.name).toEqual('abc');
21
- expect(sut.exchange).toEqual('xyz');
21
+ expect(sut.adapter).toEqual('xyz');
22
22
  expect(sut.toString()).toEqual('xyz:abc');
23
23
  });
24
24
  test('should instantiate proper asset selector capital case', () => {
25
25
  const sut = (0, asset_1.assetOf)('XYZ:ABC');
26
26
  expect(sut.name).toEqual('abc');
27
- expect(sut.exchange).toEqual('xyz');
27
+ expect(sut.adapter).toEqual('xyz');
28
28
  expect(sut.toString()).toEqual('xyz:abc');
29
29
  });
30
30
  test('should throw invalid format message for missing separator', () => {
@@ -45,7 +45,7 @@ describe('asset selector tests', () => {
45
45
  };
46
46
  expect(fn).toThrow(Error);
47
47
  });
48
- test('should throw invalid format message for missing exchange name', () => {
48
+ test('should throw invalid format message for missing adapter name', () => {
49
49
  const fn = () => {
50
50
  (0, asset_1.assetOf)(':abc');
51
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"asset.spec.js","sourceRoot":"","sources":["../../src/domain/asset.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asset.spec.js","sourceRoot":"","sources":["../../src/domain/asset.spec.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export declare class InstrumentSelector {
6
6
  private readonly id;
7
7
  readonly base: AssetSelector;
8
8
  readonly quote: AssetSelector;
9
- constructor(base: string, quote: string, exchange: string);
9
+ constructor(base: string, quote: string, adapter: string);
10
10
  toString(): string;
11
11
  }
12
12
  export declare class Instrument extends InstrumentSelector implements Component {
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.instrumentOf = exports.Instrument = exports.InstrumentSelector = void 0;
4
4
  const asset_1 = require("./asset");
5
5
  class InstrumentSelector {
6
- constructor(base, quote, exchange) {
7
- this.base = new asset_1.AssetSelector(base.toLowerCase(), exchange.toLowerCase());
8
- this.quote = new asset_1.AssetSelector(quote.toLowerCase(), exchange.toLowerCase());
6
+ constructor(base, quote, adapter) {
7
+ this.base = new asset_1.AssetSelector(base.toLowerCase(), adapter.toLowerCase());
8
+ this.quote = new asset_1.AssetSelector(quote.toLowerCase(), adapter.toLowerCase());
9
9
  this.id = `${this.base.toString()}-${this.quote.name}`;
10
10
  }
11
11
  toString() {
@@ -15,13 +15,13 @@ class InstrumentSelector {
15
15
  exports.InstrumentSelector = InstrumentSelector;
16
16
  class Instrument extends InstrumentSelector {
17
17
  constructor(base, quote, raw) {
18
- super(base.name, quote.name, base.exchange);
18
+ super(base.name, quote.name, base.adapter);
19
19
  this.base = base;
20
20
  this.quote = quote;
21
21
  this.raw = raw;
22
22
  this.leverage = null;
23
- if (base.exchange != quote.exchange) {
24
- throw new Error('Exchange mismatch!');
23
+ if (base.adapter != quote.adapter) {
24
+ throw new Error('Adapter mismatch!');
25
25
  }
26
26
  }
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../src/domain/instrument.ts"],"names":[],"mappings":";;;AACA,mCAA+C;AAI/C,MAAa,kBAAkB;IAM7B,YAAY,IAAY,EAAE,KAAa,EAAE,QAAgB;QACvD,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAa,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAa,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAE5E,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF;AAhBD,gDAgBC;AAKD,MAAa,UAAW,SAAQ,kBAAkB;IAMhD,YAAqB,IAAW,EAAW,KAAY,EAAW,GAAW;QAC3E,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QADzB,SAAI,GAAJ,IAAI,CAAO;QAAW,UAAK,GAAL,KAAK,CAAO;QAAW,QAAG,GAAH,GAAG,CAAQ;QAF7E,aAAQ,GAAY,IAAI,CAAC;QAKvB,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;SACvC;IACH,CAAC;CACF;AAbD,gCAaC;AAED,SAAgB,YAAY,CAAC,UAAkB;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEpC,OAAO,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AALD,oCAKC"}
1
+ {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../src/domain/instrument.ts"],"names":[],"mappings":";;;AACA,mCAA+C;AAI/C,MAAa,kBAAkB;IAM7B,YAAY,IAAY,EAAE,KAAa,EAAE,OAAe;QACtD,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAa,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAa,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAE3E,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF;AAhBD,gDAgBC;AAKD,MAAa,UAAW,SAAQ,kBAAkB;IAMhD,YAAqB,IAAW,EAAW,KAAY,EAAW,GAAW;QAC3E,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QADxB,SAAI,GAAJ,IAAI,CAAO;QAAW,UAAK,GAAL,KAAK,CAAO;QAAW,QAAG,GAAH,GAAG,CAAQ;QAF7E,aAAQ,GAAY,IAAI,CAAC;QAKvB,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;IACH,CAAC;CACF;AAbD,gCAaC;AAED,SAAgB,YAAY,CAAC,UAAkB;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEpC,OAAO,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AALD,oCAKC"}
@@ -6,9 +6,9 @@ describe('instrument tests', () => {
6
6
  test('should instantiate proper instrument', () => {
7
7
  const sut = new instrument_1.Instrument(new asset_1.Asset('abc', 'xyz', 4), new asset_1.Asset('def', 'xyz', 4), 'abc-def');
8
8
  expect(sut.base.name).toEqual('abc');
9
- expect(sut.base.exchange).toEqual('xyz');
9
+ expect(sut.base.adapter).toEqual('xyz');
10
10
  expect(sut.quote.name).toEqual('def');
11
- expect(sut.quote.exchange).toEqual('xyz');
11
+ expect(sut.quote.adapter).toEqual('xyz');
12
12
  expect(sut.toString()).toEqual('xyz:abc-def');
13
13
  });
14
14
  });
@@ -16,17 +16,17 @@ describe('instrument selector tests', () => {
16
16
  test('should instantiate proper instrument selector', () => {
17
17
  const sut = (0, instrument_1.instrumentOf)('xyz:abc-def');
18
18
  expect(sut.base.name).toEqual('abc');
19
- expect(sut.base.exchange).toEqual('xyz');
19
+ expect(sut.base.adapter).toEqual('xyz');
20
20
  expect(sut.quote.name).toEqual('def');
21
- expect(sut.quote.exchange).toEqual('xyz');
21
+ expect(sut.quote.adapter).toEqual('xyz');
22
22
  expect(sut.toString()).toEqual('xyz:abc-def');
23
23
  });
24
24
  test('should instantiate proper instrument selector capital case', () => {
25
25
  const sut = (0, instrument_1.instrumentOf)('XYZ:ABC-DEF');
26
26
  expect(sut.base.name).toEqual('abc');
27
- expect(sut.base.exchange).toEqual('xyz');
27
+ expect(sut.base.adapter).toEqual('xyz');
28
28
  expect(sut.quote.name).toEqual('def');
29
- expect(sut.quote.exchange).toEqual('xyz');
29
+ expect(sut.quote.adapter).toEqual('xyz');
30
30
  expect(sut.toString()).toEqual('xyz:abc-def');
31
31
  });
32
32
  test('should throw invalid format message for missing separator', () => {
@@ -47,7 +47,7 @@ describe('instrument selector tests', () => {
47
47
  };
48
48
  expect(fn).toThrow(Error);
49
49
  });
50
- test('should throw invalid format message for missing exchange name', () => {
50
+ test('should throw invalid format message for missing adapter name', () => {
51
51
  const fn = () => {
52
52
  (0, asset_1.assetOf)(':abc-def');
53
53
  };
@@ -1 +1 @@
1
- {"version":3,"file":"instrument.spec.js","sourceRoot":"","sources":["../../src/domain/instrument.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrument.spec.js","sourceRoot":"","sources":["../../src/domain/instrument.spec.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ export declare class Orderbook implements Component {
8
8
  bestAskQuantity: number;
9
9
  bestBidRate: number;
10
10
  bestBidQuantity: number;
11
- az: any;
12
11
  get midRate(): number;
13
12
  constructor(instrument: Instrument);
14
13
  toString(): string;
package/dist/ipc.d.ts CHANGED
@@ -1,4 +1,6 @@
1
+ /// <reference types="node" />
1
2
  import { Session, SessionDescriptor } from './session';
3
+ import { EventEmitter } from 'events';
2
4
  export interface IpcCommand {
3
5
  type: any;
4
6
  }
@@ -21,14 +23,17 @@ export declare class IpcBacktestCommand implements IpcCommand {
21
23
  [key: string]: number;
22
24
  };
23
25
  }
24
- export declare class IpcUniverseQuery implements IpcCommand {
25
- type: string;
26
- exchange: string;
27
- }
28
26
  export declare class IpcFeedCommand implements IpcCommand {
29
27
  type: string;
30
28
  instrument: string;
31
29
  from: number;
32
30
  to: number;
33
31
  }
34
- export declare function run(descriptor: SessionDescriptor, ...commands: IpcCommand[]): Promise<Session>;
32
+ export declare class IpcTaskCommand implements IpcCommand {
33
+ type: string;
34
+ taskName: string;
35
+ }
36
+ export declare type SessionRunDescriptor = SessionDescriptor & {
37
+ ipcSub?: EventEmitter;
38
+ };
39
+ export declare function run(descriptor: SessionRunDescriptor, ...commands: IpcCommand[]): Promise<Session>;