@quantform/core 0.4.11 → 0.5.13
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/adapter/adapter-aggregate.d.ts +4 -2
- package/dist/adapter/adapter-aggregate.js +4 -3
- package/dist/adapter/adapter-aggregate.js.map +1 -1
- package/dist/adapter/adapter.d.ts +3 -2
- package/dist/adapter/adapter.js +5 -2
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/backtester/backtester-adapter.d.ts +1 -1
- package/dist/adapter/backtester/backtester-adapter.js +2 -1
- package/dist/adapter/backtester/backtester-adapter.js.map +1 -1
- package/dist/adapter/backtester/index.js +5 -1
- package/dist/adapter/backtester/index.js.map +1 -1
- package/dist/adapter/index.js +5 -1
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/paper/index.js +5 -1
- package/dist/adapter/paper/index.js.map +1 -1
- package/dist/adapter/paper/paper-adapter.d.ts +1 -1
- package/dist/adapter/paper/paper-adapter.js +1 -1
- package/dist/adapter/paper/paper-adapter.js.map +1 -1
- package/dist/adapter/paper/paper-adapter.spec.js +5 -3
- package/dist/adapter/paper/paper-adapter.spec.js.map +1 -1
- package/dist/adapter/paper/simulator/paper-margin-simulator.d.ts +1 -1
- package/dist/adapter/paper/simulator/paper-margin-simulator.js.map +1 -1
- package/dist/adapter/paper/simulator/paper-simulator.d.ts +1 -1
- package/dist/adapter/paper/simulator/paper-simulator.js.map +1 -1
- package/dist/adapter/paper/simulator/paper-spot-simulator.d.ts +1 -1
- package/dist/adapter/paper/simulator/paper-spot-simulator.js +1 -1
- package/dist/adapter/paper/simulator/paper-spot-simulator.js.map +1 -1
- package/dist/bootstrap.js +31 -15
- package/dist/bootstrap.js.map +1 -1
- package/dist/cli/build.d.ts +1 -0
- package/dist/cli/build.js +16 -0
- package/dist/cli/build.js.map +1 -0
- package/dist/cli/dev.d.ts +1 -0
- package/dist/cli/dev.js +17 -0
- package/dist/cli/dev.js.map +1 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +72 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/internal/workspace.d.ts +8 -0
- package/dist/cli/internal/workspace.js +14 -0
- package/dist/cli/internal/workspace.js.map +1 -0
- package/dist/cli/pull.d.ts +1 -0
- package/dist/cli/pull.js +50 -0
- package/dist/cli/pull.js.map +1 -0
- package/dist/cli/run.d.ts +1 -0
- package/dist/cli/run.js +19 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/cli/test.d.ts +1 -0
- package/dist/cli/test.js +37 -0
- package/dist/cli/test.js.map +1 -0
- package/dist/domain/balance.d.ts +4 -3
- package/dist/domain/balance.js +20 -19
- package/dist/domain/balance.js.map +1 -1
- package/dist/domain/balance.spec.js +2 -2
- package/dist/domain/balance.spec.js.map +1 -1
- package/dist/domain/candle.d.ts +4 -2
- package/dist/domain/candle.js +13 -9
- package/dist/domain/candle.js.map +1 -1
- package/dist/domain/candle.spec.js.map +1 -1
- package/dist/domain/component.d.ts +1 -0
- package/dist/domain/index.js +5 -1
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/instrument.d.ts +1 -0
- package/dist/domain/instrument.js +1 -0
- package/dist/domain/instrument.js.map +1 -1
- package/dist/domain/order.d.ts +3 -2
- package/dist/domain/order.js +2 -0
- package/dist/domain/order.js.map +1 -1
- package/dist/domain/orderbook.d.ts +1 -0
- package/dist/domain/orderbook.js +1 -0
- package/dist/domain/orderbook.js.map +1 -1
- package/dist/domain/position.d.ts +1 -0
- package/dist/domain/position.js +1 -0
- package/dist/domain/position.js.map +1 -1
- package/dist/domain/session.d.ts +4 -18
- package/dist/domain/session.js +7 -23
- package/dist/domain/session.js.map +1 -1
- package/dist/domain/statement.js +11 -11
- package/dist/domain/statement.js.map +1 -1
- package/dist/domain/trade.d.ts +2 -1
- package/dist/domain/trade.js +1 -0
- package/dist/domain/trade.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/indicator/atr.js.map +1 -1
- package/dist/indicator/cross.spec.js.map +1 -1
- package/dist/indicator/donchian.js.map +1 -1
- package/dist/indicator/ema.js.map +1 -1
- package/dist/indicator/ema.spec.js.map +1 -1
- package/dist/indicator/envelope.js.map +1 -1
- package/dist/indicator/index.js +5 -1
- package/dist/indicator/index.js.map +1 -1
- package/dist/indicator/macd.js.map +1 -1
- package/dist/indicator/min-max.js.map +1 -1
- package/dist/indicator/rma.js.map +1 -1
- package/dist/indicator/sma.js.map +1 -1
- package/dist/indicator/sma.spec.js.map +1 -1
- package/dist/indicator/swma.js.map +1 -1
- package/dist/indicator/tma.js.map +1 -1
- package/dist/indicator/tma.spec.js.map +1 -1
- package/dist/indicator/trailing.spec.js.map +1 -1
- package/dist/indicator/truerange.js.map +1 -1
- package/dist/indicator/truerange.spec.js.map +1 -1
- package/dist/indicator/window.js.map +1 -1
- package/dist/indicator/wma.js.map +1 -1
- package/dist/indicator/wma.spec.js.map +1 -1
- package/dist/shared/index.d.ts +0 -2
- package/dist/shared/index.js +5 -3
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/policy.spec.js +2 -6
- package/dist/shared/policy.spec.js.map +1 -1
- package/dist/storage/cache.d.ts +9 -0
- package/dist/storage/cache.js +32 -0
- package/dist/storage/cache.js.map +1 -0
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.js +6 -1
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/storage.d.ts +7 -0
- package/dist/storage/storage.js +11 -1
- package/dist/storage/storage.js.map +1 -1
- package/dist/store/event/index.js +5 -1
- package/dist/store/event/index.js.map +1 -1
- package/dist/store/event/store-balance.event.spec.js +3 -3
- package/dist/store/event/store-balance.event.spec.js.map +1 -1
- package/dist/store/event/store-candle.event.d.ts +1 -1
- package/dist/store/event/store-candle.event.js.map +1 -1
- package/dist/store/event/store-candle.event.spec.js +1 -1
- package/dist/store/event/store-candle.event.spec.js.map +1 -1
- package/dist/store/event/store-instrument.event.spec.js +1 -1
- package/dist/store/event/store-instrument.event.spec.js.map +1 -1
- package/dist/store/event/store-trade.event.spec.js +2 -2
- package/dist/store/event/store-trade.event.spec.js.map +1 -1
- package/dist/store/index.js +5 -1
- package/dist/store/index.js.map +1 -1
- package/dist/store/store.js.map +1 -1
- package/dist/tests/backtester-adapter.spec.js +2 -1
- package/dist/tests/backtester-adapter.spec.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +24 -16
- package/src/adapter/adapter-aggregate.ts +8 -3
- package/src/adapter/adapter.ts +9 -3
- package/src/adapter/backtester/backtester-adapter.ts +3 -1
- package/src/adapter/paper/paper-adapter.spec.ts +5 -3
- package/src/adapter/paper/paper-adapter.ts +1 -1
- package/src/adapter/paper/simulator/paper-margin-simulator.ts +1 -1
- package/src/adapter/paper/simulator/paper-simulator.ts +2 -1
- package/src/adapter/paper/simulator/paper-spot-simulator.ts +2 -2
- package/src/bootstrap.ts +47 -18
- package/src/cli/build.ts +15 -0
- package/src/cli/dev.ts +18 -0
- package/src/cli/index.ts +81 -0
- package/src/cli/internal/workspace.ts +18 -0
- package/src/cli/pull.ts +67 -0
- package/src/cli/run.ts +22 -0
- package/src/cli/test.ts +50 -0
- package/src/domain/balance.spec.ts +2 -2
- package/src/domain/balance.ts +20 -19
- package/src/domain/candle.spec.ts +1 -0
- package/src/domain/candle.ts +20 -10
- package/src/domain/component.ts +1 -0
- package/src/domain/instrument.ts +1 -0
- package/src/domain/order.ts +3 -1
- package/src/domain/orderbook.ts +1 -0
- package/src/domain/position.ts +2 -0
- package/src/domain/session.ts +17 -67
- package/src/domain/statement.ts +13 -12
- package/src/domain/trade.ts +2 -1
- package/src/index.ts +0 -1
- package/src/indicator/atr.ts +1 -0
- package/src/indicator/cross.spec.ts +1 -0
- package/src/indicator/donchian.ts +1 -0
- package/src/indicator/ema.spec.ts +1 -0
- package/src/indicator/ema.ts +1 -0
- package/src/indicator/envelope.ts +1 -0
- package/src/indicator/macd.ts +1 -0
- package/src/indicator/min-max.ts +1 -0
- package/src/indicator/rma.ts +1 -0
- package/src/indicator/sma.spec.ts +1 -0
- package/src/indicator/sma.ts +1 -0
- package/src/indicator/swma.ts +1 -0
- package/src/indicator/tma.spec.ts +1 -0
- package/src/indicator/tma.ts +1 -0
- package/src/indicator/trailing.spec.ts +1 -0
- package/src/indicator/truerange.spec.ts +1 -0
- package/src/indicator/truerange.ts +1 -0
- package/src/indicator/window.ts +1 -0
- package/src/indicator/wma.spec.ts +1 -0
- package/src/indicator/wma.ts +1 -0
- package/src/shared/index.ts +0 -2
- package/src/shared/policy.spec.ts +2 -6
- package/src/storage/cache.ts +35 -0
- package/src/storage/index.ts +1 -0
- package/src/storage/storage.ts +15 -0
- package/src/store/event/store-balance.event.spec.ts +3 -3
- package/src/store/event/store-candle.event.spec.ts +1 -1
- package/src/store/event/store-candle.event.ts +2 -2
- package/src/store/event/store-instrument.event.spec.ts +1 -1
- package/src/store/event/store-trade.event.spec.ts +2 -2
- package/src/store/store.ts +1 -0
- package/src/tests/backtester-adapter.spec.ts +3 -2
- package/tsconfig.json +2 -2
- package/dist/ipc.d.ts +0 -33
- package/dist/ipc.js +0 -244
- package/dist/ipc.js.map +0 -1
- package/dist/ipc.spec.d.ts +0 -1
- package/dist/ipc.spec.js +0 -57
- package/dist/ipc.spec.js.map +0 -1
- package/dist/shared/task.d.ts +0 -6
- package/dist/shared/task.js +0 -25
- package/dist/shared/task.js.map +0 -1
- package/dist/shared/worker.d.ts +0 -10
- package/dist/shared/worker.js +0 -46
- package/dist/shared/worker.js.map +0 -1
- package/dist/shared/worker.spec.d.ts +0 -1
- package/dist/shared/worker.spec.js +0 -18
- package/dist/shared/worker.spec.js.map +0 -1
- package/src/ipc.spec.ts +0 -73
- package/src/ipc.ts +0 -321
- package/src/shared/task.ts +0 -30
- package/src/shared/worker.spec.ts +0 -25
- package/src/shared/worker.ts +0 -55
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { Adapter, FeedQuery, HistoryQuery } from '.';
|
|
2
1
|
import { Candle, InstrumentSelector, Order } from '../domain';
|
|
2
|
+
import { Cache } from '../storage';
|
|
3
3
|
import { Store } from '../store';
|
|
4
|
+
import { Adapter, FeedQuery, HistoryQuery } from '.';
|
|
4
5
|
export declare class AdapterAggregate {
|
|
5
6
|
private readonly store;
|
|
7
|
+
private readonly cache;
|
|
6
8
|
private readonly adapter;
|
|
7
|
-
constructor(adapters: Adapter[], store: Store);
|
|
9
|
+
constructor(adapters: Adapter[], store: Store, cache: Cache);
|
|
8
10
|
get(adapterName: string): Adapter;
|
|
9
11
|
awake(): Promise<void>;
|
|
10
12
|
dispose(): Promise<any>;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AdapterAggregate = void 0;
|
|
4
|
-
const _1 = require(".");
|
|
5
4
|
const shared_1 = require("../shared");
|
|
5
|
+
const _1 = require(".");
|
|
6
6
|
class AdapterAggregate {
|
|
7
|
-
constructor(adapters, store) {
|
|
7
|
+
constructor(adapters, store, cache) {
|
|
8
8
|
this.store = store;
|
|
9
|
+
this.cache = cache;
|
|
9
10
|
this.adapter = {};
|
|
10
11
|
adapters.forEach(it => (this.adapter[it.name] = it));
|
|
11
12
|
}
|
|
@@ -92,7 +93,7 @@ class AdapterAggregate {
|
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
createContext(adapter) {
|
|
95
|
-
return new _1.AdapterContext(adapter, this.store);
|
|
96
|
+
return new _1.AdapterContext(adapter, this.store, this.cache);
|
|
96
97
|
}
|
|
97
98
|
}
|
|
98
99
|
exports.AdapterAggregate = AdapterAggregate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter-aggregate.js","sourceRoot":"","sources":["../../src/adapter/adapter-aggregate.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"adapter-aggregate.js","sourceRoot":"","sources":["../../src/adapter/adapter-aggregate.ts"],"names":[],"mappings":";;;AACA,sCAAmC;AAGnC,wBAAqE;AAMrE,MAAa,gBAAgB;IAG3B,YACE,QAAmB,EACF,KAAY,EACZ,KAAY;QADZ,UAAK,GAAL,KAAK,CAAO;QACZ,UAAK,GAAL,KAAK,CAAO;QALd,YAAO,GAA4B,EAAE,CAAC;QAOrD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAOD,GAAG,CAAC,WAAmB;QACrB,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,OAAO,OAAO,CAAC;IACjB,CAAC;IAKD,KAAK,CAAC,KAAK;QACT,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACjD,IAAI;gBACF,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;gBACjD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;aACzB;YAAC,OAAO,CAAC,EAAE;gBACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;IACH,CAAC;IAKD,KAAK,CAAC,OAAO;QACX,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACjD,IAAI;gBACF,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;aACzB;YAAC,OAAO,CAAC,EAAE;gBACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;IACH,CAAC;IAMD,KAAK,CAAC,SAAS,CAAC,SAA+B;QAC7C,MAAM,OAAO,GAAG,SAAS;aACtB,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC;aACxB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE;YACxB,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;YAEhC,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE;gBACtB,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC7B;iBAAM;gBACL,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAC3B;YAED,OAAO,SAAS,CAAC;QACnB,CAAC,EAAE,EAAE,CAAC,CAAC;QAET,KAAK,MAAM,WAAW,IAAI,OAAO,EAAE;YACjC,IAAI;gBACF,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;aAC7D;YAAC,OAAO,CAAC,EAAE;gBACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;IACH,CAAC;IAMD,IAAI,CAAC,KAAY;QACf,IAAI;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5D;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IAKD,MAAM,CAAC,KAAY;QACjB,IAAI;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9D;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IAMD,OAAO,CAAC,KAAmB;QACzB,IAAI;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC/D;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IAMD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5D;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IAOO,aAAa,CAAC,OAAgB;QACpC,OAAO,IAAI,iBAAc,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;CACF;AA1ID,4CA0IC"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { Candle, InstrumentSelector, Order } from '../domain';
|
|
2
2
|
import { timestamp } from '../shared';
|
|
3
|
-
import { Feed } from '../storage';
|
|
3
|
+
import { Cache, Feed } from '../storage';
|
|
4
4
|
import { State, Store, StoreEvent } from '../store';
|
|
5
5
|
import { PaperAdapter } from './paper';
|
|
6
6
|
import { PaperSimulator } from './paper/simulator/paper-simulator';
|
|
7
7
|
export declare class AdapterContext {
|
|
8
8
|
private readonly adapter;
|
|
9
9
|
private readonly store;
|
|
10
|
+
readonly cache: Cache;
|
|
10
11
|
get timestamp(): timestamp;
|
|
11
12
|
get snapshot(): State;
|
|
12
|
-
constructor(adapter: Adapter, store: Store);
|
|
13
|
+
constructor(adapter: Adapter, store: Store, cache: Cache);
|
|
13
14
|
dispatch(...events: StoreEvent[]): void;
|
|
14
15
|
}
|
|
15
16
|
export declare type HistoryQuery = {
|
package/dist/adapter/adapter.js
CHANGED
|
@@ -3,9 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Adapter = exports.AdapterContext = void 0;
|
|
4
4
|
const shared_1 = require("../shared");
|
|
5
5
|
class AdapterContext {
|
|
6
|
-
constructor(adapter, store) {
|
|
6
|
+
constructor(adapter, store, cache) {
|
|
7
7
|
this.adapter = adapter;
|
|
8
8
|
this.store = store;
|
|
9
|
+
this.cache = cache;
|
|
9
10
|
}
|
|
10
11
|
get timestamp() {
|
|
11
12
|
return this.adapter.timestamp();
|
|
@@ -25,7 +26,9 @@ class Adapter {
|
|
|
25
26
|
async awake(context) {
|
|
26
27
|
this.context = context;
|
|
27
28
|
}
|
|
28
|
-
async dispose() {
|
|
29
|
+
async dispose() {
|
|
30
|
+
throw new Error('method not implemented');
|
|
31
|
+
}
|
|
29
32
|
subscribe(instruments) {
|
|
30
33
|
throw new Error('method not implemented');
|
|
31
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter/adapter.ts"],"names":[],"mappings":";;;AACA,sCAA2C;AAS3C,MAAa,cAAc;IAYzB,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter/adapter.ts"],"names":[],"mappings":";;;AACA,sCAA2C;AAS3C,MAAa,cAAc;IAYzB,YACmB,OAAgB,EAChB,KAAY,EACpB,KAAY;QAFJ,YAAO,GAAP,OAAO,CAAS;QAChB,UAAK,GAAL,KAAK,CAAO;QACpB,UAAK,GAAL,KAAK,CAAO;IACpB,CAAC;IAZJ,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAQD,QAAQ,CAAC,GAAG,MAAoB;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;IACxC,CAAC;CACF;AArBD,wCAqBC;AAoBD,MAAsB,OAAO;IAK3B,SAAS;QACP,OAAO,IAAA,YAAG,GAAE,CAAC;IACf,CAAC;IAMD,KAAK,CAAC,KAAK,CAAC,OAAuB;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAKD,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAMD,SAAS,CAAC,WAAiC;QACzC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAKD,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAMD,IAAI,CAAC,KAAY;QACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAKD,MAAM,CAAC,KAAY;QACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,CAAC,KAAmB;QACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,KAAgB;QACnB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;CAGF;AA/DD,0BA+DC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Adapter, AdapterContext } from '..';
|
|
2
1
|
import { Candle, InstrumentSelector, Order } from '../../domain';
|
|
3
2
|
import { timestamp } from '../../shared';
|
|
3
|
+
import { Adapter, AdapterContext } from '..';
|
|
4
4
|
import { FeedQuery, HistoryQuery } from '../adapter';
|
|
5
5
|
import { PaperAdapter, PaperOptions } from '../paper';
|
|
6
6
|
import { PaperSimulator } from '../paper/simulator/paper-simulator';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BacktesterAdapter = void 0;
|
|
4
|
-
const __1 = require("..");
|
|
5
4
|
const store_1 = require("../../store");
|
|
5
|
+
const __1 = require("..");
|
|
6
6
|
class BacktesterAdapter extends __1.Adapter {
|
|
7
7
|
constructor(decoratedAdapter, streamer) {
|
|
8
8
|
super();
|
|
@@ -25,6 +25,7 @@ class BacktesterAdapter extends __1.Adapter {
|
|
|
25
25
|
this.streamer.subscribe(it);
|
|
26
26
|
});
|
|
27
27
|
this.context.dispatch(...instruments.map(it => new store_1.InstrumentSubscriptionEvent(this.context.timestamp, it, true)));
|
|
28
|
+
this.streamer.tryContinue();
|
|
28
29
|
}
|
|
29
30
|
account() {
|
|
30
31
|
return this.decoratedAdapter.account();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backtester-adapter.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-adapter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"backtester-adapter.js","sourceRoot":"","sources":["../../../src/adapter/backtester/backtester-adapter.ts"],"names":[],"mappings":";;;AAEA,uCAA0D;AAC1D,0BAA6C;AAW7C,MAAa,iBAAkB,SAAQ,WAAO;IAO5C,YAAqB,gBAAyB,EAAW,QAA4B;QACnF,KAAK,EAAE,CAAC;QADW,qBAAgB,GAAhB,gBAAgB,CAAS;QAAW,aAAQ,GAAR,QAAQ,CAAoB;QAN5E,SAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IAQ3C,CAAC;IAND,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAMD,KAAK,CAAC,KAAK,CAAC,OAAuB;QACjC,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAiC;QAC/C,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,QAAQ,CACnB,GAAG,WAAW,CAAC,GAAG,CAChB,EAAE,CAAC,EAAE,CAAC,IAAI,mCAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CACxE,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAC9B,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,KAAY;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,KAAY;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAmB;QAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE5D,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,KAAgB;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,oBAAoB,CAAC,OAAqB;QACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;CACF;AA/DD,8CA+DC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapter/backtester/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapter/backtester/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,wDAAsC"}
|
package/dist/adapter/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapter/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapter/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,sDAAoC;AACpC,+CAA6B;AAC7B,0CAAwB"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapter/paper/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapter/paper/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,qEAAmD;AACnD,mEAAiD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Adapter, AdapterContext } from '..';
|
|
2
1
|
import { Candle, InstrumentSelector, Order } from '../../domain';
|
|
3
2
|
import { Store } from '../../store';
|
|
3
|
+
import { Adapter, AdapterContext } from '..';
|
|
4
4
|
import { FeedQuery, HistoryQuery } from '../adapter';
|
|
5
5
|
import { PaperSimulator } from './simulator/paper-simulator';
|
|
6
6
|
export interface PaperOptions {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PaperAdapter = void 0;
|
|
4
|
-
const __1 = require("..");
|
|
5
4
|
const domain_1 = require("../../domain");
|
|
6
5
|
const store_1 = require("../../store");
|
|
6
|
+
const __1 = require("..");
|
|
7
7
|
class PaperAdapter extends __1.Adapter {
|
|
8
8
|
constructor(decoratedAdapter, store, options) {
|
|
9
9
|
super();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paper-adapter.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"paper-adapter.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
4
|
-
const __1 = require("..");
|
|
3
|
+
const storage_1 = require("../../storage");
|
|
5
4
|
const store_1 = require("../../store");
|
|
5
|
+
const __1 = require("..");
|
|
6
6
|
const adapter_1 = require("../adapter");
|
|
7
7
|
const domain_1 = require("./../../domain");
|
|
8
|
+
const _1 = require(".");
|
|
8
9
|
const paper_adapter_1 = require("./paper-adapter");
|
|
9
10
|
class DefaultAdapter extends adapter_1.Adapter {
|
|
10
11
|
constructor() {
|
|
@@ -38,8 +39,9 @@ describe('paper adapter tests', () => {
|
|
|
38
39
|
test('', async () => {
|
|
39
40
|
const store = new store_1.Store();
|
|
40
41
|
const adapter = new DefaultAdapter();
|
|
42
|
+
const cache = new storage_1.Cache(new storage_1.InMemoryStorage());
|
|
41
43
|
const sut = new paper_adapter_1.PaperAdapter(adapter, store, options);
|
|
42
|
-
await sut.awake(new __1.AdapterContext(sut, store));
|
|
44
|
+
await sut.awake(new __1.AdapterContext(sut, store, cache));
|
|
43
45
|
await sut.account();
|
|
44
46
|
const order = domain_1.Order.buyMarket((0, domain_1.instrumentOf)('default:a-b'), 1.0);
|
|
45
47
|
await sut.open(order);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paper-adapter.spec.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.spec.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"paper-adapter.spec.js","sourceRoot":"","sources":["../../../src/adapter/paper/paper-adapter.spec.ts"],"names":[],"mappings":";;AAAA,2CAAuD;AACvD,uCAA0D;AAC1D,0BAAoC;AACpC,wCAAqC;AACrC,2CAAwE;AACxE,wBAAuC;AACvC,mDAA+C;AAG/C,MAAM,cAAe,SAAQ,iBAAO;IAApC;;QACE,SAAI,GAAG,SAAS,CAAC;IAuBnB,CAAC;IArBC,SAAS;QACP,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAuB;QACjC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAErB,OAAO,CAAC,QAAQ,CACd,IAAI,4BAAoB,CACtB,OAAO,CAAC,SAAS,EACjB,IAAI,cAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAC5B,IAAI,cAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAC5B,IAAI,mBAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EACxB,KAAK,CACN,CACF,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,OAAqB;QACxC,OAAO,IAAI,qBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACF;AAED,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,MAAM,OAAO,GAAG;QACd,OAAO,EAAE;YACP,CAAC,WAAW,CAAC,EAAE,IAAI;YACnB,CAAC,WAAW,CAAC,EAAE,GAAG;SACnB;KACF,CAAC;IAEF,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC5D,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QAE1B,MAAM,GAAG,GAAG,IAAI,4BAAY,CAAC,IAAI,cAAc,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAEnE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,IAAI,yBAAe,EAAE,CAAC,CAAC;QAE/C,MAAM,GAAG,GAAG,IAAI,4BAAY,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAEtD,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,kBAAc,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;QAEpB,MAAM,KAAK,GAAG,cAAK,CAAC,SAAS,CAAC,IAAA,qBAAY,EAAC,aAAa,CAAC,EAAE,GAAG,CAAC,CAAC;QAEhE,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEtB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paper-margin-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-margin-simulator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"paper-margin-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-margin-simulator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paper-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-simulator.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,mEAA6C;AAE7C,4CAAyF;
|
|
1
|
+
{"version":3,"file":"paper-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-simulator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { PaperAdapter } from '..';
|
|
2
1
|
import { Order } from '../../../domain';
|
|
3
2
|
import { timestamp } from '../../../shared';
|
|
3
|
+
import { PaperAdapter } from '..';
|
|
4
4
|
import { PaperSimulator } from './paper-simulator';
|
|
5
5
|
export declare class PaperSpotSimulator extends PaperSimulator {
|
|
6
6
|
readonly adapter: PaperAdapter;
|
|
@@ -62,7 +62,7 @@ class PaperSpotSimulator extends paper_simulator_1.PaperSimulator {
|
|
|
62
62
|
switch (order.type) {
|
|
63
63
|
case 'MARKET':
|
|
64
64
|
return [
|
|
65
|
-
new store_1.BalanceUnfreezEvent(order.instrument.quote, quote.
|
|
65
|
+
new store_1.BalanceUnfreezEvent(order.instrument.quote, quote.locked, timestamp)
|
|
66
66
|
];
|
|
67
67
|
case 'LIMIT':
|
|
68
68
|
return [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paper-spot-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-spot-simulator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"paper-spot-simulator.js","sourceRoot":"","sources":["../../../../src/adapter/paper/simulator/paper-spot-simulator.ts"],"names":[],"mappings":"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"}
|
package/dist/bootstrap.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Bootstrap = void 0;
|
|
4
4
|
const adapter_1 = require("./adapter");
|
|
5
5
|
const domain_1 = require("./domain");
|
|
6
|
+
const storage_1 = require("./storage");
|
|
6
7
|
const store_1 = require("./store");
|
|
7
8
|
class Bootstrap {
|
|
8
9
|
constructor(descriptor) {
|
|
@@ -15,40 +16,55 @@ class Bootstrap {
|
|
|
15
16
|
return this;
|
|
16
17
|
}
|
|
17
18
|
useBacktestPeriod(from, to) {
|
|
19
|
+
if (!this.descriptor.simulation) {
|
|
20
|
+
this.descriptor.simulation = {
|
|
21
|
+
balance: {},
|
|
22
|
+
from: undefined,
|
|
23
|
+
to: undefined
|
|
24
|
+
};
|
|
25
|
+
}
|
|
18
26
|
if (from) {
|
|
19
|
-
this.descriptor.
|
|
27
|
+
this.descriptor.simulation.from = from;
|
|
20
28
|
}
|
|
21
29
|
if (to) {
|
|
22
|
-
this.descriptor.
|
|
30
|
+
this.descriptor.simulation.to = to;
|
|
23
31
|
}
|
|
24
32
|
return this;
|
|
25
33
|
}
|
|
26
34
|
backtest(listener) {
|
|
27
35
|
const store = new store_1.Store();
|
|
28
|
-
const {
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
36
|
+
const { storage } = this.descriptor;
|
|
37
|
+
const feed = new storage_1.Feed(storage.create('feed'));
|
|
38
|
+
const cache = new storage_1.Cache(storage.create('cache'));
|
|
39
|
+
const streamer = new adapter_1.BacktesterStreamer(store, feed, this.descriptor.simulation, listener);
|
|
40
|
+
const aggregate = new adapter_1.AdapterAggregate(this.descriptor.adapter.map(it => new adapter_1.BacktesterAdapter(new adapter_1.PaperAdapter(it, store, this.descriptor.simulation), streamer)), store, cache);
|
|
32
41
|
const session = new domain_1.Session(store, aggregate, this.descriptor);
|
|
33
42
|
return [session, streamer];
|
|
34
43
|
}
|
|
35
44
|
paper() {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
var _a;
|
|
46
|
+
if (!this.descriptor.simulation) {
|
|
47
|
+
this.descriptor.simulation = {
|
|
48
|
+
balance: {},
|
|
49
|
+
from: undefined,
|
|
50
|
+
to: undefined
|
|
42
51
|
};
|
|
43
52
|
}
|
|
53
|
+
if (!this.descriptor.simulation.balance) {
|
|
54
|
+
this.descriptor.simulation.balance = {};
|
|
55
|
+
}
|
|
44
56
|
const store = new store_1.Store();
|
|
45
|
-
const
|
|
46
|
-
const
|
|
57
|
+
const storage = (_a = this.descriptor.storage) !== null && _a !== void 0 ? _a : new storage_1.InMemoryStorageFactory();
|
|
58
|
+
const cache = new storage_1.Cache(storage.create('cache'));
|
|
59
|
+
const aggregate = new adapter_1.AdapterAggregate(this.descriptor.adapter.map(it => new adapter_1.PaperAdapter(it, store, this.descriptor.simulation)), store, cache);
|
|
47
60
|
return new domain_1.Session(store, aggregate, this.descriptor);
|
|
48
61
|
}
|
|
49
62
|
live() {
|
|
63
|
+
var _a;
|
|
50
64
|
const store = new store_1.Store();
|
|
51
|
-
const
|
|
65
|
+
const storage = (_a = this.descriptor.storage) !== null && _a !== void 0 ? _a : new storage_1.InMemoryStorageFactory();
|
|
66
|
+
const cache = new storage_1.Cache(storage.create('cache'));
|
|
67
|
+
const aggregate = new adapter_1.AdapterAggregate(this.descriptor.adapter, store, cache);
|
|
52
68
|
return new domain_1.Session(store, aggregate, this.descriptor);
|
|
53
69
|
}
|
|
54
70
|
}
|
package/dist/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":";;;AAAA,uCAMmB;AACnB,qCAAsD;AACtD,mCAAgC;AAEhC,MAAa,SAAS;IACpB,YAAqB,UAA6B;QAA7B,eAAU,GAAV,UAAU,CAAmB;IAAG,CAAC;IAMtD,YAAY,CAAC,EAAW;QACtB,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;SACzB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAOD,iBAAiB,CAAC,IAAa,EAAE,EAAW;QAC1C,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function (): Promise<number>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const child_process_1 = require("child_process");
|
|
4
|
+
const workspace_1 = require("./internal/workspace");
|
|
5
|
+
async function default_1() {
|
|
6
|
+
return new Promise((resolve, reject) => {
|
|
7
|
+
const process = (0, child_process_1.spawn)('swc', ['./src', '--out-dir', (0, workspace_1.buildDirectory)()], {
|
|
8
|
+
stdio: 'inherit',
|
|
9
|
+
shell: false
|
|
10
|
+
});
|
|
11
|
+
process.once('exit', resolve);
|
|
12
|
+
process.once('error', reject);
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
exports.default = default_1;
|
|
16
|
+
//# sourceMappingURL=build.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/cli/build.ts"],"names":[],"mappings":";;AAAA,iDAAsC;AAEtC,oDAAsD;AAEvC,KAAK;IAClB,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAA,0BAAc,GAAE,CAAC,EAAE;YACrE,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAVD,4BAUC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function (name: string, options: any): Promise<void>;
|
package/dist/cli/dev.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const bootstrap_1 = require("../bootstrap");
|
|
4
|
+
const build_1 = require("./build");
|
|
5
|
+
const workspace_1 = require("./internal/workspace");
|
|
6
|
+
async function default_1(name, options) {
|
|
7
|
+
if (await (0, build_1.default)()) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const id = options.id ? Number(options.id) : undefined;
|
|
11
|
+
const module = await (0, workspace_1.getModule)(name);
|
|
12
|
+
const bootstrap = new bootstrap_1.Bootstrap(module.descriptor);
|
|
13
|
+
const session = bootstrap.useSessionId(id).paper();
|
|
14
|
+
await session.awake(module.default);
|
|
15
|
+
}
|
|
16
|
+
exports.default = default_1;
|
|
17
|
+
//# sourceMappingURL=dev.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":";;AAAA,4CAAyC;AACzC,mCAA4B;AAC5B,oDAAiD;AAElC,KAAK,oBAAW,IAAY,EAAE,OAAY;IACvD,IAAI,MAAM,IAAA,eAAK,GAAE,EAAE;QACjB,OAAO;KACR;IAED,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEvD,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC;IAErC,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAEnD,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAbD,4BAaC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const commander_1 = require("commander");
|
|
6
|
+
const node_watch_1 = require("node-watch");
|
|
7
|
+
const build_1 = require("./build");
|
|
8
|
+
const dev_1 = require("./dev");
|
|
9
|
+
const pull_1 = require("./pull");
|
|
10
|
+
const run_1 = require("./run");
|
|
11
|
+
const test_1 = require("./test");
|
|
12
|
+
commander_1.program
|
|
13
|
+
.command('build')
|
|
14
|
+
.description('builds a production version of the app')
|
|
15
|
+
.action(async () => {
|
|
16
|
+
await (0, build_1.default)();
|
|
17
|
+
});
|
|
18
|
+
commander_1.program
|
|
19
|
+
.command('run')
|
|
20
|
+
.argument('<name>', 'strategy to execute')
|
|
21
|
+
.option('-i, --id <id>', 'session identifier')
|
|
22
|
+
.option('-w', 'watch mode')
|
|
23
|
+
.description('executes strategy in live trading mode')
|
|
24
|
+
.action(run_1.default);
|
|
25
|
+
commander_1.program
|
|
26
|
+
.command('dev')
|
|
27
|
+
.argument('<name>', 'strategy to execute')
|
|
28
|
+
.option('-i, --id <id>', 'session identifier')
|
|
29
|
+
.option('-w', 'watch mode')
|
|
30
|
+
.description('executes strategy in paper e.g. simulation mode')
|
|
31
|
+
.action(dev_1.default);
|
|
32
|
+
commander_1.program
|
|
33
|
+
.command('test')
|
|
34
|
+
.description('executes strategy in backtesting mode for specified period')
|
|
35
|
+
.argument('<name>', 'strategy to execute')
|
|
36
|
+
.option('-f, --from <from>', 'date from')
|
|
37
|
+
.option('-t, --to <to>', 'date to')
|
|
38
|
+
.option('-w', 'watch mode')
|
|
39
|
+
.action(test_1.default);
|
|
40
|
+
commander_1.program
|
|
41
|
+
.command('pull')
|
|
42
|
+
.description('pulls instrument historical data to storage')
|
|
43
|
+
.argument('<name>', 'strategy to execute')
|
|
44
|
+
.argument('<instrument>', 'instrument to import')
|
|
45
|
+
.option('-f, --from <from>', 'date from')
|
|
46
|
+
.option('-t, --to <to>', 'date to')
|
|
47
|
+
.action(pull_1.default);
|
|
48
|
+
commander_1.program.name('quantform').description('quantform tools');
|
|
49
|
+
if (process.argv.length < 3) {
|
|
50
|
+
commander_1.program.help();
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
if (process.argv.every(it => it != '-w')) {
|
|
54
|
+
commander_1.program.parse(process.argv);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const argv = process.argv.splice(1).filter(it => it != '-w');
|
|
58
|
+
let child;
|
|
59
|
+
const spawnChildProcess = () => {
|
|
60
|
+
console.clear();
|
|
61
|
+
if (child) {
|
|
62
|
+
child.kill();
|
|
63
|
+
}
|
|
64
|
+
child = (0, child_process_1.spawn)('node', argv, {
|
|
65
|
+
stdio: ['inherit', 'inherit', 'inherit', 'ipc']
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
spawnChildProcess();
|
|
69
|
+
(0, node_watch_1.default)(process.cwd() + '/src', { recursive: true }, () => spawnChildProcess());
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { Session, SessionDescriptor } from './../../domain';
|
|
3
|
+
export declare type StrategyModule = {
|
|
4
|
+
descriptor: SessionDescriptor;
|
|
5
|
+
default: (session: Session) => Observable<any>;
|
|
6
|
+
};
|
|
7
|
+
export declare function buildDirectory(): string;
|
|
8
|
+
export declare function getModule(name: string): Promise<StrategyModule>;
|