@backtest-kit/cli 12.5.0 → 12.6.0
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/build/index.cjs +18 -5
- package/build/index.mjs +18 -5
- package/docker/package.json +6 -6
- package/package.json +13 -13
- package/template/project/package.mustache +5 -5
package/build/index.cjs
CHANGED
|
@@ -1615,6 +1615,8 @@ const getEnv = functoolsKit.singleshot(() => {
|
|
|
1615
1615
|
};
|
|
1616
1616
|
});
|
|
1617
1617
|
|
|
1618
|
+
const READY_SUBJECT = new functoolsKit.BehaviorSubject();
|
|
1619
|
+
const MAX_WAIT_TIME = 5000;
|
|
1618
1620
|
const GET_SYMBOL_EXPORTS_FN = async (self) => {
|
|
1619
1621
|
const exports = await self.configConnectionService.loadConfig("symbol.config");
|
|
1620
1622
|
if (!exports) {
|
|
@@ -1659,6 +1661,17 @@ const MAP_SYMBOL_CONFIG_FN = (config) => {
|
|
|
1659
1661
|
symbolList.sort(({ priority: a_p, index: a_x }, { priority: b_p, index: b_x }) => b_p - a_p || a_x - b_x);
|
|
1660
1662
|
return symbolList;
|
|
1661
1663
|
};
|
|
1664
|
+
const CREATE_LISTEN_FN = (self) => async () => {
|
|
1665
|
+
const promise = READY_SUBJECT.toPromise();
|
|
1666
|
+
self.enable();
|
|
1667
|
+
if (READY_SUBJECT.data) {
|
|
1668
|
+
return;
|
|
1669
|
+
}
|
|
1670
|
+
await Promise.race([
|
|
1671
|
+
promise,
|
|
1672
|
+
functoolsKit.sleep(MAX_WAIT_TIME),
|
|
1673
|
+
]);
|
|
1674
|
+
};
|
|
1662
1675
|
class FrontendProviderService {
|
|
1663
1676
|
constructor() {
|
|
1664
1677
|
this.loggerService = inject(TYPES.loggerService);
|
|
@@ -1676,7 +1689,7 @@ class FrontendProviderService {
|
|
|
1676
1689
|
BacktestKitUi.lib.symbolConnectionService.getSymbolList.setValue(Promise.resolve(symbolList));
|
|
1677
1690
|
}
|
|
1678
1691
|
}
|
|
1679
|
-
unServer = BacktestKitUi.serve(CC_WWWROOT_HOST, CC_WWWROOT_PORT, this.resolveService.PROJECT_ROOT_DIR);
|
|
1692
|
+
unServer = BacktestKitUi.serve(CC_WWWROOT_HOST, CC_WWWROOT_PORT, this.resolveService.PROJECT_ROOT_DIR, () => READY_SUBJECT.next(true));
|
|
1680
1693
|
};
|
|
1681
1694
|
init();
|
|
1682
1695
|
return () => {
|
|
@@ -1696,7 +1709,7 @@ class FrontendProviderService {
|
|
|
1696
1709
|
if (!getArgs().values.ui) {
|
|
1697
1710
|
return;
|
|
1698
1711
|
}
|
|
1699
|
-
return getEntrySubject().subscribe(this
|
|
1712
|
+
return getEntrySubject().subscribe(CREATE_LISTEN_FN(this));
|
|
1700
1713
|
});
|
|
1701
1714
|
}
|
|
1702
1715
|
}
|
|
@@ -3377,7 +3390,7 @@ const main$h = async () => {
|
|
|
3377
3390
|
if (MODES.some((mode) => values[mode])) {
|
|
3378
3391
|
return;
|
|
3379
3392
|
}
|
|
3380
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
3393
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n`);
|
|
3381
3394
|
process.stdout.write("\n");
|
|
3382
3395
|
process.stdout.write(`Run with --help to see available commands.\n`);
|
|
3383
3396
|
process.stdout.write("\n");
|
|
@@ -4683,7 +4696,7 @@ const main$1 = async () => {
|
|
|
4683
4696
|
if (!values.help) {
|
|
4684
4697
|
return;
|
|
4685
4698
|
}
|
|
4686
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
4699
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n\n`);
|
|
4687
4700
|
process.stdout.write(HELP_TEXT);
|
|
4688
4701
|
process.exit(0);
|
|
4689
4702
|
};
|
|
@@ -4697,7 +4710,7 @@ const main = async () => {
|
|
|
4697
4710
|
if (!values.version) {
|
|
4698
4711
|
return;
|
|
4699
4712
|
}
|
|
4700
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
4713
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n`);
|
|
4701
4714
|
process.exit(0);
|
|
4702
4715
|
};
|
|
4703
4716
|
main();
|
package/build/index.mjs
CHANGED
|
@@ -1590,6 +1590,8 @@ const getEnv = singleshot(() => {
|
|
|
1590
1590
|
};
|
|
1591
1591
|
});
|
|
1592
1592
|
|
|
1593
|
+
const READY_SUBJECT = new BehaviorSubject();
|
|
1594
|
+
const MAX_WAIT_TIME = 5000;
|
|
1593
1595
|
const GET_SYMBOL_EXPORTS_FN = async (self) => {
|
|
1594
1596
|
const exports = await self.configConnectionService.loadConfig("symbol.config");
|
|
1595
1597
|
if (!exports) {
|
|
@@ -1634,6 +1636,17 @@ const MAP_SYMBOL_CONFIG_FN = (config) => {
|
|
|
1634
1636
|
symbolList.sort(({ priority: a_p, index: a_x }, { priority: b_p, index: b_x }) => b_p - a_p || a_x - b_x);
|
|
1635
1637
|
return symbolList;
|
|
1636
1638
|
};
|
|
1639
|
+
const CREATE_LISTEN_FN = (self) => async () => {
|
|
1640
|
+
const promise = READY_SUBJECT.toPromise();
|
|
1641
|
+
self.enable();
|
|
1642
|
+
if (READY_SUBJECT.data) {
|
|
1643
|
+
return;
|
|
1644
|
+
}
|
|
1645
|
+
await Promise.race([
|
|
1646
|
+
promise,
|
|
1647
|
+
sleep(MAX_WAIT_TIME),
|
|
1648
|
+
]);
|
|
1649
|
+
};
|
|
1637
1650
|
class FrontendProviderService {
|
|
1638
1651
|
constructor() {
|
|
1639
1652
|
this.loggerService = inject(TYPES.loggerService);
|
|
@@ -1651,7 +1664,7 @@ class FrontendProviderService {
|
|
|
1651
1664
|
lib.symbolConnectionService.getSymbolList.setValue(Promise.resolve(symbolList));
|
|
1652
1665
|
}
|
|
1653
1666
|
}
|
|
1654
|
-
unServer = serve(CC_WWWROOT_HOST, CC_WWWROOT_PORT, this.resolveService.PROJECT_ROOT_DIR);
|
|
1667
|
+
unServer = serve(CC_WWWROOT_HOST, CC_WWWROOT_PORT, this.resolveService.PROJECT_ROOT_DIR, () => READY_SUBJECT.next(true));
|
|
1655
1668
|
};
|
|
1656
1669
|
init();
|
|
1657
1670
|
return () => {
|
|
@@ -1671,7 +1684,7 @@ class FrontendProviderService {
|
|
|
1671
1684
|
if (!getArgs().values.ui) {
|
|
1672
1685
|
return;
|
|
1673
1686
|
}
|
|
1674
|
-
return getEntrySubject().subscribe(this
|
|
1687
|
+
return getEntrySubject().subscribe(CREATE_LISTEN_FN(this));
|
|
1675
1688
|
});
|
|
1676
1689
|
}
|
|
1677
1690
|
}
|
|
@@ -3348,7 +3361,7 @@ const main$h = async () => {
|
|
|
3348
3361
|
if (MODES.some((mode) => values[mode])) {
|
|
3349
3362
|
return;
|
|
3350
3363
|
}
|
|
3351
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
3364
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n`);
|
|
3352
3365
|
process.stdout.write("\n");
|
|
3353
3366
|
process.stdout.write(`Run with --help to see available commands.\n`);
|
|
3354
3367
|
process.stdout.write("\n");
|
|
@@ -4654,7 +4667,7 @@ const main$1 = async () => {
|
|
|
4654
4667
|
if (!values.help) {
|
|
4655
4668
|
return;
|
|
4656
4669
|
}
|
|
4657
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
4670
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n\n`);
|
|
4658
4671
|
process.stdout.write(HELP_TEXT);
|
|
4659
4672
|
process.exit(0);
|
|
4660
4673
|
};
|
|
@@ -4668,7 +4681,7 @@ const main = async () => {
|
|
|
4668
4681
|
if (!values.version) {
|
|
4669
4682
|
return;
|
|
4670
4683
|
}
|
|
4671
|
-
process.stdout.write(`@backtest-kit/cli ${"12.
|
|
4684
|
+
process.stdout.write(`@backtest-kit/cli ${"12.6.0"}\n`);
|
|
4672
4685
|
process.exit(0);
|
|
4673
4686
|
};
|
|
4674
4687
|
main();
|
package/docker/package.json
CHANGED
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
"@types/node": "25.6.0"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@backtest-kit/cli": "12.
|
|
19
|
-
"@backtest-kit/graph": "12.
|
|
20
|
-
"@backtest-kit/pinets": "12.
|
|
21
|
-
"@backtest-kit/signals": "12.
|
|
22
|
-
"@backtest-kit/ui": "12.
|
|
18
|
+
"@backtest-kit/cli": "12.6.0",
|
|
19
|
+
"@backtest-kit/graph": "12.6.0",
|
|
20
|
+
"@backtest-kit/pinets": "12.6.0",
|
|
21
|
+
"@backtest-kit/signals": "12.6.0",
|
|
22
|
+
"@backtest-kit/ui": "12.6.0",
|
|
23
23
|
"@tavily/core": "0.7.2",
|
|
24
24
|
"@tensorflow/tfjs": "4.22.0",
|
|
25
25
|
"@tensorflow/tfjs-backend-wasm": "4.22.0",
|
|
26
26
|
"@tensorflow/tfjs-core": "4.22.0",
|
|
27
27
|
"agent-swarm-kit": "2.7.0",
|
|
28
|
-
"backtest-kit": "12.
|
|
28
|
+
"backtest-kit": "12.6.0",
|
|
29
29
|
"dayjs": "1.11.20",
|
|
30
30
|
"functools-kit": "2.3.0",
|
|
31
31
|
"garch": "1.2.3",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backtest-kit/cli",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.6.0",
|
|
4
4
|
"description": "Zero-boilerplate CLI runner for backtest-kit strategies. Run backtests, paper trading, and live bots with candle cache warming, web dashboard, and Telegram notifications — no setup code required.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Petr Tripolsky",
|
|
@@ -63,11 +63,11 @@
|
|
|
63
63
|
"devDependencies": {
|
|
64
64
|
"@babel/plugin-transform-modules-umd": "7.27.1",
|
|
65
65
|
"@babel/standalone": "7.29.1",
|
|
66
|
-
"@backtest-kit/graph": "12.
|
|
67
|
-
"@backtest-kit/ollama": "12.
|
|
68
|
-
"@backtest-kit/pinets": "12.
|
|
69
|
-
"@backtest-kit/signals": "12.
|
|
70
|
-
"@backtest-kit/ui": "12.
|
|
66
|
+
"@backtest-kit/graph": "12.6.0",
|
|
67
|
+
"@backtest-kit/ollama": "12.6.0",
|
|
68
|
+
"@backtest-kit/pinets": "12.6.0",
|
|
69
|
+
"@backtest-kit/signals": "12.6.0",
|
|
70
|
+
"@backtest-kit/ui": "12.6.0",
|
|
71
71
|
"@rollup/plugin-replace": "6.0.3",
|
|
72
72
|
"@rollup/plugin-typescript": "11.1.6",
|
|
73
73
|
"@types/image-size": "0.7.0",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"@types/mustache": "4.2.6",
|
|
76
76
|
"@types/node": "22.9.0",
|
|
77
77
|
"@types/stack-trace": "0.0.33",
|
|
78
|
-
"backtest-kit": "12.
|
|
78
|
+
"backtest-kit": "12.6.0",
|
|
79
79
|
"glob": "11.0.1",
|
|
80
80
|
"markdown-it": "14.1.1",
|
|
81
81
|
"rimraf": "6.0.1",
|
|
@@ -90,12 +90,12 @@
|
|
|
90
90
|
"peerDependencies": {
|
|
91
91
|
"@babel/plugin-transform-modules-umd": "^7.27.1",
|
|
92
92
|
"@babel/standalone": "^7.29.1",
|
|
93
|
-
"@backtest-kit/graph": "^12.
|
|
94
|
-
"@backtest-kit/ollama": "^12.
|
|
95
|
-
"@backtest-kit/pinets": "^12.
|
|
96
|
-
"@backtest-kit/signals": "^12.
|
|
97
|
-
"@backtest-kit/ui": "^12.
|
|
98
|
-
"backtest-kit": "^12.
|
|
93
|
+
"@backtest-kit/graph": "^12.6.0",
|
|
94
|
+
"@backtest-kit/ollama": "^12.6.0",
|
|
95
|
+
"@backtest-kit/pinets": "^12.6.0",
|
|
96
|
+
"@backtest-kit/signals": "^12.6.0",
|
|
97
|
+
"@backtest-kit/ui": "^12.6.0",
|
|
98
|
+
"backtest-kit": "^12.6.0",
|
|
99
99
|
"markdown-it": "^14.1.1",
|
|
100
100
|
"typescript": "^5.0.0"
|
|
101
101
|
},
|
|
@@ -13,12 +13,12 @@
|
|
|
13
13
|
"license": "ISC",
|
|
14
14
|
"type": "commonjs",
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@backtest-kit/cli": "^12.
|
|
17
|
-
"@backtest-kit/graph": "^12.
|
|
18
|
-
"@backtest-kit/pinets": "^12.
|
|
19
|
-
"@backtest-kit/ui": "^12.
|
|
16
|
+
"@backtest-kit/cli": "^12.6.0",
|
|
17
|
+
"@backtest-kit/graph": "^12.6.0",
|
|
18
|
+
"@backtest-kit/pinets": "^12.6.0",
|
|
19
|
+
"@backtest-kit/ui": "^12.6.0",
|
|
20
20
|
"agent-swarm-kit": "^2.7.0",
|
|
21
|
-
"backtest-kit": "^12.
|
|
21
|
+
"backtest-kit": "^12.6.0",
|
|
22
22
|
"functools-kit": "^2.3.0",
|
|
23
23
|
"garch": "^1.2.3",
|
|
24
24
|
"get-moment-stamp": "^2.0.0",
|