@quantform/core 0.3.264 → 0.3.272
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 +2 -2
- package/dist/adapter/adapter-aggregate.js.map +1 -1
- package/dist/adapter/adapter.d.ts +5 -6
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/backtester/backtester-adapter.d.ts +6 -6
- package/dist/adapter/backtester/backtester-adapter.js +5 -9
- package/dist/adapter/backtester/backtester-adapter.js.map +1 -1
- package/dist/adapter/backtester/backtester-cursor.d.ts +2 -2
- package/dist/adapter/backtester/backtester-cursor.spec.js +9 -9
- package/dist/adapter/backtester/backtester-cursor.spec.js.map +1 -1
- package/dist/adapter/backtester/backtester-streamer.d.ts +6 -4
- package/dist/adapter/backtester/backtester-streamer.js +5 -5
- package/dist/adapter/backtester/backtester-streamer.js.map +1 -1
- package/dist/adapter/backtester/backtester-streamer.spec.js +9 -11
- package/dist/adapter/backtester/backtester-streamer.spec.js.map +1 -1
- package/dist/adapter/index.d.ts +2 -0
- package/dist/adapter/index.js +2 -0
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/paper/index.d.ts +2 -2
- package/dist/adapter/paper/index.js +2 -2
- package/dist/adapter/paper/index.js.map +1 -1
- package/dist/adapter/paper/paper-adapter.d.ts +5 -5
- package/dist/adapter/paper/paper-adapter.js +9 -12
- package/dist/adapter/paper/paper-adapter.js.map +1 -1
- package/dist/adapter/paper/paper-adapter.spec.js +5 -7
- package/dist/adapter/paper/paper-adapter.spec.js.map +1 -1
- package/dist/adapter/paper/{executor/paper-margin-executor.d.ts → simulator/paper-margin-simulator.d.ts} +3 -3
- package/dist/adapter/paper/{executor/paper-margin-executor.js → simulator/paper-margin-simulator.js} +11 -11
- package/dist/adapter/paper/simulator/paper-margin-simulator.js.map +1 -0
- package/dist/adapter/paper/{executor/paper-executor.d.ts → simulator/paper-simulator.d.ts} +2 -2
- package/dist/adapter/paper/{executor/paper-executor.js → simulator/paper-simulator.js} +7 -7
- package/dist/adapter/paper/simulator/paper-simulator.js.map +1 -0
- package/dist/adapter/paper/{executor/paper-spot-executor.d.ts → simulator/paper-spot-simulator.d.ts} +3 -3
- package/dist/adapter/paper/{executor/paper-spot-executor.js → simulator/paper-spot-simulator.js} +17 -17
- package/dist/adapter/paper/simulator/paper-spot-simulator.js.map +1 -0
- package/dist/adapter/paper/simulator/paper-spot-simulator.spec.d.ts +1 -0
- package/dist/adapter/paper/simulator/paper-spot-simulator.spec.js +49 -0
- package/dist/adapter/paper/simulator/paper-spot-simulator.spec.js.map +1 -0
- package/dist/bootstrap.d.ts +1 -1
- package/dist/bootstrap.js +3 -5
- package/dist/bootstrap.js.map +1 -1
- package/dist/domain/balance.d.ts +1 -1
- package/dist/domain/candle.d.ts +14 -0
- package/dist/domain/candle.js +65 -1
- package/dist/domain/candle.js.map +1 -1
- package/dist/domain/candle.spec.js +11 -13
- package/dist/domain/candle.spec.js.map +1 -1
- package/dist/domain/index.d.ts +6 -8
- package/dist/domain/index.js +6 -8
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/order.d.ts +1 -1
- package/dist/domain/order.js.map +1 -1
- package/dist/domain/orderbook.d.ts +1 -1
- package/dist/domain/position.d.ts +2 -2
- package/dist/domain/position.js +3 -3
- package/dist/domain/position.js.map +1 -1
- package/dist/domain/session.d.ts +14 -3
- package/dist/domain/session.js +17 -18
- package/dist/domain/session.js.map +1 -1
- package/dist/domain/session.spec.js +3 -3
- package/dist/domain/session.spec.js.map +1 -1
- package/dist/domain/statement.d.ts +1 -2
- package/dist/domain/statement.js.map +1 -1
- package/dist/domain/trade.d.ts +1 -1
- package/dist/index.d.ts +4 -7
- package/dist/index.js +4 -7
- package/dist/index.js.map +1 -1
- package/dist/indicator/atr.js +3 -3
- package/dist/indicator/atr.js.map +1 -1
- package/dist/indicator/cross.js +3 -3
- package/dist/indicator/cross.js.map +1 -1
- package/dist/indicator/donchian.js +3 -4
- package/dist/indicator/donchian.js.map +1 -1
- package/dist/indicator/drawdown.js +3 -3
- package/dist/indicator/drawdown.js.map +1 -1
- package/dist/indicator/ema.js +3 -3
- package/dist/indicator/ema.js.map +1 -1
- package/dist/indicator/envelope.js +3 -3
- package/dist/indicator/envelope.js.map +1 -1
- package/dist/indicator/index.d.ts +3 -3
- package/dist/indicator/index.js +3 -3
- package/dist/indicator/index.js.map +1 -1
- package/dist/indicator/macd.js +2 -3
- package/dist/indicator/macd.js.map +1 -1
- package/dist/indicator/min-max.js +3 -3
- package/dist/indicator/min-max.js.map +1 -1
- package/dist/indicator/rma.js +3 -3
- package/dist/indicator/rma.js.map +1 -1
- package/dist/indicator/sma.js +2 -3
- package/dist/indicator/sma.js.map +1 -1
- package/dist/indicator/swma.js +3 -3
- package/dist/indicator/swma.js.map +1 -1
- package/dist/indicator/tma.js +3 -3
- package/dist/indicator/tma.js.map +1 -1
- package/dist/indicator/trailing.js +3 -3
- package/dist/indicator/trailing.js.map +1 -1
- package/dist/indicator/truerange.js +3 -3
- package/dist/indicator/truerange.js.map +1 -1
- package/dist/indicator/truerange.spec.js +2 -2
- package/dist/indicator/truerange.spec.js.map +1 -1
- package/dist/indicator/wma.js +3 -3
- package/dist/indicator/wma.js.map +1 -1
- package/dist/ipc.d.ts +1 -1
- package/dist/ipc.js +3 -3
- package/dist/ipc.js.map +1 -1
- package/dist/ipc.spec.js +4 -5
- package/dist/ipc.spec.js.map +1 -1
- package/dist/shared/index.d.ts +4 -4
- package/dist/shared/index.js +4 -4
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/policy.js +1 -1
- package/dist/shared/policy.js.map +1 -1
- package/dist/storage/feed.d.ts +1 -1
- package/dist/storage/feed.js.map +1 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/storage/index.js +1 -1
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/measurement.js.map +1 -1
- package/dist/storage/storage.js.map +1 -1
- package/dist/store/event/index.d.ts +4 -4
- package/dist/store/event/index.js +4 -4
- package/dist/store/event/index.js.map +1 -1
- package/dist/store/event/store-balance.event.d.ts +1 -1
- package/dist/store/event/store-balance.event.js +1 -1
- package/dist/store/event/store-balance.event.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 +2 -2
- package/dist/store/event/store-candle.event.js +2 -2
- 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.d.ts +1 -1
- package/dist/store/event/store-instrument.event.js +1 -1
- package/dist/store/event/store-instrument.event.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-order.event.d.ts +1 -1
- package/dist/store/event/store-order.event.js +6 -6
- package/dist/store/event/store-order.event.js.map +1 -1
- package/dist/store/event/store-order.event.spec.js +2 -2
- package/dist/store/event/store-order.event.spec.js.map +1 -1
- package/dist/store/event/store-orderbook.event.d.ts +1 -1
- package/dist/store/event/store-orderbook.event.js +1 -1
- package/dist/store/event/store-orderbook.event.js.map +1 -1
- package/dist/store/event/store-position.event.d.ts +1 -1
- package/dist/store/event/store-position.event.js +1 -1
- package/dist/store/event/store-position.event.js.map +1 -1
- package/dist/store/event/store-trade.event.d.ts +1 -1
- package/dist/store/event/store-trade.event.js +1 -1
- package/dist/store/event/store-trade.event.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.d.ts +1 -0
- package/dist/store/index.js +1 -0
- package/dist/store/index.js.map +1 -1
- package/dist/store/store.d.ts +2 -5
- package/dist/store/store.js +4 -8
- package/dist/store/store.js.map +1 -1
- package/dist/store/store.state.d.ts +1 -1
- package/dist/tests/backtester-adapter.spec.js +8 -15
- package/dist/tests/backtester-adapter.spec.js.map +1 -1
- package/dist/tests/session.spec.d.ts +0 -1
- package/dist/tests/session.spec.js +0 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/adapter/adapter-aggregate.ts +2 -3
- package/src/adapter/adapter.ts +5 -6
- package/src/adapter/backtester/backtester-adapter.ts +8 -8
- package/src/adapter/backtester/backtester-cursor.spec.ts +1 -1
- package/src/adapter/backtester/backtester-cursor.ts +2 -2
- package/src/adapter/backtester/backtester-streamer.spec.ts +1 -3
- package/src/adapter/backtester/backtester-streamer.ts +7 -8
- package/src/adapter/index.ts +2 -0
- package/src/adapter/paper/index.ts +2 -2
- package/src/adapter/paper/paper-adapter.spec.ts +6 -8
- package/src/adapter/paper/paper-adapter.ts +9 -11
- package/src/adapter/paper/{executor/paper-margin-executor.ts → simulator/paper-margin-simulator.ts} +5 -5
- package/src/adapter/paper/{executor/paper-executor.ts → simulator/paper-simulator.ts} +4 -4
- package/src/adapter/paper/simulator/paper-spot-simulator.spec.ts +87 -0
- package/src/adapter/paper/{executor/paper-spot-executor.ts → simulator/paper-spot-simulator.ts} +6 -6
- package/src/bootstrap.ts +4 -4
- package/src/domain/balance.ts +1 -1
- package/src/domain/candle.spec.ts +3 -5
- package/src/domain/candle.ts +103 -0
- package/src/domain/index.ts +6 -8
- package/src/domain/order.ts +2 -2
- package/src/domain/orderbook.ts +1 -1
- package/src/domain/position.ts +2 -3
- package/src/domain/session.spec.ts +3 -3
- package/src/domain/session.ts +61 -8
- package/src/domain/statement.ts +1 -2
- package/src/domain/trade.ts +1 -1
- package/src/index.ts +4 -7
- package/src/indicator/atr.ts +1 -2
- package/src/indicator/cross.ts +3 -4
- package/src/indicator/donchian.ts +2 -3
- package/src/indicator/drawdown.ts +2 -3
- package/src/indicator/ema.ts +1 -2
- package/src/indicator/envelope.ts +1 -2
- package/src/indicator/index.ts +3 -3
- package/src/indicator/macd.ts +1 -2
- package/src/indicator/min-max.ts +1 -2
- package/src/indicator/rma.ts +1 -2
- package/src/indicator/sma.ts +1 -2
- package/src/indicator/swma.ts +1 -2
- package/src/indicator/tma.ts +1 -2
- package/src/indicator/trailing.ts +3 -4
- package/src/indicator/truerange.spec.ts +2 -2
- package/src/indicator/truerange.ts +1 -2
- package/src/indicator/window.ts +1 -1
- package/src/indicator/wma.ts +1 -2
- package/src/ipc.spec.ts +6 -7
- package/src/ipc.ts +6 -6
- package/src/shared/index.ts +4 -4
- package/src/shared/policy.ts +1 -1
- package/src/shared/topic.spec.ts +1 -1
- package/src/storage/feed.ts +20 -1
- package/src/storage/index.ts +1 -1
- package/src/storage/measurement.ts +19 -0
- package/src/storage/storage.ts +37 -0
- package/src/store/event/index.ts +4 -4
- package/src/store/event/store-balance.event.spec.ts +3 -3
- package/src/store/event/store-balance.event.ts +2 -2
- package/src/store/event/store-candle.event.spec.ts +1 -1
- package/src/store/event/store-candle.event.ts +5 -5
- package/src/store/event/store-instrument.event.spec.ts +1 -1
- package/src/store/event/store-instrument.event.ts +2 -2
- package/src/store/event/store-order.event.spec.ts +2 -2
- package/src/store/event/store-order.event.ts +7 -7
- package/src/store/event/store-orderbook.event.ts +2 -2
- package/src/store/event/store-position.event.ts +2 -2
- package/src/store/event/store-trade.event.spec.ts +2 -2
- package/src/store/event/store-trade.event.ts +2 -2
- package/src/store/index.ts +1 -0
- package/src/store/store.state.ts +7 -7
- package/src/store/store.ts +6 -9
- package/src/tests/backtester-adapter.spec.ts +8 -15
- package/src/tests/session.spec.ts +0 -3
- package/dist/adapter/paper/executor/paper-executor.js.map +0 -1
- package/dist/adapter/paper/executor/paper-margin-executor.js.map +0 -1
- package/dist/adapter/paper/executor/paper-spot-executor.js.map +0 -1
- package/dist/domain/candle-builder.d.ts +0 -16
- package/dist/domain/candle-builder.js +0 -70
- package/dist/domain/candle-builder.js.map +0 -1
- package/dist/domain/session-descriptor.d.ts +0 -15
- package/dist/domain/session-descriptor.js +0 -3
- package/dist/domain/session-descriptor.js.map +0 -1
- package/src/domain/candle-builder.ts +0 -104
- package/src/domain/session-descriptor.ts +0 -53
package/dist/domain/session.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Session = void 0;
|
|
4
|
-
const operators_1 = require("rxjs/operators");
|
|
5
|
-
const domain_1 = require("../domain");
|
|
6
4
|
const rxjs_1 = require("rxjs");
|
|
7
|
-
const
|
|
5
|
+
const domain_1 = require("../domain");
|
|
8
6
|
const trade_1 = require("../domain/trade");
|
|
7
|
+
const shared_1 = require("../shared");
|
|
9
8
|
class Session {
|
|
10
9
|
constructor(store, aggregate, descriptor) {
|
|
11
10
|
this.store = store;
|
|
@@ -52,7 +51,7 @@ class Session {
|
|
|
52
51
|
to: (_a = params.timestamp) !== null && _a !== void 0 ? _a : this.timestamp,
|
|
53
52
|
kind: params.kind,
|
|
54
53
|
count: 1
|
|
55
|
-
})).pipe((0,
|
|
54
|
+
})).pipe((0, rxjs_1.map)(it => it.length ? Object.assign({ timestamp: it[0].timestamp }, it[0].payload) : defaultValue), (0, rxjs_1.share)());
|
|
56
55
|
const subject$ = new rxjs_1.Subject();
|
|
57
56
|
const setter = (value) => {
|
|
58
57
|
var _a;
|
|
@@ -70,53 +69,53 @@ class Session {
|
|
|
70
69
|
return this.aggregate.subscribe(instrument);
|
|
71
70
|
}
|
|
72
71
|
open(order) {
|
|
73
|
-
return (0, rxjs_1.from)(this.aggregate.open(order)).pipe((0,
|
|
72
|
+
return (0, rxjs_1.from)(this.aggregate.open(order)).pipe((0, rxjs_1.switchMap)(it => this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Order && it.id == it.id))), (0, rxjs_1.map)(it => it));
|
|
74
73
|
}
|
|
75
74
|
cancel(order) {
|
|
76
|
-
return (0, rxjs_1.from)(this.aggregate.cancel(order)).pipe((0,
|
|
75
|
+
return (0, rxjs_1.from)(this.aggregate.cancel(order)).pipe((0, rxjs_1.switchMap)(it => this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Order && it.id == it.id))), (0, rxjs_1.map)(it => it));
|
|
77
76
|
}
|
|
78
77
|
instrument(selector) {
|
|
79
78
|
this.subscribe([selector]);
|
|
80
|
-
return this.store.changes$.pipe((0,
|
|
79
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Instrument && it.toString() == selector.toString()), (0, rxjs_1.map)(it => it));
|
|
81
80
|
}
|
|
82
81
|
instruments() {
|
|
83
|
-
return this.store.changes$.pipe((0,
|
|
82
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Instrument), (0, rxjs_1.map)(() => Object.values(this.store.snapshot.universe.instrument)), (0, rxjs_1.startWith)(Object.values(this.store.snapshot.universe.instrument)), (0, rxjs_1.filter)(it => it.length > 0), (0, rxjs_1.distinctUntilChanged)((lhs, rhs) => lhs.length == rhs.length));
|
|
84
83
|
}
|
|
85
84
|
trade(selector) {
|
|
86
85
|
this.subscribe([selector]);
|
|
87
|
-
return this.store.changes$.pipe((0,
|
|
86
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof trade_1.Trade && it.instrument.toString() == selector.toString()), (0, rxjs_1.map)(it => it));
|
|
88
87
|
}
|
|
89
88
|
orderbook(selector) {
|
|
90
89
|
this.subscribe([selector]);
|
|
91
|
-
return this.store.changes$.pipe((0,
|
|
90
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Orderbook && it.instrument.toString() == selector.toString()), (0, rxjs_1.map)(it => it));
|
|
92
91
|
}
|
|
93
92
|
position(selector) {
|
|
94
93
|
this.subscribe([selector]);
|
|
95
|
-
return this.store.changes$.pipe((0,
|
|
94
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Position && it.instrument.toString() == selector.toString()), (0, rxjs_1.map)(it => it));
|
|
96
95
|
}
|
|
97
96
|
positions(selector) {
|
|
98
97
|
this.subscribe([selector]);
|
|
99
|
-
return this.store.changes$.pipe((0,
|
|
98
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Position && it.instrument.toString() == selector.toString()), (0, rxjs_1.map)(() => Object.values(this.store.snapshot.balance[selector.quote.toString()].position).filter(it => it.instrument.toString() == selector.toString())), (0, rxjs_1.startWith)([]));
|
|
100
99
|
}
|
|
101
100
|
order(selector) {
|
|
102
101
|
this.subscribe([selector]);
|
|
103
|
-
return this.store.changes$.pipe((0,
|
|
102
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Order && it.instrument.toString() == selector.toString()), (0, rxjs_1.map)(it => it));
|
|
104
103
|
}
|
|
105
104
|
orders(selector, states) {
|
|
106
105
|
this.subscribe([selector]);
|
|
107
|
-
return this.store.changes$.pipe((0,
|
|
106
|
+
return this.store.changes$.pipe((0, rxjs_1.filter)(it => it instanceof domain_1.Order &&
|
|
108
107
|
it.instrument.toString() == selector.toString() &&
|
|
109
|
-
(!states || states.includes(it.state))), (0,
|
|
108
|
+
(!states || states.includes(it.state))), (0, rxjs_1.map)(() => this.store.snapshot.order), (0, rxjs_1.startWith)(this.store.snapshot.order), (0, rxjs_1.map)(it => Object.values(it)
|
|
110
109
|
.filter(it => it.instrument.toString() == selector.toString() &&
|
|
111
110
|
(states ? states.includes(it.state) : true))
|
|
112
111
|
.sort((lhs, rhs) => rhs.createdAt - lhs.createdAt)));
|
|
113
112
|
}
|
|
114
113
|
balance(selector) {
|
|
115
|
-
return this.store.changes$.pipe((0,
|
|
116
|
-
(!selector || it.asset.toString() == selector.toString())), (0,
|
|
114
|
+
return this.store.changes$.pipe((0, rxjs_1.startWith)(this.store.snapshot.balance[selector.toString()]), (0, rxjs_1.filter)(it => it instanceof domain_1.Balance &&
|
|
115
|
+
(!selector || it.asset.toString() == selector.toString())), (0, rxjs_1.map)(it => it));
|
|
117
116
|
}
|
|
118
117
|
history(selector, timeframe, length) {
|
|
119
|
-
return this.store.changes$.pipe((0,
|
|
118
|
+
return this.store.changes$.pipe((0, rxjs_1.startWith)(this.store.snapshot.universe.instrument[selector.toString()]), (0, rxjs_1.filter)(it => it instanceof domain_1.Instrument && it.toString() == selector.toString()), (0, rxjs_1.switchMap)(() => (0, rxjs_1.from)(this.aggregate.history({ instrument: selector, timeframe, length }))), (0, rxjs_1.take)(1), (0, rxjs_1.shareReplay)(), (0, rxjs_1.mergeMap)(it => it));
|
|
120
119
|
}
|
|
121
120
|
}
|
|
122
121
|
exports.Session = Session;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/domain/session.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/domain/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const bootstrap_1 = require("../bootstrap");
|
|
4
4
|
const domain_1 = require("../domain");
|
|
5
5
|
const shared_1 = require("../shared");
|
|
6
|
-
const
|
|
6
|
+
const store_1 = require("../store");
|
|
7
7
|
describe('session tests', () => {
|
|
8
8
|
const descriptor = {
|
|
9
9
|
id: (0, shared_1.now)(),
|
|
@@ -17,7 +17,7 @@ describe('session tests', () => {
|
|
|
17
17
|
},
|
|
18
18
|
complete: done()
|
|
19
19
|
});
|
|
20
|
-
session.store.dispatch(new
|
|
20
|
+
session.store.dispatch(new store_1.InstrumentPatchEvent((0, shared_1.now)(), new domain_1.Asset('de30', 'cex', 2), new domain_1.Asset('usd', 'cex', 2), new domain_1.Commission(0, 0), ''), new store_1.InstrumentPatchEvent((0, shared_1.now)(), new domain_1.Asset('wig20', 'cex', 2), new domain_1.Asset('pln', 'cex', 2), new domain_1.Commission(0, 0), ''));
|
|
21
21
|
});
|
|
22
22
|
});
|
|
23
23
|
//# sourceMappingURL=session.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.spec.js","sourceRoot":"","sources":["../../src/domain/session.spec.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"session.spec.js","sourceRoot":"","sources":["../../src/domain/session.spec.ts"],"names":[],"mappings":";;AAAA,4CAAyC;AACzC,sCAA8C;AAC9C,sCAAgC;AAChC,oCAAgD;AAGhD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,UAAU,GAAsB;QACpC,EAAE,EAAE,IAAA,YAAG,GAAE;QACT,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAAE;QACjC,MAAM,OAAO,GAAG,IAAI,qBAAS,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAElD,OAAO,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC;YAC9B,IAAI,EAAE,EAAE,CAAC,EAAE;gBACT,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC;YACD,QAAQ,EAAE,IAAI,EAAE;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,KAAK,CAAC,QAAQ,CACpB,IAAI,4BAAoB,CACtB,IAAA,YAAG,GAAE,EACL,IAAI,cAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAC3B,IAAI,cAAK,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAC1B,IAAI,mBAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,EAAE,CACH,EACD,IAAI,4BAAoB,CACtB,IAAA,YAAG,GAAE,EACL,IAAI,cAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAC5B,IAAI,cAAK,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAC1B,IAAI,mBAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,EAAE,CACH,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { Session } from '.';
|
|
2
|
-
import { InstrumentSelector } from '.';
|
|
1
|
+
import { InstrumentSelector, Session } from '.';
|
|
3
2
|
export declare function period(): (session: Session) => import("rxjs").Observable<import("./component").Component>;
|
|
4
3
|
export declare function benchmark(instrument: InstrumentSelector): (session: Session) => import("rxjs").Observable<void>;
|
|
5
4
|
export declare function equity(instrument: InstrumentSelector): (session: Session) => import("rxjs").Observable<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statement.js","sourceRoot":"","sources":["../../src/domain/statement.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"statement.js","sourceRoot":"","sources":["../../src/domain/statement.ts"],"names":[],"mappings":"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"}
|
package/dist/domain/trade.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
export * from './shared';
|
|
2
|
-
export * from './domain';
|
|
3
1
|
export * from './adapter';
|
|
4
|
-
export * from './
|
|
5
|
-
export * from './
|
|
2
|
+
export * from './bootstrap';
|
|
3
|
+
export * from './domain';
|
|
6
4
|
export * from './indicator';
|
|
5
|
+
export * from './ipc';
|
|
6
|
+
export * from './shared';
|
|
7
7
|
export * from './storage';
|
|
8
8
|
export * from './store';
|
|
9
|
-
export * from './store/event';
|
|
10
|
-
export * from './bootstrap';
|
|
11
|
-
export * from './ipc';
|
package/dist/index.js
CHANGED
|
@@ -10,15 +10,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./shared"), exports);
|
|
14
|
-
__exportStar(require("./domain"), exports);
|
|
15
13
|
__exportStar(require("./adapter"), exports);
|
|
16
|
-
__exportStar(require("./
|
|
17
|
-
__exportStar(require("./
|
|
14
|
+
__exportStar(require("./bootstrap"), exports);
|
|
15
|
+
__exportStar(require("./domain"), exports);
|
|
18
16
|
__exportStar(require("./indicator"), exports);
|
|
17
|
+
__exportStar(require("./ipc"), exports);
|
|
18
|
+
__exportStar(require("./shared"), exports);
|
|
19
19
|
__exportStar(require("./storage"), exports);
|
|
20
20
|
__exportStar(require("./store"), exports);
|
|
21
|
-
__exportStar(require("./store/event"), exports);
|
|
22
|
-
__exportStar(require("./bootstrap"), exports);
|
|
23
|
-
__exportStar(require("./ipc"), exports);
|
|
24
21
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B;AAC1B,8CAA4B;AAC5B,2CAAyB;AACzB,8CAA4B;AAC5B,wCAAsB;AACtB,2CAAyB;AACzB,4CAA0B;AAC1B,0CAAwB"}
|
package/dist/indicator/atr.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.atr = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
const rma_1 = require("./rma");
|
|
6
6
|
const truerange_1 = require("./truerange");
|
|
7
7
|
function atr(length, fn) {
|
|
8
8
|
return function (source) {
|
|
9
|
-
return source.pipe((0, truerange_1.truerange)(fn), (0, rma_1.rma)(length, ([, tr]) => tr), (0,
|
|
9
|
+
return source.pipe((0, truerange_1.truerange)(fn), (0, rma_1.rma)(length, ([, tr]) => tr), (0, rxjs_1.map)(([[it], truerange]) => {
|
|
10
10
|
const tuple = [it, truerange];
|
|
11
11
|
return tuple;
|
|
12
|
-
}), (0,
|
|
12
|
+
}), (0, rxjs_1.share)());
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
exports.atr = atr;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atr.js","sourceRoot":"","sources":["../../src/indicator/atr.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"atr.js","sourceRoot":"","sources":["../../src/indicator/atr.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAE9C,+BAA4B;AAC5B,2CAAwC;AAExC,SAAgB,GAAG,CAAI,MAAc,EAAE,EAAqB;IAC1D,OAAO,UAAU,MAAqB;QACpC,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,qBAAS,EAAC,EAAE,CAAC,EACb,IAAA,SAAG,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAC3B,IAAA,UAAG,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE;YACxB,MAAM,KAAK,GAAgB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAE3C,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAbD,kBAaC"}
|
package/dist/indicator/cross.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.crossover = exports.crossunder = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
function crossunder(limitFn, currentFn) {
|
|
6
6
|
return function (source) {
|
|
7
7
|
let triggered = false;
|
|
8
|
-
return source.pipe((0,
|
|
8
|
+
return source.pipe((0, rxjs_1.filter)(it => {
|
|
9
9
|
const limit = limitFn(it);
|
|
10
10
|
const current = currentFn(it);
|
|
11
11
|
if (current < limit) {
|
|
@@ -23,7 +23,7 @@ exports.crossunder = crossunder;
|
|
|
23
23
|
function crossover(limitFn, currentFn) {
|
|
24
24
|
return function (source) {
|
|
25
25
|
let triggered = false;
|
|
26
|
-
return source.pipe((0,
|
|
26
|
+
return source.pipe((0, rxjs_1.filter)(it => {
|
|
27
27
|
const limit = limitFn(it);
|
|
28
28
|
const current = currentFn(it);
|
|
29
29
|
if (current > limit) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross.js","sourceRoot":"","sources":["../../src/indicator/cross.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"cross.js","sourceRoot":"","sources":["../../src/indicator/cross.ts"],"names":[],"mappings":";;;AAAA,+BAA0C;AAE1C,SAAgB,UAAU,CAAI,OAA0B,EAAE,SAA4B;IACpF,OAAO,UAAU,MAAqB;QACpC,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,aAAM,EAAC,EAAE,CAAC,EAAE;YACV,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;YAE9B,IAAI,OAAO,GAAG,KAAK,EAAE;gBACnB,SAAS,GAAG,IAAI,CAAC;aAClB;YAED,IAAI,SAAS,IAAI,OAAO,GAAG,KAAK,EAAE;gBAChC,SAAS,GAAG,KAAK,CAAC;gBAElB,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAvBD,gCAuBC;AAED,SAAgB,SAAS,CAAI,OAA0B,EAAE,SAA4B;IACnF,OAAO,UAAU,MAAqB;QACpC,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,aAAM,EAAC,EAAE,CAAC,EAAE;YACV,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;YAE9B,IAAI,OAAO,GAAG,KAAK,EAAE;gBACnB,SAAS,GAAG,IAAI,CAAC;aAClB;YAED,IAAI,SAAS,IAAI,OAAO,GAAG,KAAK,EAAE;gBAChC,SAAS,GAAG,KAAK,CAAC;gBAElB,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAvBD,8BAuBC"}
|
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.donchian = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
const operators_1 = require("rxjs/operators");
|
|
6
5
|
const min_max_1 = require("./min-max");
|
|
7
6
|
function donchian(length, fn) {
|
|
8
7
|
return function (source) {
|
|
9
|
-
source = source.pipe((0,
|
|
10
|
-
return source.pipe((0, rxjs_1.withLatestFrom)(source.pipe((0, min_max_1.minMax)(length, it => fn(it).low)), source.pipe((0, min_max_1.minMax)(length, it => fn(it).high))), (0,
|
|
8
|
+
source = source.pipe((0, rxjs_1.share)());
|
|
9
|
+
return source.pipe((0, rxjs_1.withLatestFrom)(source.pipe((0, min_max_1.minMax)(length, it => fn(it).low)), source.pipe((0, min_max_1.minMax)(length, it => fn(it).high))), (0, rxjs_1.map)(([it, low, high]) => {
|
|
11
10
|
const tuple = [it, { lower: low[1].min, upper: high[1].max }];
|
|
12
11
|
return tuple;
|
|
13
|
-
}), (0,
|
|
12
|
+
}), (0, rxjs_1.share)());
|
|
14
13
|
};
|
|
15
14
|
}
|
|
16
15
|
exports.donchian = donchian;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"donchian.js","sourceRoot":"","sources":["../../src/indicator/donchian.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"donchian.js","sourceRoot":"","sources":["../../src/indicator/donchian.ts"],"names":[],"mappings":";;;AAAA,+BAA8D;AAE9D,uCAAmC;AAEnC,SAAgB,QAAQ,CAAI,MAAc,EAAE,EAAqB;IAC/D,OAAO,UAAU,MAAqB;QASpC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,YAAK,GAAE,CAAC,CAAC;QAE9B,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,qBAAc,EACZ,MAAM,CAAC,IAAI,CAAC,IAAA,gBAAM,EAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAC7C,MAAM,CAAC,IAAI,CAAC,IAAA,gBAAM,EAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAC/C,EACD,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,MAAM,KAAK,GAMP,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAEpD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AA/BD,4BA+BC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.drawdown = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
function drawdown(fn) {
|
|
6
6
|
return function (source) {
|
|
7
7
|
let rate;
|
|
8
8
|
let max = 0;
|
|
9
|
-
return source.pipe((0,
|
|
9
|
+
return source.pipe((0, rxjs_1.map)(it => {
|
|
10
10
|
const value = fn(it);
|
|
11
11
|
if (!rate) {
|
|
12
12
|
rate = value;
|
|
@@ -20,7 +20,7 @@ function drawdown(fn) {
|
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
return max;
|
|
23
|
-
}), (0,
|
|
23
|
+
}), (0, rxjs_1.share)());
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
26
|
exports.drawdown = drawdown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawdown.js","sourceRoot":"","sources":["../../src/indicator/drawdown.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"drawdown.js","sourceRoot":"","sources":["../../src/indicator/drawdown.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAE9C,SAAgB,QAAQ,CAAI,EAAqB;IAC/C,OAAO,UAAU,MAAqB;QACpC,IAAI,IAAI,CAAC;QACT,IAAI,GAAG,GAAG,CAAC,CAAC;QAEZ,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,UAAG,EAAC,EAAE,CAAC,EAAE;YACP,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAErB,IAAI,CAAC,IAAI,EAAE;gBACT,IAAI,GAAG,KAAK,CAAC;aACd;iBAAM;gBACL,IAAI,KAAK,GAAG,IAAI,EAAE;oBAChB,IAAI,GAAG,KAAK,CAAC;iBACd;qBAAM,IAAI,KAAK,GAAG,IAAI,EAAE;oBACvB,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;iBACvC;aACF;YAED,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAxBD,4BAwBC"}
|
package/dist/indicator/ema.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ema = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
const sma_1 = require("./sma");
|
|
6
6
|
function ema(length, fn) {
|
|
7
7
|
return function (source) {
|
|
8
8
|
const alpha = 2.0 / (length + 1);
|
|
9
9
|
let value = null;
|
|
10
|
-
return source.pipe((0, sma_1.sma)(length, fn), (0,
|
|
10
|
+
return source.pipe((0, sma_1.sma)(length, fn), (0, rxjs_1.map)(([it, sma]) => {
|
|
11
11
|
if (!value) {
|
|
12
12
|
value = sma;
|
|
13
13
|
}
|
|
@@ -16,7 +16,7 @@ function ema(length, fn) {
|
|
|
16
16
|
}
|
|
17
17
|
const tuple = [it, value];
|
|
18
18
|
return tuple;
|
|
19
|
-
}), (0,
|
|
19
|
+
}), (0, rxjs_1.share)());
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
exports.ema = ema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ema.js","sourceRoot":"","sources":["../../src/indicator/ema.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ema.js","sourceRoot":"","sources":["../../src/indicator/ema.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAC9C,+BAA4B;AAE5B,SAAgB,GAAG,CAAI,MAAc,EAAE,EAAqB;IAC1D,OAAO,UAAU,MAAqB;QACpC,MAAM,KAAK,GAAG,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjC,IAAI,KAAK,GAAW,IAAI,CAAC;QAEzB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,SAAG,EAAC,MAAM,EAAE,EAAE,CAAC,EACf,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,KAAK,EAAE;gBACV,KAAK,GAAG,GAAG,CAAC;aACb;iBAAM;gBACL,KAAK,GAAG,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;aAChD;YAED,MAAM,KAAK,GAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAEvC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AArBD,kBAqBC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.envelope = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
const sma_1 = require("./sma");
|
|
6
6
|
function envelope(length, percent, valueFn) {
|
|
7
7
|
return function (source) {
|
|
8
|
-
return source.pipe((0, sma_1.sma)(length, valueFn), (0,
|
|
8
|
+
return source.pipe((0, sma_1.sma)(length, valueFn), (0, rxjs_1.map)(([it, sma]) => {
|
|
9
9
|
const offset = (sma * percent) / 100;
|
|
10
10
|
return {
|
|
11
11
|
min: sma - offset,
|
|
12
12
|
max: sma + offset
|
|
13
13
|
};
|
|
14
|
-
}), (0,
|
|
14
|
+
}), (0, rxjs_1.share)());
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
exports.envelope = envelope;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/indicator/envelope.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/indicator/envelope.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAC9C,+BAA4B;AAE5B,SAAgB,QAAQ,CAAI,MAAc,EAAE,OAAe,EAAE,OAA0B;IACrF,OAAO,UAAU,MAAqB;QACpC,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,SAAG,EAAC,MAAM,EAAE,OAAO,CAAC,EACpB,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE;YAChB,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC;YAErC,OAAO;gBACL,GAAG,EAAE,GAAG,GAAG,MAAM;gBACjB,GAAG,EAAE,GAAG,GAAG,MAAM;aAClB,CAAC;QACJ,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAfD,4BAeC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
export * from './atr';
|
|
1
2
|
export * from './cross';
|
|
3
|
+
export * from './donchian';
|
|
4
|
+
export * from './drawdown';
|
|
2
5
|
export * from './ema';
|
|
3
6
|
export * from './envelope';
|
|
4
7
|
export * from './macd';
|
|
@@ -12,6 +15,3 @@ export * from './trailing';
|
|
|
12
15
|
export * from './truerange';
|
|
13
16
|
export * from './window';
|
|
14
17
|
export * from './wma';
|
|
15
|
-
export * from './donchian';
|
|
16
|
-
export * from './atr';
|
|
17
|
-
export * from './drawdown';
|
package/dist/indicator/index.js
CHANGED
|
@@ -10,7 +10,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./atr"), exports);
|
|
13
14
|
__exportStar(require("./cross"), exports);
|
|
15
|
+
__exportStar(require("./donchian"), exports);
|
|
16
|
+
__exportStar(require("./drawdown"), exports);
|
|
14
17
|
__exportStar(require("./ema"), exports);
|
|
15
18
|
__exportStar(require("./envelope"), exports);
|
|
16
19
|
__exportStar(require("./macd"), exports);
|
|
@@ -24,7 +27,4 @@ __exportStar(require("./trailing"), exports);
|
|
|
24
27
|
__exportStar(require("./truerange"), exports);
|
|
25
28
|
__exportStar(require("./window"), exports);
|
|
26
29
|
__exportStar(require("./wma"), exports);
|
|
27
|
-
__exportStar(require("./donchian"), exports);
|
|
28
|
-
__exportStar(require("./atr"), exports);
|
|
29
|
-
__exportStar(require("./drawdown"), exports);
|
|
30
30
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indicator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,wCAAsB;AACtB,6CAA2B;AAC3B,yCAAuB;AACvB,4CAA0B;AAC1B,gDAA8B;AAC9B,wCAAsB;AACtB,wCAAsB;AACtB,yCAAuB;AACvB,wCAAsB;AACtB,6CAA2B;AAC3B,8CAA4B;AAC5B,2CAAyB;AACzB,wCAAsB
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indicator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAsB;AACtB,0CAAwB;AACxB,6CAA2B;AAC3B,6CAA2B;AAC3B,wCAAsB;AACtB,6CAA2B;AAC3B,yCAAuB;AACvB,4CAA0B;AAC1B,gDAA8B;AAC9B,wCAAsB;AACtB,wCAAsB;AACtB,yCAAuB;AACvB,wCAAsB;AACtB,6CAA2B;AAC3B,8CAA4B;AAC5B,2CAAyB;AACzB,wCAAsB"}
|
package/dist/indicator/macd.js
CHANGED
|
@@ -2,12 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.macd = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
const operators_1 = require("rxjs/operators");
|
|
6
5
|
const ema_1 = require("./ema");
|
|
7
6
|
function macd(fast, slow, length, fn) {
|
|
8
7
|
return function (source) {
|
|
9
|
-
source = source.pipe((0,
|
|
10
|
-
return source.pipe((0, rxjs_1.withLatestFrom)(source.pipe((0, ema_1.ema)(fast, fn)), source.pipe((0, ema_1.ema)(slow, fn))), (0, ema_1.ema)(length, it => it[1][1] - it[2][1]), (0,
|
|
8
|
+
source = source.pipe((0, rxjs_1.share)());
|
|
9
|
+
return source.pipe((0, rxjs_1.withLatestFrom)(source.pipe((0, ema_1.ema)(fast, fn)), source.pipe((0, ema_1.ema)(slow, fn))), (0, ema_1.ema)(length, it => it[1][1] - it[2][1]), (0, rxjs_1.map)(([it, macd]) => macd), (0, rxjs_1.share)());
|
|
11
10
|
};
|
|
12
11
|
}
|
|
13
12
|
exports.macd = macd;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macd.js","sourceRoot":"","sources":["../../src/indicator/macd.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"macd.js","sourceRoot":"","sources":["../../src/indicator/macd.ts"],"names":[],"mappings":";;;AAAA,+BAA8D;AAC9D,+BAA4B;AAE5B,SAAgB,IAAI,CAClB,IAAY,EACZ,IAAY,EACZ,MAAc,EACd,EAAqB;IAErB,OAAO,UAAU,MAAqB;QACpC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,YAAK,GAAE,CAAC,CAAC;QAE9B,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,qBAAc,EAAC,MAAM,CAAC,IAAI,CAAC,IAAA,SAAG,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAA,SAAG,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EACtE,IAAA,SAAG,EAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACtC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EACzB,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAhBD,oBAgBC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.minMax = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
const window_1 = require("./window");
|
|
6
6
|
function minMax(length, fn) {
|
|
7
7
|
return function (source) {
|
|
8
|
-
return source.pipe((0, window_1.window)(length, fn), (0,
|
|
8
|
+
return source.pipe((0, window_1.window)(length, fn), (0, rxjs_1.filter)(([, buffer]) => buffer.isFull), (0, rxjs_1.map)(([it, buffer]) => {
|
|
9
9
|
let min = 0;
|
|
10
10
|
let max = 0;
|
|
11
11
|
buffer.forEach(it => {
|
|
@@ -14,7 +14,7 @@ function minMax(length, fn) {
|
|
|
14
14
|
});
|
|
15
15
|
const tuple = [it, { min, max }];
|
|
16
16
|
return tuple;
|
|
17
|
-
}), (0,
|
|
17
|
+
}), (0, rxjs_1.share)());
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
exports.minMax = minMax;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"min-max.js","sourceRoot":"","sources":["../../src/indicator/min-max.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"min-max.js","sourceRoot":"","sources":["../../src/indicator/min-max.ts"],"names":[],"mappings":";;;AAAA,+BAAsD;AACtD,qCAAkC;AAElC,SAAgB,MAAM,CAAI,MAAc,EAAE,EAAqB;IAC7D,OAAO,UAAU,MAAqB;QACpC,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,eAAM,EAAC,MAAM,EAAE,EAAE,CAAC,EAClB,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EACrC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACnB,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBAClB,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBACxB,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;YACH,MAAM,KAAK,GAAsC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;YAEpE,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AApBD,wBAoBC"}
|
package/dist/indicator/rma.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.rma = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
5
|
const _1 = require(".");
|
|
6
6
|
function rma(length, fn) {
|
|
7
7
|
return function (source) {
|
|
8
8
|
const alpha = 1.0 / length;
|
|
9
9
|
let value = null;
|
|
10
|
-
return source.pipe((0, _1.sma)(length, fn), (0,
|
|
10
|
+
return source.pipe((0, _1.sma)(length, fn), (0, rxjs_1.map)(([it, sma]) => {
|
|
11
11
|
if (!value) {
|
|
12
12
|
value = sma;
|
|
13
13
|
}
|
|
@@ -16,7 +16,7 @@ function rma(length, fn) {
|
|
|
16
16
|
}
|
|
17
17
|
const tuple = [it, value];
|
|
18
18
|
return tuple;
|
|
19
|
-
}), (0,
|
|
19
|
+
}), (0, rxjs_1.share)());
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
exports.rma = rma;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rma.js","sourceRoot":"","sources":["../../src/indicator/rma.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"rma.js","sourceRoot":"","sources":["../../src/indicator/rma.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAC9C,wBAAwB;AAExB,SAAgB,GAAG,CAAI,MAAc,EAAE,EAAqB;IAC1D,OAAO,UAAU,MAAqB;QACpC,MAAM,KAAK,GAAG,GAAG,GAAG,MAAM,CAAC;QAC3B,IAAI,KAAK,GAAW,IAAI,CAAC;QAEzB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,MAAG,EAAC,MAAM,EAAE,EAAE,CAAC,EACf,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,KAAK,EAAE;gBACV,KAAK,GAAG,GAAG,CAAC;aACb;iBAAM;gBACL,KAAK,GAAG,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;aAChD;YAED,MAAM,KAAK,GAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AApBD,kBAoBC"}
|
package/dist/indicator/sma.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.sma = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
const operators_1 = require("rxjs/operators");
|
|
6
5
|
const window_1 = require("./window");
|
|
7
6
|
function sma(length, fn) {
|
|
8
7
|
return function (source) {
|
|
@@ -10,10 +9,10 @@ function sma(length, fn) {
|
|
|
10
9
|
return source.pipe((0, window_1.window)(length, fn), (0, rxjs_1.tap)(([, , added, removed]) => {
|
|
11
10
|
accumulated += added;
|
|
12
11
|
accumulated -= removed;
|
|
13
|
-
}), (0,
|
|
12
|
+
}), (0, rxjs_1.filter)(([, buffer]) => buffer.isFull), (0, rxjs_1.map)(([it, buffer]) => {
|
|
14
13
|
const tuple = [it, accumulated / buffer.size];
|
|
15
14
|
return tuple;
|
|
16
|
-
}), (0,
|
|
15
|
+
}), (0, rxjs_1.share)());
|
|
17
16
|
};
|
|
18
17
|
}
|
|
19
18
|
exports.sma = sma;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sma.js","sourceRoot":"","sources":["../../src/indicator/sma.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"sma.js","sourceRoot":"","sources":["../../src/indicator/sma.ts"],"names":[],"mappings":";;;AAAA,+BAA2D;AAC3D,qCAAkC;AAElC,SAAgB,GAAG,CAAI,MAAc,EAAE,EAAqB;IAC1D,OAAO,UAAU,MAAqB;QACpC,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAA,eAAM,EAAC,MAAM,EAAE,EAAE,CAAC,EAClB,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,AAAD,EAAG,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE;YAC3B,WAAW,IAAI,KAAK,CAAC;YACrB,WAAW,IAAI,OAAO,CAAC;QACzB,CAAC,CAAC,EACF,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EACrC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACnB,MAAM,KAAK,GAAgB,CAAC,EAAE,EAAE,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAE3D,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,IAAA,YAAK,GAAE,CACR,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAnBD,kBAmBC"}
|