@stoqey/ib 1.3.7 → 1.3.8
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/api/api.d.ts +4 -4
- package/dist/api/api.js +6 -6
- package/dist/api/api.js.map +1 -1
- package/dist/api/market/scannerSubscription.d.ts +4 -3
- package/dist/api-next/api-next.d.ts +37 -3
- package/dist/api-next/api-next.js +120 -14
- package/dist/api-next/api-next.js.map +1 -1
- package/dist/api-next/common/item-list-update.d.ts +2 -0
- package/dist/api-next/market-scanner/market-scanner.d.ts +224 -0
- package/dist/api-next/market-scanner/market-scanner.js +218 -0
- package/dist/api-next/market-scanner/market-scanner.js.map +1 -0
- package/dist/core/api-next/auto-connection.js +1 -1
- package/dist/core/api-next/auto-connection.js.map +1 -1
- package/dist/core/api-next/item-list-update.d.ts +2 -1
- package/dist/core/api-next/item-list-update.js +2 -1
- package/dist/core/api-next/item-list-update.js.map +1 -1
- package/dist/core/api-next/subscription.d.ts +7 -3
- package/dist/core/api-next/subscription.js +17 -8
- package/dist/core/api-next/subscription.js.map +1 -1
- package/dist/core/io/decoder.js +3 -3
- package/dist/core/io/decoder.js.map +1 -1
- package/dist/core/io/encoder.d.ts +2 -2
- package/dist/core/io/encoder.js +12 -14
- package/dist/core/io/encoder.js.map +1 -1
- package/dist/tests/unit/api/order/placeOrder.test.js +50 -27
- package/dist/tests/unit/api/order/placeOrder.test.js.map +1 -1
- package/dist/tools/account-summary.js +2 -3
- package/dist/tools/account-summary.js.map +1 -1
- package/dist/tools/commission-reports.js +3 -6
- package/dist/tools/commission-reports.js.map +1 -1
- package/dist/tools/common/ib-api-next-app.d.ts +17 -2
- package/dist/tools/common/ib-api-next-app.js +62 -28
- package/dist/tools/common/ib-api-next-app.js.map +1 -1
- package/dist/tools/contract-details.js +2 -3
- package/dist/tools/contract-details.js.map +1 -1
- package/dist/tools/current-time.js +2 -3
- package/dist/tools/current-time.js.map +1 -1
- package/dist/tools/execution-details.js +3 -6
- package/dist/tools/execution-details.js.map +1 -1
- package/dist/tools/get-head-timestamp.js +10 -5
- package/dist/tools/get-head-timestamp.js.map +1 -1
- package/dist/tools/histogram-data.js +2 -3
- package/dist/tools/histogram-data.js.map +1 -1
- package/dist/tools/historical-data-updates.js +2 -3
- package/dist/tools/historical-data-updates.js.map +1 -1
- package/dist/tools/historical-data.js +2 -3
- package/dist/tools/historical-data.js.map +1 -1
- package/dist/tools/historical-ticks-bid-ask.js +2 -3
- package/dist/tools/historical-ticks-bid-ask.js.map +1 -1
- package/dist/tools/historical-ticks-last.js +2 -3
- package/dist/tools/historical-ticks-last.js.map +1 -1
- package/dist/tools/historical-ticks-mid.js +2 -3
- package/dist/tools/historical-ticks-mid.js.map +1 -1
- package/dist/tools/managed-accts.js +2 -3
- package/dist/tools/managed-accts.js.map +1 -1
- package/dist/tools/market-data-snapshot.js +5 -5
- package/dist/tools/market-data-snapshot.js.map +1 -1
- package/dist/tools/market-data.js +3 -4
- package/dist/tools/market-data.js.map +1 -1
- package/dist/tools/market-depth-exchanges.js +2 -3
- package/dist/tools/market-depth-exchanges.js.map +1 -1
- package/dist/tools/market-depth.js +2 -3
- package/dist/tools/market-depth.js.map +1 -1
- package/dist/tools/market-scanner.d.ts +1 -0
- package/dist/tools/market-scanner.js +64 -0
- package/dist/tools/market-scanner.js.map +1 -0
- package/dist/tools/modify-order.js +2 -4
- package/dist/tools/modify-order.js.map +1 -1
- package/dist/tools/next-valid-order-id.js +2 -3
- package/dist/tools/next-valid-order-id.js.map +1 -1
- package/dist/tools/open-orders-auto.js +4 -8
- package/dist/tools/open-orders-auto.js.map +1 -1
- package/dist/tools/open-orders.js +3 -6
- package/dist/tools/open-orders.js.map +1 -1
- package/dist/tools/place-new-order.js +2 -4
- package/dist/tools/place-new-order.js.map +1 -1
- package/dist/tools/place-order.js +2 -2
- package/dist/tools/place-order.js.map +1 -1
- package/dist/tools/pnl-single.js +2 -8
- package/dist/tools/pnl-single.js.map +1 -1
- package/dist/tools/pnl.js +2 -8
- package/dist/tools/pnl.js.map +1 -1
- package/dist/tools/positions.js +3 -10
- package/dist/tools/positions.js.map +1 -1
- package/dist/tools/search-contracts.js +2 -3
- package/dist/tools/search-contracts.js.map +1 -1
- package/dist/tools/sec-def-opt-params.js +6 -4
- package/dist/tools/sec-def-opt-params.js.map +1 -1
- package/dist/tools/user-info.js +2 -3
- package/dist/tools/user-info.js.map +1 -1
- package/package.json +6 -6
|
@@ -8,7 +8,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const api_next_1 = require("../api-next");
|
|
11
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
12
11
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
13
12
|
/////////////////////////////////////////////////////////////////////////////////
|
|
14
13
|
// The help text //
|
|
@@ -32,11 +31,11 @@ class PrintMarketDataSingleApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
32
31
|
*/
|
|
33
32
|
start() {
|
|
34
33
|
const scriptName = path_1.default.basename(__filename);
|
|
35
|
-
|
|
36
|
-
this.connect(
|
|
34
|
+
this.info(`Starting ${scriptName} script`);
|
|
35
|
+
this.connect();
|
|
37
36
|
this.api.setMarketDataType(api_next_1.MarketDataType.DELAYED_FROZEN);
|
|
38
37
|
this.api
|
|
39
|
-
.getMarketDataSnapshot(this.
|
|
38
|
+
.getMarketDataSnapshot(this.getContractArg(), this.cmdLineArgs.ticks, false)
|
|
40
39
|
.then((marketData) => {
|
|
41
40
|
// this.printObject(marketData);
|
|
42
41
|
const dataWithTickNames = new Map();
|
|
@@ -49,7 +48,8 @@ class PrintMarketDataSingleApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
49
48
|
}
|
|
50
49
|
});
|
|
51
50
|
this.printObject(dataWithTickNames);
|
|
52
|
-
this.
|
|
51
|
+
if (!this.cmdLineArgs.watch)
|
|
52
|
+
this.stop();
|
|
53
53
|
})
|
|
54
54
|
.catch((err) => {
|
|
55
55
|
this.error(`getMarketDataSingle failed with '${err.error.message}'`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-data-snapshot.js","sourceRoot":"","sources":["../../src/tools/market-data-snapshot.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,0CAKqB;AACrB,
|
|
1
|
+
{"version":3,"file":"market-data-snapshot.js","sourceRoot":"","sources":["../../src/tools/market-data-snapshot.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,0CAKqB;AACrB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GACpB,iEAAiE,CAAC;AACpE,MAAM,UAAU,GAAG,0CAA0C,CAAC;AAC9D,MAAM,gBAAgB,GAAuB;IAC3C,GAAG,8BAAY,CAAC,wBAAwB;IACxC,CAAC,eAAe,EAAE,iDAAiD,CAAC;CACrE,CAAC;AACF,MAAM,YAAY,GAChB,iFAAiF,CAAC;AAEpF,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,wBAAyB,SAAQ,8BAAY;IACjD;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,yBAAc,CAAC,cAAc,CAAC,CAAC;QAE1D,IAAI,CAAC,GAAG;aACL,qBAAqB,CACpB,IAAI,CAAC,cAAc,EAAE,EACrB,IAAI,CAAC,WAAW,CAAC,KAAe,EAChC,KAAK,CACN;aACA,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;YACnB,gCAAgC;YAChC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;YACpD,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBAChC,IAAI,IAAI,GAAG,4BAAiB,CAAC,sBAAsB,EAAE;oBACnD,iBAAiB,CAAC,GAAG,CAAC,4BAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC5D;qBAAM;oBACL,iBAAiB,CAAC,GAAG,CAAC,wBAAa,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBACxD;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;gBAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAmB,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,wBAAwB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -8,7 +8,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const api_next_1 = require("../api-next");
|
|
11
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
12
11
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
13
12
|
/////////////////////////////////////////////////////////////////////////////////
|
|
14
13
|
// The help text //
|
|
@@ -32,11 +31,11 @@ class PrintMarketDataApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
32
31
|
*/
|
|
33
32
|
start() {
|
|
34
33
|
const scriptName = path_1.default.basename(__filename);
|
|
35
|
-
|
|
36
|
-
this.connect(
|
|
34
|
+
this.info(`Starting ${scriptName} script`);
|
|
35
|
+
this.connect();
|
|
37
36
|
this.api.setMarketDataType(api_next_1.MarketDataType.DELAYED_FROZEN);
|
|
38
37
|
this.subscription$ = this.api
|
|
39
|
-
.getMarketData(this.
|
|
38
|
+
.getMarketData(this.getContractArg(), this.cmdLineArgs.ticks, false, false)
|
|
40
39
|
.subscribe({
|
|
41
40
|
next: (marketData) => {
|
|
42
41
|
const changedOrAddedDataWithTickNames = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-data.js","sourceRoot":"","sources":["../../src/tools/market-data.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,0CAKqB;AACrB,
|
|
1
|
+
{"version":3,"file":"market-data.js","sourceRoot":"","sources":["../../src/tools/market-data.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,0CAKqB;AACrB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,qDAAqD,CAAC;AAC/E,MAAM,UAAU,GAAG,iCAAiC,CAAC;AACrD,MAAM,gBAAgB,GAAuB;IAC3C,GAAG,8BAAY,CAAC,wBAAwB;IACxC,CAAC,eAAe,EAAE,iDAAiD,CAAC;CACrE,CAAC;AACF,MAAM,YAAY,GAChB,yEAAyE,CAAC;AAE5E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,kBAAmB,SAAQ,8BAAY;IAC3C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,yBAAc,CAAC,cAAc,CAAC,CAAC;QAE1D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,aAAa,CACZ,IAAI,CAAC,cAAc,EAAE,EACrB,IAAI,CAAC,WAAW,CAAC,KAAe,EAChC,KAAK,EACL,KAAK,CACN;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,UAAU,EAAE,EAAE;gBACnB,MAAM,+BAA+B,GAAG,IAAI,GAAG,EAAkB,CAAC;gBAClE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;oBACvC,IAAI,IAAI,GAAG,4BAAiB,CAAC,sBAAsB,EAAE;wBACnD,+BAA+B,CAAC,GAAG,CACjC,4BAAiB,CAAC,IAAI,CAAC,EACvB,IAAI,CAAC,KAAK,CACX,CAAC;qBACH;yBAAM;wBACL,+BAA+B,CAAC,GAAG,CACjC,wBAAa,CAAC,IAAI,CAAC,EACnB,IAAI,CAAC,KAAK,CACX,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;gBACH,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;oBACzC,IAAI,IAAI,GAAG,4BAAiB,CAAC,sBAAsB,EAAE;wBACnD,+BAA+B,CAAC,GAAG,CACjC,4BAAiB,CAAC,IAAI,CAAC,EACvB,IAAI,CAAC,KAAK,CACX,CAAC;qBACH;yBAAM;wBACL,+BAA+B,CAAC,GAAG,CACjC,wBAAa,CAAC,IAAI,CAAC,EACnB,IAAI,CAAC,KAAK,CACX,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;YACpD,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,CACR,8BAA8B,GAAG,CAAC,KAAK,CAAC,OAAO,MAAM,GAAG,CAAC,IAAI,GAAG,CACjE,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -7,7 +7,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// Help text and command line parsing //
|
|
@@ -28,8 +27,8 @@ class PrintMarketDepthExchangesApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
28
27
|
*/
|
|
29
28
|
start() {
|
|
30
29
|
const scriptName = path_1.default.basename(__filename);
|
|
31
|
-
|
|
32
|
-
this.connect(
|
|
30
|
+
this.info(`Starting ${scriptName} script`);
|
|
31
|
+
this.connect();
|
|
33
32
|
// print current time
|
|
34
33
|
this.api
|
|
35
34
|
.getMarketDepthExchanges()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-depth-exchanges.js","sourceRoot":"","sources":["../../src/tools/market-depth-exchanges.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,
|
|
1
|
+
{"version":3,"file":"market-depth-exchanges.js","sourceRoot":"","sources":["../../src/tools/market-depth-exchanges.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GACpB,qGAAqG,CAAC;AACxG,MAAM,UAAU,GAAG,4CAA4C,CAAC;AAChE,MAAM,gBAAgB,GAAuB,EAAE,CAAC;AAChD,MAAM,YAAY,GAAG,sDAAsD,CAAC;AAE5E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,4BAA6B,SAAQ,8BAAY;IACrD;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,qBAAqB;QAErB,IAAI,CAAC,GAAG;aACL,uBAAuB,EAAE;aACzB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAmB,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CACR,wCAAwC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAC7D,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;CACF;AAED,cAAc;AAEd,IAAI,4BAA4B,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -7,7 +7,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// Help text and command line parsing //
|
|
@@ -36,8 +35,8 @@ class PrintMarketDepthExchangesApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
36
35
|
*/
|
|
37
36
|
start() {
|
|
38
37
|
const scriptName = path_1.default.basename(__filename);
|
|
39
|
-
|
|
40
|
-
this.connect(
|
|
38
|
+
this.info(`Starting ${scriptName} script`);
|
|
39
|
+
this.connect();
|
|
41
40
|
if (!this.cmdLineArgs.conid) {
|
|
42
41
|
this.error("-conid argument missing.");
|
|
43
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-depth.js","sourceRoot":"","sources":["../../src/tools/market-depth.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,
|
|
1
|
+
{"version":3,"file":"market-depth.js","sourceRoot":"","sources":["../../src/tools/market-depth.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,gDAAgD,CAAC;AAC1E,MAAM,UAAU,GAAG,kCAAkC,CAAC;AACtD,MAAM,gBAAgB,GAAuB;IAC3C,CAAC,gBAAgB,EAAE,sCAAsC,CAAC;IAC1D,CAAC,iBAAiB,EAAE,gCAAgC,CAAC;IACrD,CAAC,eAAe,EAAE,oDAAoD,CAAC;IACvE;QACE,aAAa;QACb,8FAA8F;KAC/F;CACF,CAAC;AACF,MAAM,YAAY,GAChB,oFAAoF,CAAC;AAEvF,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,4BAA6B,SAAQ,8BAAY;IACrD;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YAC3B,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;SACxC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAC3C;QAED,2BAA2B;QAE3B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,cAAc,CACb;YACE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,KAAe;YACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAkB;SAC9C,EACD,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;YACjC,CAAC,CAAE,IAAI,CAAC,WAAW,CAAC,IAAe;YACnC,CAAC,CAAC,GAAG,EACP,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,SAAS;YAClC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,GAAG;YAChC,CAAC,CAAC,IAAI,CACT;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,eAAe,EAAE,EAAE;gBACxB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YACpC,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YACjE,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,4BAA4B,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/**
|
|
7
|
+
* This App will print Most active stocks.
|
|
8
|
+
*/
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const market_scanner_1 = require("../api-next/market-scanner/market-scanner");
|
|
11
|
+
const logger_1 = __importDefault(require("../common/logger"));
|
|
12
|
+
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
13
|
+
/////////////////////////////////////////////////////////////////////////////////
|
|
14
|
+
// The help text //
|
|
15
|
+
/////////////////////////////////////////////////////////////////////////////////
|
|
16
|
+
const DESCRIPTION_TEXT = "Print most active stocks scan.";
|
|
17
|
+
const USAGE_TEXT = "Usage: market-scanner.js <options>";
|
|
18
|
+
const OPTION_ARGUMENTS = [];
|
|
19
|
+
const EXAMPLE_TEXT = "market-scanner.js -conid=3691937 -exchange=SMART -period=3 -periodUnit=DAY";
|
|
20
|
+
//////////////////////////////////////////////////////////////////////////////
|
|
21
|
+
// The App code //
|
|
22
|
+
//////////////////////////////////////////////////////////////////////////////
|
|
23
|
+
class PrintMarketScreenerApp extends ib_api_next_app_1.IBApiNextApp {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(DESCRIPTION_TEXT, USAGE_TEXT, OPTION_ARGUMENTS, EXAMPLE_TEXT);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Start the app.
|
|
29
|
+
*/
|
|
30
|
+
start() {
|
|
31
|
+
const scriptName = path_1.default.basename(__filename);
|
|
32
|
+
this.info(`Starting ${scriptName} script`);
|
|
33
|
+
this.connect();
|
|
34
|
+
this.subscription$ = this.api
|
|
35
|
+
.getMarketScanner({
|
|
36
|
+
abovePrice: 1,
|
|
37
|
+
scanCode: market_scanner_1.ScanCode.MOST_ACTIVE,
|
|
38
|
+
locationCode: market_scanner_1.LocationCode.STK_US,
|
|
39
|
+
instrument: market_scanner_1.Instrument.STK,
|
|
40
|
+
numberOfRows: 20,
|
|
41
|
+
})
|
|
42
|
+
.subscribe({
|
|
43
|
+
next: (data) => {
|
|
44
|
+
this.printObject(data.all);
|
|
45
|
+
if (!this.cmdLineArgs.watch)
|
|
46
|
+
this.stop();
|
|
47
|
+
},
|
|
48
|
+
error: (error) => {
|
|
49
|
+
logger_1.default.error("Error from the subscriber", error);
|
|
50
|
+
this.stop();
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Stop the app with success code.
|
|
56
|
+
*/
|
|
57
|
+
stop() {
|
|
58
|
+
this.subscription$?.unsubscribe();
|
|
59
|
+
this.exit();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// run the app
|
|
63
|
+
new PrintMarketScreenerApp().start();
|
|
64
|
+
//# sourceMappingURL=market-scanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"market-scanner.js","sourceRoot":"","sources":["../../src/tools/market-scanner.ts"],"names":[],"mappings":";;;;;AAAA;;GAEG;AACH,gDAAwB;AAIxB,8EAImD;AACnD,8DAAsC;AACtC,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,gCAAgC,CAAC;AAC1D,MAAM,UAAU,GAAG,oCAAoC,CAAC;AACxD,MAAM,gBAAgB,GAAuB,EAAE,CAAC;AAChD,MAAM,YAAY,GAChB,4EAA4E,CAAC;AAE/E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,sBAAuB,SAAQ,8BAAY;IAC/C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAID;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,gBAAgB,CAAC;YAChB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,yBAAQ,CAAC,WAAW;YAC9B,YAAY,EAAE,6BAAY,CAAC,MAAM;YACjC,UAAU,EAAE,2BAAU,CAAC,GAAG;YAC1B,YAAY,EAAE,EAAE;SACjB,CAAC;aACD,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;oBAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YAC3C,CAAC;YACD,KAAK,EAAE,CAAC,KAAqB,EAAE,EAAE;gBAC/B,gBAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;gBACjD,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IACD;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,sBAAsB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const __1 = require("../");
|
|
11
11
|
const configuration_1 = __importDefault(require("../common/configuration"));
|
|
12
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
13
12
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
14
13
|
/////////////////////////////////////////////////////////////////////////////////
|
|
15
14
|
// The help text. //
|
|
@@ -19,7 +18,6 @@ const USAGE_TEXT = "Usage: modify-orders.js <options>";
|
|
|
19
18
|
const OPTION_ARGUMENTS = [
|
|
20
19
|
["price=<number>", "price of an order."],
|
|
21
20
|
["quantity=<number>", "Quantity of an order."],
|
|
22
|
-
["clientId=<number>", "Client id of current ib connection. Default is 0"],
|
|
23
21
|
];
|
|
24
22
|
const EXAMPLE_TEXT = "modify-orders.js -price=120 -quantity=10 -clientId=0 -orderId=2";
|
|
25
23
|
//////////////////////////////////////////////////////////////////////////////
|
|
@@ -34,8 +32,8 @@ class ModifyOrdersApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
34
32
|
*/
|
|
35
33
|
start() {
|
|
36
34
|
const scriptName = path_1.default.basename(__filename);
|
|
37
|
-
|
|
38
|
-
this.connect(
|
|
35
|
+
this.info(`Starting ${scriptName} script`);
|
|
36
|
+
this.connect();
|
|
39
37
|
const id = +this.cmdLineArgs.orderId;
|
|
40
38
|
const contract = {
|
|
41
39
|
symbol: "AAPL",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modify-order.js","sourceRoot":"","sources":["../../src/tools/modify-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAAuE;AACvE,4EAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"modify-order.js","sourceRoot":"","sources":["../../src/tools/modify-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAAuE;AACvE,4EAAoD;AACpD,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,eAAe,CAAC;AACzC,MAAM,UAAU,GAAG,mCAAmC,CAAC;AACvD,MAAM,gBAAgB,GAAuB;IAC3C,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IACxC,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;CAC/C,CAAC;AACF,MAAM,YAAY,GAChB,iEAAiE,CAAC;AAEpE,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,eAAgB,SAAQ,8BAAY;IACxC;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IACD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,MAAM,EAAE,GAAW,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAE7C,MAAM,QAAQ,GAAa;YACzB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,WAAO,CAAC,GAAG;SACrB,CAAC;QAEF,MAAM,KAAK,GAAU;YACnB,SAAS,EAAE,aAAS,CAAC,GAAG;YACxB,MAAM,EAAE,eAAW,CAAC,GAAG;YACvB,QAAQ,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;YACjC,OAAO,EAAE,EAAE;YACX,aAAa,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ;YACzC,OAAO,EAAE,uBAAa,CAAC,eAAe;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,eAAe,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -7,7 +7,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// Help text and command line parsing //
|
|
@@ -28,8 +27,8 @@ class PrintNextUnusedOrderIdApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
28
27
|
*/
|
|
29
28
|
start() {
|
|
30
29
|
const scriptName = path_1.default.basename(__filename);
|
|
31
|
-
|
|
32
|
-
this.connect(
|
|
30
|
+
this.info(`Starting ${scriptName} script`);
|
|
31
|
+
this.connect();
|
|
33
32
|
// print next unused order id
|
|
34
33
|
this.api
|
|
35
34
|
.getNextValidOrderId()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-valid-order-id.js","sourceRoot":"","sources":["../../src/tools/next-valid-order-id.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,
|
|
1
|
+
{"version":3,"file":"next-valid-order-id.js","sourceRoot":"","sources":["../../src/tools/next-valid-order-id.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,wCAAwC,CAAC;AAClE,MAAM,UAAU,GAAG,yCAAyC,CAAC;AAC7D,MAAM,gBAAgB,GAAuB,EAAE,CAAC;AAChD,MAAM,YAAY,GAAG,mDAAmD,CAAC;AAEzE,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,yBAA0B,SAAQ,8BAAY;IAClD;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,6BAA6B;QAE7B,IAAI,CAAC,GAAG;aACL,mBAAmB,EAAE;aACrB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAmB,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;CACF;AAED,cAAc;AAEd,IAAI,yBAAyB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -7,17 +7,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// The help text. //
|
|
14
13
|
/////////////////////////////////////////////////////////////////////////////////
|
|
15
14
|
const DESCRIPTION_TEXT = "Prints the account open orders.";
|
|
16
15
|
const USAGE_TEXT = "Usage: open-orders-updates.js <options>";
|
|
17
|
-
const OPTION_ARGUMENTS = [
|
|
18
|
-
["clientId=<number>", "Client id of current ib connection. Can only be used with client ID 0 (default)."],
|
|
19
|
-
["bind", "auto bind orders"],
|
|
20
|
-
];
|
|
16
|
+
const OPTION_ARGUMENTS = [["bind", "auto bind orders"]];
|
|
21
17
|
const EXAMPLE_TEXT = "open-orders-updates.js";
|
|
22
18
|
//////////////////////////////////////////////////////////////////////////////
|
|
23
19
|
// The App code //
|
|
@@ -31,8 +27,8 @@ class OpenOrdersApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
31
27
|
*/
|
|
32
28
|
start() {
|
|
33
29
|
const scriptName = path_1.default.basename(__filename);
|
|
34
|
-
|
|
35
|
-
this.connect(
|
|
30
|
+
this.info(`Starting ${scriptName} script`);
|
|
31
|
+
this.connect();
|
|
36
32
|
this.subscription$ = this.api
|
|
37
33
|
.getAutoOpenOrders(this.cmdLineArgs.bind ? true : false)
|
|
38
34
|
.subscribe({
|
|
@@ -44,7 +40,7 @@ class OpenOrdersApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
44
40
|
},
|
|
45
41
|
complete: () => {
|
|
46
42
|
console.log("getOpenOrders completed.");
|
|
47
|
-
}
|
|
43
|
+
},
|
|
48
44
|
});
|
|
49
45
|
}
|
|
50
46
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-orders-auto.js","sourceRoot":"","sources":["../../src/tools/open-orders-auto.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,
|
|
1
|
+
{"version":3,"file":"open-orders-auto.js","sourceRoot":"","sources":["../../src/tools/open-orders-auto.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,iCAAiC,CAAC;AAC3D,MAAM,UAAU,GAAG,yCAAyC,CAAC;AAC7D,MAAM,gBAAgB,GAAuB,CAAC,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAC5E,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAE9C,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,aAAc,SAAQ,8BAAY;IACtC;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;aACvD,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YACjE,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -7,16 +7,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// The help text. //
|
|
14
13
|
/////////////////////////////////////////////////////////////////////////////////
|
|
15
14
|
const DESCRIPTION_TEXT = "Prints the account open orders.";
|
|
16
15
|
const USAGE_TEXT = "Usage: open-orders.js <options>";
|
|
17
|
-
const OPTION_ARGUMENTS = [
|
|
18
|
-
["clientId=<number>", "Client id of current ib connection. Default is 0"],
|
|
19
|
-
];
|
|
16
|
+
const OPTION_ARGUMENTS = [];
|
|
20
17
|
const EXAMPLE_TEXT = "open-orders.js";
|
|
21
18
|
//////////////////////////////////////////////////////////////////////////////
|
|
22
19
|
// The App code //
|
|
@@ -30,8 +27,8 @@ class OpenOrdersApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
30
27
|
*/
|
|
31
28
|
start() {
|
|
32
29
|
const scriptName = path_1.default.basename(__filename);
|
|
33
|
-
|
|
34
|
-
this.connect(
|
|
30
|
+
this.info(`Starting ${scriptName} script`);
|
|
31
|
+
this.connect();
|
|
35
32
|
this.api
|
|
36
33
|
.getAllOpenOrders()
|
|
37
34
|
.then((orders) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-orders.js","sourceRoot":"","sources":["../../src/tools/open-orders.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,
|
|
1
|
+
{"version":3,"file":"open-orders.js","sourceRoot":"","sources":["../../src/tools/open-orders.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAGxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,iCAAiC,CAAC;AAC3D,MAAM,UAAU,GAAG,iCAAiC,CAAC;AACrD,MAAM,gBAAgB,GAAuB,EAAE,CAAC;AAChD,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAEtC,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,aAAc,SAAQ,8BAAY;IACtC;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,GAAG;aACL,gBAAgB,EAAE;aAClB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAmB,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,iCAAiC,GAAG,GAAG,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const __1 = require("../");
|
|
11
11
|
const configuration_1 = __importDefault(require("../common/configuration"));
|
|
12
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
13
12
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
14
13
|
/////////////////////////////////////////////////////////////////////////////////
|
|
15
14
|
// The help text. //
|
|
@@ -20,7 +19,6 @@ const OPTION_ARGUMENTS = [
|
|
|
20
19
|
["price=<number>", "price of an order."],
|
|
21
20
|
["symbol=<name>", "The symbol name."],
|
|
22
21
|
["quantity=<number>", "Quantity of an order."],
|
|
23
|
-
["clientId=<number>", "Client id of current ib connection. Default is 0"],
|
|
24
22
|
];
|
|
25
23
|
const EXAMPLE_TEXT = "place-new-orders.js -price=120 -symbol=AMZN -quantity=10 -clientId=0";
|
|
26
24
|
//////////////////////////////////////////////////////////////////////////////
|
|
@@ -35,8 +33,8 @@ class PlaceNewOrdersApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
35
33
|
*/
|
|
36
34
|
start() {
|
|
37
35
|
const scriptName = path_1.default.basename(__filename);
|
|
38
|
-
|
|
39
|
-
this.connect(
|
|
36
|
+
this.info(`Starting ${scriptName} script`);
|
|
37
|
+
this.connect();
|
|
40
38
|
const contract = {
|
|
41
39
|
symbol: this.cmdLineArgs.symbol,
|
|
42
40
|
exchange: "SMART",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"place-new-order.js","sourceRoot":"","sources":["../../src/tools/place-new-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAAuE;AACvE,4EAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"place-new-order.js","sourceRoot":"","sources":["../../src/tools/place-new-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAAuE;AACvE,4EAAoD;AACpD,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAC5C,MAAM,UAAU,GAAG,sCAAsC,CAAC;AAC1D,MAAM,gBAAgB,GAAuB;IAC3C,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IACxC,CAAC,eAAe,EAAE,kBAAkB,CAAC;IACrC,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;CAC/C,CAAC;AACF,MAAM,YAAY,GAChB,sEAAsE,CAAC;AAEzE,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,iBAAkB,SAAQ,8BAAY;IAC1C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IACD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,MAAM,QAAQ,GAAa;YACzB,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,MAAgB;YACzC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,WAAO,CAAC,GAAG;SACrB,CAAC;QAEF,MAAM,KAAK,GAAU;YACnB,SAAS,EAAE,aAAS,CAAC,GAAG;YACxB,MAAM,EAAE,eAAW,CAAC,GAAG;YACvB,QAAQ,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;YACjC,aAAa,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ;YACzC,OAAO,EAAE,uBAAa,CAAC,eAAe;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,OAAe,EAAE,EAAE;YAC/D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;QACH,oCAAoC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,iBAAiB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -33,8 +33,8 @@ class App extends ib_api_next_app_1.IBApiNextApp {
|
|
|
33
33
|
* Start the app.
|
|
34
34
|
*/
|
|
35
35
|
start() {
|
|
36
|
-
|
|
37
|
-
this.connect(
|
|
36
|
+
this.info(`Starting ${scriptName} script`);
|
|
37
|
+
this.connect();
|
|
38
38
|
this.api
|
|
39
39
|
.getNextValidOrderId()
|
|
40
40
|
.then((id) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"place-order.js","sourceRoot":"","sources":["../../src/tools/place-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAOa;AACb,4EAAoD;AACpD,8DAAsC;AACtC,8DAAwD;AAExD,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE7C,iBAAiB;AACjB,MAAM,gBAAgB,GAAG,cAAc,CAAC;AACxC,MAAM,UAAU,GAAG,UAAU,UAAU,YAAY,CAAC;AACpD,MAAM,gBAAgB,GAAuB;IAC3C,GAAG,8BAAY,CAAC,wBAAwB;IACxC,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IACxC,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;CAC/C,CAAC;AACF,MAAM,YAAY,GAAG,GAAG,UAAU,uCAAuC,CAAC;AAE1E,MAAM,YAAY,GAAG,CAAC,KAAa,EAAoB,EAAE,CACvD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAkB,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;AAE9E,MAAM,GAAI,SAAQ,8BAAY;IAC5B;;OAEG;IACH;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,
|
|
1
|
+
{"version":3,"file":"place-order.js","sourceRoot":"","sources":["../../src/tools/place-order.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAExB,2BAOa;AACb,4EAAoD;AACpD,8DAAsC;AACtC,8DAAwD;AAExD,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE7C,iBAAiB;AACjB,MAAM,gBAAgB,GAAG,cAAc,CAAC;AACxC,MAAM,UAAU,GAAG,UAAU,UAAU,YAAY,CAAC;AACpD,MAAM,gBAAgB,GAAuB;IAC3C,GAAG,8BAAY,CAAC,wBAAwB;IACxC,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IACxC,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;CAC/C,CAAC;AACF,MAAM,YAAY,GAAG,GAAG,UAAU,uCAAuC,CAAC;AAE1E,MAAM,YAAY,GAAG,CAAC,KAAa,EAAoB,EAAE,CACvD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAkB,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;AAE9E,MAAM,GAAI,SAAQ,8BAAY;IAC5B;;OAEG;IACH;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,GAAG;aACL,mBAAmB,EAAE;aACrB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,MAAM,QAAQ,GAAa;gBACzB,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,MAAgB;gBACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAkB;gBAC7C,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAkB;gBAC7C,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,OAAkB;aAC7C,CAAC;YACF,8BAA8B;YAE9B,MAAM,KAAK,GAAU;gBACnB,SAAS,EAAE,aAAS,CAAC,GAAG;gBACxB,MAAM,EAAE,eAAW,CAAC,GAAG;gBACvB,QAAQ,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK;gBACjC,OAAO,EAAE,EAAE;gBACX,aAAa,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ;gBACzC,OAAO,EAAE,uBAAa,CAAC,eAAe;gBACtC,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAmB,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,iEAAiE;QACjE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACxB,gBAAM,CAAC,IAAI,CAAC,GAAG,UAAU,eAAe,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,cAAc;AACd,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
package/dist/tools/pnl-single.js
CHANGED
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
* This App will print real time updates for daily PnL of individual positions.
|
|
8
8
|
*/
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// The help text //
|
|
@@ -21,11 +20,6 @@ const OPTION_ARGUMENTS = [
|
|
|
21
20
|
"(required) Contract ID (conId) of contract to receive daily PnL updates for.",
|
|
22
21
|
],
|
|
23
22
|
["model=<code>", "Model in which position exists."],
|
|
24
|
-
[
|
|
25
|
-
"watch",
|
|
26
|
-
"Watch for changes. If specified, the app will keep running and print PnL updates to console as received from TWS. " +
|
|
27
|
-
"If not specified, the app will print a one-time snapshot and than exit.",
|
|
28
|
-
],
|
|
29
23
|
];
|
|
30
24
|
const EXAMPLE_TEXT = "pnl-single.js -account=DU1234567 -conid=1234567 -watch";
|
|
31
25
|
//////////////////////////////////////////////////////////////////////////////
|
|
@@ -40,14 +34,14 @@ class PrintPositionsApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
40
34
|
*/
|
|
41
35
|
start() {
|
|
42
36
|
const scriptName = path_1.default.basename(__filename);
|
|
43
|
-
|
|
37
|
+
this.info(`Starting ${scriptName} script`);
|
|
38
|
+
this.connect();
|
|
44
39
|
if (!this.cmdLineArgs.account) {
|
|
45
40
|
this.error("-account argument missing.");
|
|
46
41
|
}
|
|
47
42
|
if (!this.cmdLineArgs.conid) {
|
|
48
43
|
this.error("-conid argument missing.");
|
|
49
44
|
}
|
|
50
|
-
this.connect(this.cmdLineArgs.watch ? 10000 : 0);
|
|
51
45
|
this.subscription$ = this.api
|
|
52
46
|
.getPnLSingle(this.cmdLineArgs.account, this.cmdLineArgs.model, this.cmdLineArgs.conid)
|
|
53
47
|
.subscribe({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pnl-single.js","sourceRoot":"","sources":["../../src/tools/pnl-single.ts"],"names":[],"mappings":";;;;;AAAA;;GAEG;AACH,gDAAwB;AAIxB,
|
|
1
|
+
{"version":3,"file":"pnl-single.js","sourceRoot":"","sources":["../../src/tools/pnl-single.ts"],"names":[],"mappings":";;;;;AAAA;;GAEG;AACH,gDAAwB;AAIxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GACpB,iEAAiE,CAAC;AACpE,MAAM,UAAU,GAAG,gCAAgC,CAAC;AACpD,MAAM,gBAAgB,GAAuB;IAC3C,CAAC,sBAAsB,EAAE,8CAA8C,CAAC;IACxE;QACE,gBAAgB;QAChB,8EAA8E;KAC/E;IACD,CAAC,cAAc,EAAE,iCAAiC,CAAC;CACpD,CAAC;AACF,MAAM,YAAY,GAAG,wDAAwD,CAAC;AAE9E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,iBAAkB,SAAQ,8BAAY;IAC1C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC1C;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YAC3B,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,YAAY,CACX,IAAI,CAAC,WAAW,CAAC,OAAiB,EAClC,IAAI,CAAC,WAAW,CAAC,KAAe,EAChC,IAAI,CAAC,WAAW,CAAC,KAAe,CACjC;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,SAAS,EAAE,EAAE;gBAClB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;oBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;iBACb;YACH,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAChE,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,iBAAiB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
package/dist/tools/pnl.js
CHANGED
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
* This App will print daily PnL and unrealized PnL for a given account id.
|
|
8
8
|
*/
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// The help text //
|
|
@@ -16,11 +15,6 @@ const DESCRIPTION_TEXT = "Print daily PnL and unrealized PnL for a given account
|
|
|
16
15
|
const USAGE_TEXT = "Usage: pnl.js <options>";
|
|
17
16
|
const OPTION_ARGUMENTS = [
|
|
18
17
|
["account", "(required) The IBKR account id."],
|
|
19
|
-
[
|
|
20
|
-
"watch",
|
|
21
|
-
"Watch for changes. If specified, the app will keep running and print PnL updates to console as received from TWS. " +
|
|
22
|
-
"If not specified, the app will print a one-time snapshot and than exit.",
|
|
23
|
-
],
|
|
24
18
|
];
|
|
25
19
|
const EXAMPLE_TEXT = "pnl.js -account=DU1234567 -watch";
|
|
26
20
|
//////////////////////////////////////////////////////////////////////////////
|
|
@@ -35,11 +29,11 @@ class PrintPositionsApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
35
29
|
*/
|
|
36
30
|
start() {
|
|
37
31
|
const scriptName = path_1.default.basename(__filename);
|
|
38
|
-
|
|
32
|
+
this.info(`Starting ${scriptName} script`);
|
|
33
|
+
this.connect();
|
|
39
34
|
if (!this.cmdLineArgs.account) {
|
|
40
35
|
this.error("-account argument missing.");
|
|
41
36
|
}
|
|
42
|
-
this.connect(this.cmdLineArgs.watch ? 10000 : 0);
|
|
43
37
|
this.subscription$ = this.api
|
|
44
38
|
.getPnL(this.cmdLineArgs.account, this.cmdLineArgs.model)
|
|
45
39
|
.subscribe({
|
package/dist/tools/pnl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pnl.js","sourceRoot":"","sources":["../../src/tools/pnl.ts"],"names":[],"mappings":";;;;;AAAA;;GAEG;AACH,gDAAwB;AAIxB,
|
|
1
|
+
{"version":3,"file":"pnl.js","sourceRoot":"","sources":["../../src/tools/pnl.ts"],"names":[],"mappings":";;;;;AAAA;;GAEG;AACH,gDAAwB;AAIxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GACpB,4DAA4D,CAAC;AAC/D,MAAM,UAAU,GAAG,yBAAyB,CAAC;AAC7C,MAAM,gBAAgB,GAAuB;IAC3C,CAAC,SAAS,EAAE,iCAAiC,CAAC;CAC/C,CAAC;AACF,MAAM,YAAY,GAAG,kCAAkC,CAAC;AAExD,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,iBAAkB,SAAQ,8BAAY;IAC1C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC1C;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG;aAC1B,MAAM,CACL,IAAI,CAAC,WAAW,CAAC,OAAiB,EAClC,IAAI,CAAC,WAAW,CAAC,KAAe,CACjC;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;gBACZ,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;oBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;iBACb;YACH,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,KAAK,CAAC,uBAAuB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAC1D,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,iBAAiB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|
package/dist/tools/positions.js
CHANGED
|
@@ -7,20 +7,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = __importDefault(require("../common/logger"));
|
|
11
10
|
const ib_api_next_app_1 = require("./common/ib-api-next-app");
|
|
12
11
|
/////////////////////////////////////////////////////////////////////////////////
|
|
13
12
|
// The help text //
|
|
14
13
|
/////////////////////////////////////////////////////////////////////////////////
|
|
15
14
|
const DESCRIPTION_TEXT = "Prints all positions on your IBKR accounts to console.";
|
|
16
15
|
const USAGE_TEXT = "Usage: positions.js <options>";
|
|
17
|
-
const OPTION_ARGUMENTS = [
|
|
18
|
-
[
|
|
19
|
-
"watch",
|
|
20
|
-
"Watch for changes. If specified, the app will keep running and print positions updates to console as received from TWS. " +
|
|
21
|
-
"If not specified, the app will print a one-time snapshot and than exit.",
|
|
22
|
-
],
|
|
23
|
-
];
|
|
16
|
+
const OPTION_ARGUMENTS = [];
|
|
24
17
|
const EXAMPLE_TEXT = "positions.js -watch";
|
|
25
18
|
//////////////////////////////////////////////////////////////////////////////
|
|
26
19
|
// The App code //
|
|
@@ -34,8 +27,8 @@ class PrintPositionsApp extends ib_api_next_app_1.IBApiNextApp {
|
|
|
34
27
|
*/
|
|
35
28
|
start() {
|
|
36
29
|
const scriptName = path_1.default.basename(__filename);
|
|
37
|
-
|
|
38
|
-
this.connect(
|
|
30
|
+
this.info(`Starting ${scriptName} script`);
|
|
31
|
+
this.connect();
|
|
39
32
|
this.subscription$ = this.api.getPositions().subscribe({
|
|
40
33
|
next: (positions) => {
|
|
41
34
|
this.printObject(positions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positions.js","sourceRoot":"","sources":["../../src/tools/positions.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,
|
|
1
|
+
{"version":3,"file":"positions.js","sourceRoot":"","sources":["../../src/tools/positions.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAEH,gDAAwB;AAIxB,8DAAwD;AAExD,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,gBAAgB,GACpB,wDAAwD,CAAC;AAC3D,MAAM,UAAU,GAAG,+BAA+B,CAAC;AACnD,MAAM,gBAAgB,GAAuB,EAAE,CAAC;AAChD,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAE3C,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,MAAM,iBAAkB,SAAQ,8BAAY;IAC1C;QACE,KAAK,CAAC,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC;IAKD;;OAEG;IACH,KAAK;QACH,MAAM,UAAU,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC;YACrD,IAAI,EAAE,CAAC,SAAS,EAAE,EAAE;gBAClB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;oBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;iBACb;YACH,CAAC;YACD,KAAK,EAAE,CAAC,GAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAChE,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,cAAc;AAEd,IAAI,iBAAiB,EAAE,CAAC,KAAK,EAAE,CAAC"}
|