dukascopy-node-plus 1.1.1 → 1.1.3
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/README.md +7 -4
- package/dist/cli/index.js +32 -2
- package/dist/esm/{chunk-3Q3J6T4N.js → chunk-5PZO2PCC.js} +1 -1
- package/dist/esm/{chunk-VHUFHYTL.js → chunk-E245CVDJ.js} +21 -12
- package/dist/esm/{chunk-D3M3SVMW.js → chunk-NHIUTTTM.js} +31 -1
- package/dist/esm/{chunk-YLYLH52F.js → chunk-X3XEJCND.js} +2 -2
- package/dist/esm/cli/index.js +2 -2
- package/dist/esm/index.example.nostream.js +5 -4
- package/dist/esm/index.example.stream.js +6 -5
- package/dist/esm/index.js +4 -4
- package/dist/index.d.mts +16 -1
- package/dist/index.d.ts +16 -1
- package/dist/index.example.nostream.js +34 -3
- package/dist/index.example.stream.js +55 -15
- package/dist/index.js +52 -13
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -101,12 +101,12 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
101
101
|
* [France ETFs 🇫🇷📈 (3)](#etf_cfd_fr)
|
|
102
102
|
* [Hong Kong ETFs 🇭🇰📈 (4)](#etf_cfd_hk)
|
|
103
103
|
* [United States ETFs 🇺🇸📈 (43)](#etf_cfd_us)
|
|
104
|
-
* [Forex currencies 💱 (
|
|
104
|
+
* [Forex currencies 💱 (54)](#fx_crosses)
|
|
105
105
|
* [Forex major currencies 💶 (7)](#fx_majors)
|
|
106
106
|
* [Forex metals 🥇 (2)](#fx_metals)
|
|
107
107
|
* [America 🌎 (6)](#idx_america)
|
|
108
108
|
* [Asia 🌏 (6)](#idx_asia)
|
|
109
|
-
* [Europe 🇪🇺 (
|
|
109
|
+
* [Europe 🇪🇺 (9)](#idx_europe)
|
|
110
110
|
* [Africa 🌍 (1)](#idx_africa)
|
|
111
111
|
* [Austria 🇦🇹 (3)](#austria)
|
|
112
112
|
* [Belgium 🇧🇪 (7)](#belgium)
|
|
@@ -304,6 +304,7 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
304
304
|
|[New Zealand Dollar vs Japanese Yen](https://www.dukascopy-node.app/instrument/nzdjpy)|`nzdjpy`|Oct 1, 1998|
|
|
305
305
|
|[Singapore Dollar vs Japanese Yen](https://www.dukascopy-node.app/instrument/sgdjpy)|`sgdjpy`|May 31, 1999|
|
|
306
306
|
|[Turkish Lira vs Japanese Yen](https://www.dukascopy-node.app/instrument/tryjpy)|`tryjpy`|May 9, 2010|
|
|
307
|
+
|[US Dollar vs United Arab Emirates Dirham](https://www.dukascopy-node.app/instrument/usdaed)|`usdaed`|Mar 22, 2024|
|
|
307
308
|
|[US Dollar vs Offshore Chinese Renminbi](https://www.dukascopy-node.app/instrument/usdcnh)|`usdcnh`|Jan 2, 2012|
|
|
308
309
|
|[US Dollar vs Czech Koruna](https://www.dukascopy-node.app/instrument/usdczk)|`usdczk`|Jan 3, 2016|
|
|
309
310
|
|[US Dollar vs Danish Krone](https://www.dukascopy-node.app/instrument/usddkk)|`usddkk`|Apr 12, 1990|
|
|
@@ -314,6 +315,7 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
314
315
|
|[US Dollar vs Norwegian Krone](https://www.dukascopy-node.app/instrument/usdnok)|`usdnok`|Mar 27, 1991|
|
|
315
316
|
|[US Dollar vs Polish Zloty](https://www.dukascopy-node.app/instrument/usdpln)|`usdpln`|Mar 22, 1999|
|
|
316
317
|
|[US Dollar vs Romanian Leu](https://www.dukascopy-node.app/instrument/usdron)|`usdron`|Dec 19, 2016|
|
|
318
|
+
|[US Dollar vs Saudi Riyal](https://www.dukascopy-node.app/instrument/usdsar)|`usdsar`|Mar 25, 2024|
|
|
317
319
|
|[US Dollar vs Swedish Krona](https://www.dukascopy-node.app/instrument/usdsek)|`usdsek`|Jul 16, 1991|
|
|
318
320
|
|[US Dollar vs Singapore Dollar](https://www.dukascopy-node.app/instrument/usdsgd)|`usdsgd`|Jan 21, 1991|
|
|
319
321
|
|[US Dollar vs Thai Baht](https://www.dukascopy-node.app/instrument/usdthb)|`usdthb`|Feb 13, 2017|
|
|
@@ -367,6 +369,7 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
367
369
|
|[UK 100 Index](https://www.dukascopy-node.app/instrument/gbridxgbp)|`gbridxgbp`|Apr 5, 1988|
|
|
368
370
|
|[Spain 35 Index](https://www.dukascopy-node.app/instrument/espidxeur)|`espidxeur`|Jun 2, 2014|
|
|
369
371
|
|[Switzerland 20 Index](https://www.dukascopy-node.app/instrument/cheidxchf)|`cheidxchf`|Jan 3, 1992|
|
|
372
|
+
|[Italy 40 Index](https://www.dukascopy-node.app/instrument/itaidxeur)|`itaidxeur`|Jun 2, 2014|
|
|
370
373
|
|[Netherlands 25 Index](https://www.dukascopy-node.app/instrument/nldidxeur)|`nldidxeur`|Dec 1, 2017|
|
|
371
374
|
|[Poland 20 Index](https://www.dukascopy-node.app/instrument/plnidxpln)|`plnidxpln`|Dec 1, 2017|
|
|
372
375
|
<h3 id="idx_africa">Africa 🌍</h3>
|
|
@@ -1132,7 +1135,7 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
1132
1135
|
|[EXTRA SPACE STORAGE INC](https://www.dukascopy-node.app/instrument/exrususd)|`exrususd`|May 12, 2022|
|
|
1133
1136
|
|[FORD MOTOR CO](https://www.dukascopy-node.app/instrument/fususd)|`fususd`|Nov 2, 2017|
|
|
1134
1137
|
|[DIAMONDBACK ENERGY INC](https://www.dukascopy-node.app/instrument/fangususd)|`fangususd`|May 12, 2022|
|
|
1135
|
-
|[FACEBOOK INC-A](https://www.dukascopy-node.app/instrument/fbususd)|`fbususd`|Jan 26, 2017|
|
|
1138
|
+
|[FACEBOOK INC-A / META](https://www.dukascopy-node.app/instrument/fbususd)|`fbususd`|Jan 26, 2017|
|
|
1136
1139
|
|[FORTUNE BRANDS HOME & SECURI](https://www.dukascopy-node.app/instrument/fbhsususd)|`fbhsususd`|May 12, 2022|
|
|
1137
1140
|
|[FIRST CITIZENS BCSHS -CL A](https://www.dukascopy-node.app/instrument/fcncaususd)|`fcncaususd`|May 12, 2022|
|
|
1138
1141
|
|[FREEPORT-MCMORAN INC](https://www.dukascopy-node.app/instrument/fcxususd)|`fcxususd`|Nov 2, 2017|
|
|
@@ -1536,4 +1539,4 @@ const { getHistoricalRates } = require('dukascopy-node');
|
|
|
1536
1539
|
|
|
1537
1540
|
#### ⚖️ Legal Disclaimer
|
|
1538
1541
|
|
|
1539
|
-
`dukascopy-node` is not affiliated, endorsed, or vetted by Dukascopy Bank SA. It's an open-source tool that uses Dukascopy's publicly available APIs, and is intended for research and educational purposes.
|
|
1542
|
+
`dukascopy-node` is not affiliated, endorsed, or vetted by Dukascopy Bank SA. It's an open-source tool that uses Dukascopy's publicly available APIs, and is intended for research and educational purposes.
|
package/dist/cli/index.js
CHANGED
|
@@ -703,6 +703,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
703
703
|
Instrument2["ispiteur"] = "ispiteur";
|
|
704
704
|
Instrument2["isrgususd"] = "isrgususd";
|
|
705
705
|
Instrument2["itususd"] = "itususd";
|
|
706
|
+
Instrument2["itaidxeur"] = "itaidxeur";
|
|
706
707
|
Instrument2["itrkgbgbx"] = "itrkgbgbx";
|
|
707
708
|
Instrument2["itubususd"] = "itubususd";
|
|
708
709
|
Instrument2["itvgbgbx"] = "itvgbgbx";
|
|
@@ -1192,6 +1193,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1192
1193
|
Instrument2["uriususd"] = "uriususd";
|
|
1193
1194
|
Instrument2["usiteur"] = "usiteur";
|
|
1194
1195
|
Instrument2["usbususd"] = "usbususd";
|
|
1196
|
+
Instrument2["usdaed"] = "usdaed";
|
|
1195
1197
|
Instrument2["usdcad"] = "usdcad";
|
|
1196
1198
|
Instrument2["usdchf"] = "usdchf";
|
|
1197
1199
|
Instrument2["usdcnh"] = "usdcnh";
|
|
@@ -1205,6 +1207,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1205
1207
|
Instrument2["usdnok"] = "usdnok";
|
|
1206
1208
|
Instrument2["usdpln"] = "usdpln";
|
|
1207
1209
|
Instrument2["usdron"] = "usdron";
|
|
1210
|
+
Instrument2["usdsar"] = "usdsar";
|
|
1208
1211
|
Instrument2["usdsek"] = "usdsek";
|
|
1209
1212
|
Instrument2["usdsgd"] = "usdsgd";
|
|
1210
1213
|
Instrument2["usdthb"] = "usdthb";
|
|
@@ -6150,7 +6153,7 @@ var instrument_meta_data_default = {
|
|
|
6150
6153
|
},
|
|
6151
6154
|
fbususd: {
|
|
6152
6155
|
name: "FB.US/USD",
|
|
6153
|
-
description: "FACEBOOK INC-A",
|
|
6156
|
+
description: "FACEBOOK INC-A / META",
|
|
6154
6157
|
decimalFactor: 1e3,
|
|
6155
6158
|
startHourForTicks: "2017-01-26T14:30:01.438Z",
|
|
6156
6159
|
startDayForMinuteCandles: "2017-01-26T14:30:00.000Z",
|
|
@@ -7426,6 +7429,15 @@ var instrument_meta_data_default = {
|
|
|
7426
7429
|
startMonthForHourlyCandles: "2022-05-12T13:00:00.000Z",
|
|
7427
7430
|
startYearForDailyCandles: "2022-05-12T00:00:00.000Z"
|
|
7428
7431
|
},
|
|
7432
|
+
itaidxeur: {
|
|
7433
|
+
name: "ITA.IDX/EUR",
|
|
7434
|
+
description: "Italy 40 Index",
|
|
7435
|
+
decimalFactor: 1e3,
|
|
7436
|
+
startHourForTicks: "2014-06-02T07:00:33.102Z",
|
|
7437
|
+
startDayForMinuteCandles: "2014-06-02T07:00:00.000Z",
|
|
7438
|
+
startMonthForHourlyCandles: "2014-06-02T07:00:00.000Z",
|
|
7439
|
+
startYearForDailyCandles: "2014-06-02T00:00:00.000Z"
|
|
7440
|
+
},
|
|
7429
7441
|
itrkgbgbx: {
|
|
7430
7442
|
name: "ITRK.GB/GBX",
|
|
7431
7443
|
description: "Intertek Group PLC",
|
|
@@ -11827,6 +11839,15 @@ var instrument_meta_data_default = {
|
|
|
11827
11839
|
startMonthForHourlyCandles: "2017-11-15T15:00:00.000Z",
|
|
11828
11840
|
startYearForDailyCandles: "2017-11-15T00:00:00.000Z"
|
|
11829
11841
|
},
|
|
11842
|
+
usdaed: {
|
|
11843
|
+
name: "USD/AED",
|
|
11844
|
+
description: "US Dollar vs United Arab Emirates Dirham",
|
|
11845
|
+
decimalFactor: 100,
|
|
11846
|
+
startHourForTicks: "2024-03-22T20:55:00.062Z",
|
|
11847
|
+
startDayForMinuteCandles: "2024-03-22T20:55:00.000Z",
|
|
11848
|
+
startMonthForHourlyCandles: "2024-03-22T20:00:00.000Z",
|
|
11849
|
+
startYearForDailyCandles: "2024-03-22T00:00:00.000Z"
|
|
11850
|
+
},
|
|
11830
11851
|
usdcad: {
|
|
11831
11852
|
name: "USD/CAD",
|
|
11832
11853
|
description: "US Dollar vs Canadian Dollar",
|
|
@@ -11944,6 +11965,15 @@ var instrument_meta_data_default = {
|
|
|
11944
11965
|
startMonthForHourlyCandles: "2016-12-19T07:00:00.000Z",
|
|
11945
11966
|
startYearForDailyCandles: "2016-12-20T00:00:00.000Z"
|
|
11946
11967
|
},
|
|
11968
|
+
usdsar: {
|
|
11969
|
+
name: "USD/SAR",
|
|
11970
|
+
description: "US Dollar vs Saudi Riyal",
|
|
11971
|
+
decimalFactor: 100,
|
|
11972
|
+
startHourForTicks: "2024-03-25T10:29:41.348Z",
|
|
11973
|
+
startDayForMinuteCandles: "2024-03-25T10:29:00.000Z",
|
|
11974
|
+
startMonthForHourlyCandles: "2024-03-25T10:00:00.000Z",
|
|
11975
|
+
startYearForDailyCandles: "2024-03-25T00:00:00.000Z"
|
|
11976
|
+
},
|
|
11947
11977
|
usdsek: {
|
|
11948
11978
|
name: "USD/SEK",
|
|
11949
11979
|
description: "US Dollar vs Swedish Krona",
|
|
@@ -13883,7 +13913,7 @@ var import_utc = __toESM(require("dayjs/plugin/utc"));
|
|
|
13883
13913
|
var import_timezone = __toESM(require("dayjs/plugin/timezone"));
|
|
13884
13914
|
|
|
13885
13915
|
// package.json
|
|
13886
|
-
var version = "1.1.
|
|
13916
|
+
var version = "1.1.3";
|
|
13887
13917
|
|
|
13888
13918
|
// src/stream-writer/index.ts
|
|
13889
13919
|
var import_fs = __toESM(require("fs"));
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
normaliseDates,
|
|
11
11
|
processData,
|
|
12
12
|
validateConfigNode
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-NHIUTTTM.js";
|
|
14
14
|
|
|
15
15
|
// src/getHistoricalRatesToStream.ts
|
|
16
16
|
import debug from "debug";
|
|
@@ -87,26 +87,35 @@ function getHistoricalRatesToStream(config) {
|
|
|
87
87
|
startDate,
|
|
88
88
|
endDate
|
|
89
89
|
});
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
objectMode: true,
|
|
94
|
-
transform: async (url, _, callback) => {
|
|
95
|
-
const bufferObject = {
|
|
96
|
-
url,
|
|
97
|
-
buffer: await bufferFetcher.fetchBuffer(url),
|
|
98
|
-
isCacheHit: useCache
|
|
99
|
-
};
|
|
90
|
+
const promiseProcessedData = urlsforFetchingData.map((url) => {
|
|
91
|
+
return new Promise((resolve, reject) => {
|
|
92
|
+
bufferFetcher.fetch([url]).then((bufferObjects) => {
|
|
100
93
|
try {
|
|
101
94
|
const processedData = processData({
|
|
102
95
|
instrument: input.instrument,
|
|
103
96
|
requestedTimeframe: input.timeframe,
|
|
104
|
-
bufferObjects
|
|
97
|
+
bufferObjects,
|
|
105
98
|
priceType: input.priceType,
|
|
106
99
|
volumes: input.volumes,
|
|
107
100
|
volumeUnits: input.volumeUnits,
|
|
108
101
|
ignoreFlats: input.ignoreFlats
|
|
109
102
|
});
|
|
103
|
+
resolve(processedData);
|
|
104
|
+
} catch (err) {
|
|
105
|
+
reject(err);
|
|
106
|
+
}
|
|
107
|
+
}).catch((err) => {
|
|
108
|
+
reject(err);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
pipeline(
|
|
113
|
+
Readable.from(promiseProcessedData),
|
|
114
|
+
new Transform({
|
|
115
|
+
objectMode: true,
|
|
116
|
+
transform: async (processedDataPr, _, callback) => {
|
|
117
|
+
const processedData = await processedDataPr;
|
|
118
|
+
try {
|
|
110
119
|
processedData.forEach((item) => {
|
|
111
120
|
const [timestamp] = item;
|
|
112
121
|
if (timestamp && timestamp >= startDateMs && timestamp < endDateMs) {
|
|
@@ -660,6 +660,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
660
660
|
Instrument2["ispiteur"] = "ispiteur";
|
|
661
661
|
Instrument2["isrgususd"] = "isrgususd";
|
|
662
662
|
Instrument2["itususd"] = "itususd";
|
|
663
|
+
Instrument2["itaidxeur"] = "itaidxeur";
|
|
663
664
|
Instrument2["itrkgbgbx"] = "itrkgbgbx";
|
|
664
665
|
Instrument2["itubususd"] = "itubususd";
|
|
665
666
|
Instrument2["itvgbgbx"] = "itvgbgbx";
|
|
@@ -1149,6 +1150,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1149
1150
|
Instrument2["uriususd"] = "uriususd";
|
|
1150
1151
|
Instrument2["usiteur"] = "usiteur";
|
|
1151
1152
|
Instrument2["usbususd"] = "usbususd";
|
|
1153
|
+
Instrument2["usdaed"] = "usdaed";
|
|
1152
1154
|
Instrument2["usdcad"] = "usdcad";
|
|
1153
1155
|
Instrument2["usdchf"] = "usdchf";
|
|
1154
1156
|
Instrument2["usdcnh"] = "usdcnh";
|
|
@@ -1162,6 +1164,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1162
1164
|
Instrument2["usdnok"] = "usdnok";
|
|
1163
1165
|
Instrument2["usdpln"] = "usdpln";
|
|
1164
1166
|
Instrument2["usdron"] = "usdron";
|
|
1167
|
+
Instrument2["usdsar"] = "usdsar";
|
|
1165
1168
|
Instrument2["usdsek"] = "usdsek";
|
|
1166
1169
|
Instrument2["usdsgd"] = "usdsgd";
|
|
1167
1170
|
Instrument2["usdthb"] = "usdthb";
|
|
@@ -6040,7 +6043,7 @@ var instrument_meta_data_default = {
|
|
|
6040
6043
|
},
|
|
6041
6044
|
fbususd: {
|
|
6042
6045
|
name: "FB.US/USD",
|
|
6043
|
-
description: "FACEBOOK INC-A",
|
|
6046
|
+
description: "FACEBOOK INC-A / META",
|
|
6044
6047
|
decimalFactor: 1e3,
|
|
6045
6048
|
startHourForTicks: "2017-01-26T14:30:01.438Z",
|
|
6046
6049
|
startDayForMinuteCandles: "2017-01-26T14:30:00.000Z",
|
|
@@ -7316,6 +7319,15 @@ var instrument_meta_data_default = {
|
|
|
7316
7319
|
startMonthForHourlyCandles: "2022-05-12T13:00:00.000Z",
|
|
7317
7320
|
startYearForDailyCandles: "2022-05-12T00:00:00.000Z"
|
|
7318
7321
|
},
|
|
7322
|
+
itaidxeur: {
|
|
7323
|
+
name: "ITA.IDX/EUR",
|
|
7324
|
+
description: "Italy 40 Index",
|
|
7325
|
+
decimalFactor: 1e3,
|
|
7326
|
+
startHourForTicks: "2014-06-02T07:00:33.102Z",
|
|
7327
|
+
startDayForMinuteCandles: "2014-06-02T07:00:00.000Z",
|
|
7328
|
+
startMonthForHourlyCandles: "2014-06-02T07:00:00.000Z",
|
|
7329
|
+
startYearForDailyCandles: "2014-06-02T00:00:00.000Z"
|
|
7330
|
+
},
|
|
7319
7331
|
itrkgbgbx: {
|
|
7320
7332
|
name: "ITRK.GB/GBX",
|
|
7321
7333
|
description: "Intertek Group PLC",
|
|
@@ -11717,6 +11729,15 @@ var instrument_meta_data_default = {
|
|
|
11717
11729
|
startMonthForHourlyCandles: "2017-11-15T15:00:00.000Z",
|
|
11718
11730
|
startYearForDailyCandles: "2017-11-15T00:00:00.000Z"
|
|
11719
11731
|
},
|
|
11732
|
+
usdaed: {
|
|
11733
|
+
name: "USD/AED",
|
|
11734
|
+
description: "US Dollar vs United Arab Emirates Dirham",
|
|
11735
|
+
decimalFactor: 100,
|
|
11736
|
+
startHourForTicks: "2024-03-22T20:55:00.062Z",
|
|
11737
|
+
startDayForMinuteCandles: "2024-03-22T20:55:00.000Z",
|
|
11738
|
+
startMonthForHourlyCandles: "2024-03-22T20:00:00.000Z",
|
|
11739
|
+
startYearForDailyCandles: "2024-03-22T00:00:00.000Z"
|
|
11740
|
+
},
|
|
11720
11741
|
usdcad: {
|
|
11721
11742
|
name: "USD/CAD",
|
|
11722
11743
|
description: "US Dollar vs Canadian Dollar",
|
|
@@ -11834,6 +11855,15 @@ var instrument_meta_data_default = {
|
|
|
11834
11855
|
startMonthForHourlyCandles: "2016-12-19T07:00:00.000Z",
|
|
11835
11856
|
startYearForDailyCandles: "2016-12-20T00:00:00.000Z"
|
|
11836
11857
|
},
|
|
11858
|
+
usdsar: {
|
|
11859
|
+
name: "USD/SAR",
|
|
11860
|
+
description: "US Dollar vs Saudi Riyal",
|
|
11861
|
+
decimalFactor: 100,
|
|
11862
|
+
startHourForTicks: "2024-03-25T10:29:41.348Z",
|
|
11863
|
+
startDayForMinuteCandles: "2024-03-25T10:29:00.000Z",
|
|
11864
|
+
startMonthForHourlyCandles: "2024-03-25T10:00:00.000Z",
|
|
11865
|
+
startYearForDailyCandles: "2024-03-25T00:00:00.000Z"
|
|
11866
|
+
},
|
|
11837
11867
|
usdsek: {
|
|
11838
11868
|
name: "USD/SEK",
|
|
11839
11869
|
description: "US Dollar vs Swedish Krona",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
version
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5PZO2PCC.js";
|
|
4
4
|
import {
|
|
5
5
|
formatOutput
|
|
6
6
|
} from "./chunk-476J4KQE.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
normaliseDates,
|
|
13
13
|
processData,
|
|
14
14
|
validateConfigNode
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-NHIUTTTM.js";
|
|
16
16
|
|
|
17
17
|
// src/getHistoricalRates.ts
|
|
18
18
|
import debug from "debug";
|
package/dist/esm/cli/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
version
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-5PZO2PCC.js";
|
|
5
5
|
import {
|
|
6
6
|
BufferFetcher,
|
|
7
7
|
CacheManager,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
processData,
|
|
17
17
|
schema,
|
|
18
18
|
validateConfig
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-NHIUTTTM.js";
|
|
20
20
|
|
|
21
21
|
// src/cli/cli.ts
|
|
22
22
|
import { resolve, join } from "path";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getHistoricalRates
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-X3XEJCND.js";
|
|
4
|
+
import "./chunk-5PZO2PCC.js";
|
|
5
5
|
import "./chunk-476J4KQE.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-NHIUTTTM.js";
|
|
7
7
|
|
|
8
8
|
// src/index.example.nostream.ts
|
|
9
9
|
var printMemory = () => {
|
|
@@ -24,12 +24,13 @@ var printMemory = () => {
|
|
|
24
24
|
instrument: "eurusd",
|
|
25
25
|
dates: {
|
|
26
26
|
from: /* @__PURE__ */ new Date("2021-02-01"),
|
|
27
|
-
to: /* @__PURE__ */ new Date("2021-
|
|
27
|
+
to: /* @__PURE__ */ new Date("2021-06-03")
|
|
28
28
|
},
|
|
29
29
|
timeframe: "m1",
|
|
30
30
|
format: "csv"
|
|
31
31
|
});
|
|
32
32
|
process.stdout.write(data);
|
|
33
|
+
console.log();
|
|
33
34
|
printMemory();
|
|
34
35
|
} catch (error) {
|
|
35
36
|
console.log("error", error);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getHistoricalRatesToStream
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-E245CVDJ.js";
|
|
4
4
|
import "./chunk-476J4KQE.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-NHIUTTTM.js";
|
|
6
6
|
|
|
7
7
|
// src/index.example.stream.ts
|
|
8
8
|
var printMemory = () => {
|
|
@@ -23,15 +23,16 @@ var printMemory = () => {
|
|
|
23
23
|
instrument: "eurusd",
|
|
24
24
|
dates: {
|
|
25
25
|
from: /* @__PURE__ */ new Date("2021-02-01"),
|
|
26
|
-
to: /* @__PURE__ */ new Date("2021-
|
|
26
|
+
to: /* @__PURE__ */ new Date("2021-06-03")
|
|
27
27
|
},
|
|
28
28
|
timeframe: "m1",
|
|
29
29
|
format: "csv"
|
|
30
30
|
});
|
|
31
|
-
data.on("data", (
|
|
32
|
-
process.stdout.write(
|
|
31
|
+
data.on("data", (chunk) => {
|
|
32
|
+
process.stdout.write(chunk);
|
|
33
33
|
});
|
|
34
34
|
data.on("end", () => {
|
|
35
|
+
console.log();
|
|
35
36
|
printMemory();
|
|
36
37
|
});
|
|
37
38
|
} catch (error) {
|
package/dist/esm/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getHistoricalRatesToStream
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-E245CVDJ.js";
|
|
4
4
|
import {
|
|
5
5
|
getHistoricRates,
|
|
6
6
|
getHistoricalRates
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-X3XEJCND.js";
|
|
8
|
+
import "./chunk-5PZO2PCC.js";
|
|
9
9
|
import {
|
|
10
10
|
formatOutput
|
|
11
11
|
} from "./chunk-476J4KQE.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
schema,
|
|
26
26
|
validateConfig,
|
|
27
27
|
validateConfigNode
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-NHIUTTTM.js";
|
|
29
29
|
|
|
30
30
|
// src/index.ts
|
|
31
31
|
import { RuleDate, RuleBoolean, RuleNumber, RuleString, RuleObject } from "fastest-validator";
|
package/dist/index.d.mts
CHANGED
|
@@ -2685,7 +2685,7 @@ declare enum Instrument {
|
|
|
2685
2685
|
*/
|
|
2686
2686
|
fangususd = "fangususd",
|
|
2687
2687
|
/**
|
|
2688
|
-
* ### FACEBOOK INC-A
|
|
2688
|
+
* ### FACEBOOK INC-A / META
|
|
2689
2689
|
* *FB.US/USD*
|
|
2690
2690
|
*/
|
|
2691
2691
|
fbususd = "fbususd",
|
|
@@ -3394,6 +3394,11 @@ declare enum Instrument {
|
|
|
3394
3394
|
* *IT.US/USD*
|
|
3395
3395
|
*/
|
|
3396
3396
|
itususd = "itususd",
|
|
3397
|
+
/**
|
|
3398
|
+
* ### Italy 40 Index
|
|
3399
|
+
* *ITA.IDX/EUR*
|
|
3400
|
+
*/
|
|
3401
|
+
itaidxeur = "itaidxeur",
|
|
3397
3402
|
/**
|
|
3398
3403
|
* ### Intertek Group PLC
|
|
3399
3404
|
* *ITRK.GB/GBX*
|
|
@@ -5839,6 +5844,11 @@ declare enum Instrument {
|
|
|
5839
5844
|
* *USB.US/USD*
|
|
5840
5845
|
*/
|
|
5841
5846
|
usbususd = "usbususd",
|
|
5847
|
+
/**
|
|
5848
|
+
* ### US Dollar vs United Arab Emirates Dirham
|
|
5849
|
+
* *USD/AED*
|
|
5850
|
+
*/
|
|
5851
|
+
usdaed = "usdaed",
|
|
5842
5852
|
/**
|
|
5843
5853
|
* ### US Dollar vs Canadian Dollar
|
|
5844
5854
|
* *USD/CAD*
|
|
@@ -5904,6 +5914,11 @@ declare enum Instrument {
|
|
|
5904
5914
|
* *USD/RON*
|
|
5905
5915
|
*/
|
|
5906
5916
|
usdron = "usdron",
|
|
5917
|
+
/**
|
|
5918
|
+
* ### US Dollar vs Saudi Riyal
|
|
5919
|
+
* *USD/SAR*
|
|
5920
|
+
*/
|
|
5921
|
+
usdsar = "usdsar",
|
|
5907
5922
|
/**
|
|
5908
5923
|
* ### US Dollar vs Swedish Krona
|
|
5909
5924
|
* *USD/SEK*
|
package/dist/index.d.ts
CHANGED
|
@@ -2685,7 +2685,7 @@ declare enum Instrument {
|
|
|
2685
2685
|
*/
|
|
2686
2686
|
fangususd = "fangususd",
|
|
2687
2687
|
/**
|
|
2688
|
-
* ### FACEBOOK INC-A
|
|
2688
|
+
* ### FACEBOOK INC-A / META
|
|
2689
2689
|
* *FB.US/USD*
|
|
2690
2690
|
*/
|
|
2691
2691
|
fbususd = "fbususd",
|
|
@@ -3394,6 +3394,11 @@ declare enum Instrument {
|
|
|
3394
3394
|
* *IT.US/USD*
|
|
3395
3395
|
*/
|
|
3396
3396
|
itususd = "itususd",
|
|
3397
|
+
/**
|
|
3398
|
+
* ### Italy 40 Index
|
|
3399
|
+
* *ITA.IDX/EUR*
|
|
3400
|
+
*/
|
|
3401
|
+
itaidxeur = "itaidxeur",
|
|
3397
3402
|
/**
|
|
3398
3403
|
* ### Intertek Group PLC
|
|
3399
3404
|
* *ITRK.GB/GBX*
|
|
@@ -5839,6 +5844,11 @@ declare enum Instrument {
|
|
|
5839
5844
|
* *USB.US/USD*
|
|
5840
5845
|
*/
|
|
5841
5846
|
usbususd = "usbususd",
|
|
5847
|
+
/**
|
|
5848
|
+
* ### US Dollar vs United Arab Emirates Dirham
|
|
5849
|
+
* *USD/AED*
|
|
5850
|
+
*/
|
|
5851
|
+
usdaed = "usdaed",
|
|
5842
5852
|
/**
|
|
5843
5853
|
* ### US Dollar vs Canadian Dollar
|
|
5844
5854
|
* *USD/CAD*
|
|
@@ -5904,6 +5914,11 @@ declare enum Instrument {
|
|
|
5904
5914
|
* *USD/RON*
|
|
5905
5915
|
*/
|
|
5906
5916
|
usdron = "usdron",
|
|
5917
|
+
/**
|
|
5918
|
+
* ### US Dollar vs Saudi Riyal
|
|
5919
|
+
* *USD/SAR*
|
|
5920
|
+
*/
|
|
5921
|
+
usdsar = "usdsar",
|
|
5907
5922
|
/**
|
|
5908
5923
|
* ### US Dollar vs Swedish Krona
|
|
5909
5924
|
* *USD/SEK*
|
|
@@ -679,6 +679,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
679
679
|
Instrument2["ispiteur"] = "ispiteur";
|
|
680
680
|
Instrument2["isrgususd"] = "isrgususd";
|
|
681
681
|
Instrument2["itususd"] = "itususd";
|
|
682
|
+
Instrument2["itaidxeur"] = "itaidxeur";
|
|
682
683
|
Instrument2["itrkgbgbx"] = "itrkgbgbx";
|
|
683
684
|
Instrument2["itubususd"] = "itubususd";
|
|
684
685
|
Instrument2["itvgbgbx"] = "itvgbgbx";
|
|
@@ -1168,6 +1169,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1168
1169
|
Instrument2["uriususd"] = "uriususd";
|
|
1169
1170
|
Instrument2["usiteur"] = "usiteur";
|
|
1170
1171
|
Instrument2["usbususd"] = "usbususd";
|
|
1172
|
+
Instrument2["usdaed"] = "usdaed";
|
|
1171
1173
|
Instrument2["usdcad"] = "usdcad";
|
|
1172
1174
|
Instrument2["usdchf"] = "usdchf";
|
|
1173
1175
|
Instrument2["usdcnh"] = "usdcnh";
|
|
@@ -1181,6 +1183,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1181
1183
|
Instrument2["usdnok"] = "usdnok";
|
|
1182
1184
|
Instrument2["usdpln"] = "usdpln";
|
|
1183
1185
|
Instrument2["usdron"] = "usdron";
|
|
1186
|
+
Instrument2["usdsar"] = "usdsar";
|
|
1184
1187
|
Instrument2["usdsek"] = "usdsek";
|
|
1185
1188
|
Instrument2["usdsgd"] = "usdsgd";
|
|
1186
1189
|
Instrument2["usdthb"] = "usdthb";
|
|
@@ -6058,7 +6061,7 @@ var instrument_meta_data_default = {
|
|
|
6058
6061
|
},
|
|
6059
6062
|
fbususd: {
|
|
6060
6063
|
name: "FB.US/USD",
|
|
6061
|
-
description: "FACEBOOK INC-A",
|
|
6064
|
+
description: "FACEBOOK INC-A / META",
|
|
6062
6065
|
decimalFactor: 1e3,
|
|
6063
6066
|
startHourForTicks: "2017-01-26T14:30:01.438Z",
|
|
6064
6067
|
startDayForMinuteCandles: "2017-01-26T14:30:00.000Z",
|
|
@@ -7334,6 +7337,15 @@ var instrument_meta_data_default = {
|
|
|
7334
7337
|
startMonthForHourlyCandles: "2022-05-12T13:00:00.000Z",
|
|
7335
7338
|
startYearForDailyCandles: "2022-05-12T00:00:00.000Z"
|
|
7336
7339
|
},
|
|
7340
|
+
itaidxeur: {
|
|
7341
|
+
name: "ITA.IDX/EUR",
|
|
7342
|
+
description: "Italy 40 Index",
|
|
7343
|
+
decimalFactor: 1e3,
|
|
7344
|
+
startHourForTicks: "2014-06-02T07:00:33.102Z",
|
|
7345
|
+
startDayForMinuteCandles: "2014-06-02T07:00:00.000Z",
|
|
7346
|
+
startMonthForHourlyCandles: "2014-06-02T07:00:00.000Z",
|
|
7347
|
+
startYearForDailyCandles: "2014-06-02T00:00:00.000Z"
|
|
7348
|
+
},
|
|
7337
7349
|
itrkgbgbx: {
|
|
7338
7350
|
name: "ITRK.GB/GBX",
|
|
7339
7351
|
description: "Intertek Group PLC",
|
|
@@ -11735,6 +11747,15 @@ var instrument_meta_data_default = {
|
|
|
11735
11747
|
startMonthForHourlyCandles: "2017-11-15T15:00:00.000Z",
|
|
11736
11748
|
startYearForDailyCandles: "2017-11-15T00:00:00.000Z"
|
|
11737
11749
|
},
|
|
11750
|
+
usdaed: {
|
|
11751
|
+
name: "USD/AED",
|
|
11752
|
+
description: "US Dollar vs United Arab Emirates Dirham",
|
|
11753
|
+
decimalFactor: 100,
|
|
11754
|
+
startHourForTicks: "2024-03-22T20:55:00.062Z",
|
|
11755
|
+
startDayForMinuteCandles: "2024-03-22T20:55:00.000Z",
|
|
11756
|
+
startMonthForHourlyCandles: "2024-03-22T20:00:00.000Z",
|
|
11757
|
+
startYearForDailyCandles: "2024-03-22T00:00:00.000Z"
|
|
11758
|
+
},
|
|
11738
11759
|
usdcad: {
|
|
11739
11760
|
name: "USD/CAD",
|
|
11740
11761
|
description: "US Dollar vs Canadian Dollar",
|
|
@@ -11852,6 +11873,15 @@ var instrument_meta_data_default = {
|
|
|
11852
11873
|
startMonthForHourlyCandles: "2016-12-19T07:00:00.000Z",
|
|
11853
11874
|
startYearForDailyCandles: "2016-12-20T00:00:00.000Z"
|
|
11854
11875
|
},
|
|
11876
|
+
usdsar: {
|
|
11877
|
+
name: "USD/SAR",
|
|
11878
|
+
description: "US Dollar vs Saudi Riyal",
|
|
11879
|
+
decimalFactor: 100,
|
|
11880
|
+
startHourForTicks: "2024-03-25T10:29:41.348Z",
|
|
11881
|
+
startDayForMinuteCandles: "2024-03-25T10:29:00.000Z",
|
|
11882
|
+
startMonthForHourlyCandles: "2024-03-25T10:00:00.000Z",
|
|
11883
|
+
startYearForDailyCandles: "2024-03-25T00:00:00.000Z"
|
|
11884
|
+
},
|
|
11855
11885
|
usdsek: {
|
|
11856
11886
|
name: "USD/SEK",
|
|
11857
11887
|
description: "US Dollar vs Swedish Krona",
|
|
@@ -13728,7 +13758,7 @@ function formatBytes(bytes, decimals = 2) {
|
|
|
13728
13758
|
}
|
|
13729
13759
|
|
|
13730
13760
|
// package.json
|
|
13731
|
-
var version = "1.1.
|
|
13761
|
+
var version = "1.1.3";
|
|
13732
13762
|
|
|
13733
13763
|
// src/getHistoricalRates.ts
|
|
13734
13764
|
var import_debug = __toESM(require("debug"));
|
|
@@ -13841,12 +13871,13 @@ var printMemory = () => {
|
|
|
13841
13871
|
instrument: "eurusd",
|
|
13842
13872
|
dates: {
|
|
13843
13873
|
from: /* @__PURE__ */ new Date("2021-02-01"),
|
|
13844
|
-
to: /* @__PURE__ */ new Date("2021-
|
|
13874
|
+
to: /* @__PURE__ */ new Date("2021-06-03")
|
|
13845
13875
|
},
|
|
13846
13876
|
timeframe: "m1",
|
|
13847
13877
|
format: "csv"
|
|
13848
13878
|
});
|
|
13849
13879
|
process.stdout.write(data);
|
|
13880
|
+
console.log();
|
|
13850
13881
|
printMemory();
|
|
13851
13882
|
} catch (error) {
|
|
13852
13883
|
console.log("error", error);
|
|
@@ -679,6 +679,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
679
679
|
Instrument2["ispiteur"] = "ispiteur";
|
|
680
680
|
Instrument2["isrgususd"] = "isrgususd";
|
|
681
681
|
Instrument2["itususd"] = "itususd";
|
|
682
|
+
Instrument2["itaidxeur"] = "itaidxeur";
|
|
682
683
|
Instrument2["itrkgbgbx"] = "itrkgbgbx";
|
|
683
684
|
Instrument2["itubususd"] = "itubususd";
|
|
684
685
|
Instrument2["itvgbgbx"] = "itvgbgbx";
|
|
@@ -1168,6 +1169,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1168
1169
|
Instrument2["uriususd"] = "uriususd";
|
|
1169
1170
|
Instrument2["usiteur"] = "usiteur";
|
|
1170
1171
|
Instrument2["usbususd"] = "usbususd";
|
|
1172
|
+
Instrument2["usdaed"] = "usdaed";
|
|
1171
1173
|
Instrument2["usdcad"] = "usdcad";
|
|
1172
1174
|
Instrument2["usdchf"] = "usdchf";
|
|
1173
1175
|
Instrument2["usdcnh"] = "usdcnh";
|
|
@@ -1181,6 +1183,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1181
1183
|
Instrument2["usdnok"] = "usdnok";
|
|
1182
1184
|
Instrument2["usdpln"] = "usdpln";
|
|
1183
1185
|
Instrument2["usdron"] = "usdron";
|
|
1186
|
+
Instrument2["usdsar"] = "usdsar";
|
|
1184
1187
|
Instrument2["usdsek"] = "usdsek";
|
|
1185
1188
|
Instrument2["usdsgd"] = "usdsgd";
|
|
1186
1189
|
Instrument2["usdthb"] = "usdthb";
|
|
@@ -6058,7 +6061,7 @@ var instrument_meta_data_default = {
|
|
|
6058
6061
|
},
|
|
6059
6062
|
fbususd: {
|
|
6060
6063
|
name: "FB.US/USD",
|
|
6061
|
-
description: "FACEBOOK INC-A",
|
|
6064
|
+
description: "FACEBOOK INC-A / META",
|
|
6062
6065
|
decimalFactor: 1e3,
|
|
6063
6066
|
startHourForTicks: "2017-01-26T14:30:01.438Z",
|
|
6064
6067
|
startDayForMinuteCandles: "2017-01-26T14:30:00.000Z",
|
|
@@ -7334,6 +7337,15 @@ var instrument_meta_data_default = {
|
|
|
7334
7337
|
startMonthForHourlyCandles: "2022-05-12T13:00:00.000Z",
|
|
7335
7338
|
startYearForDailyCandles: "2022-05-12T00:00:00.000Z"
|
|
7336
7339
|
},
|
|
7340
|
+
itaidxeur: {
|
|
7341
|
+
name: "ITA.IDX/EUR",
|
|
7342
|
+
description: "Italy 40 Index",
|
|
7343
|
+
decimalFactor: 1e3,
|
|
7344
|
+
startHourForTicks: "2014-06-02T07:00:33.102Z",
|
|
7345
|
+
startDayForMinuteCandles: "2014-06-02T07:00:00.000Z",
|
|
7346
|
+
startMonthForHourlyCandles: "2014-06-02T07:00:00.000Z",
|
|
7347
|
+
startYearForDailyCandles: "2014-06-02T00:00:00.000Z"
|
|
7348
|
+
},
|
|
7337
7349
|
itrkgbgbx: {
|
|
7338
7350
|
name: "ITRK.GB/GBX",
|
|
7339
7351
|
description: "Intertek Group PLC",
|
|
@@ -11735,6 +11747,15 @@ var instrument_meta_data_default = {
|
|
|
11735
11747
|
startMonthForHourlyCandles: "2017-11-15T15:00:00.000Z",
|
|
11736
11748
|
startYearForDailyCandles: "2017-11-15T00:00:00.000Z"
|
|
11737
11749
|
},
|
|
11750
|
+
usdaed: {
|
|
11751
|
+
name: "USD/AED",
|
|
11752
|
+
description: "US Dollar vs United Arab Emirates Dirham",
|
|
11753
|
+
decimalFactor: 100,
|
|
11754
|
+
startHourForTicks: "2024-03-22T20:55:00.062Z",
|
|
11755
|
+
startDayForMinuteCandles: "2024-03-22T20:55:00.000Z",
|
|
11756
|
+
startMonthForHourlyCandles: "2024-03-22T20:00:00.000Z",
|
|
11757
|
+
startYearForDailyCandles: "2024-03-22T00:00:00.000Z"
|
|
11758
|
+
},
|
|
11738
11759
|
usdcad: {
|
|
11739
11760
|
name: "USD/CAD",
|
|
11740
11761
|
description: "US Dollar vs Canadian Dollar",
|
|
@@ -11852,6 +11873,15 @@ var instrument_meta_data_default = {
|
|
|
11852
11873
|
startMonthForHourlyCandles: "2016-12-19T07:00:00.000Z",
|
|
11853
11874
|
startYearForDailyCandles: "2016-12-20T00:00:00.000Z"
|
|
11854
11875
|
},
|
|
11876
|
+
usdsar: {
|
|
11877
|
+
name: "USD/SAR",
|
|
11878
|
+
description: "US Dollar vs Saudi Riyal",
|
|
11879
|
+
decimalFactor: 100,
|
|
11880
|
+
startHourForTicks: "2024-03-25T10:29:41.348Z",
|
|
11881
|
+
startDayForMinuteCandles: "2024-03-25T10:29:00.000Z",
|
|
11882
|
+
startMonthForHourlyCandles: "2024-03-25T10:00:00.000Z",
|
|
11883
|
+
startYearForDailyCandles: "2024-03-25T00:00:00.000Z"
|
|
11884
|
+
},
|
|
11855
11885
|
usdsek: {
|
|
11856
11886
|
name: "USD/SEK",
|
|
11857
11887
|
description: "US Dollar vs Swedish Krona",
|
|
@@ -13776,26 +13806,35 @@ function getHistoricalRatesToStream(config) {
|
|
|
13776
13806
|
startDate,
|
|
13777
13807
|
endDate
|
|
13778
13808
|
});
|
|
13779
|
-
|
|
13780
|
-
|
|
13781
|
-
|
|
13782
|
-
objectMode: true,
|
|
13783
|
-
transform: async (url, _, callback) => {
|
|
13784
|
-
const bufferObject = {
|
|
13785
|
-
url,
|
|
13786
|
-
buffer: await bufferFetcher.fetchBuffer(url),
|
|
13787
|
-
isCacheHit: useCache
|
|
13788
|
-
};
|
|
13809
|
+
const promiseProcessedData = urlsforFetchingData.map((url) => {
|
|
13810
|
+
return new Promise((resolve2, reject) => {
|
|
13811
|
+
bufferFetcher.fetch([url]).then((bufferObjects) => {
|
|
13789
13812
|
try {
|
|
13790
13813
|
const processedData = processData({
|
|
13791
13814
|
instrument: input.instrument,
|
|
13792
13815
|
requestedTimeframe: input.timeframe,
|
|
13793
|
-
bufferObjects
|
|
13816
|
+
bufferObjects,
|
|
13794
13817
|
priceType: input.priceType,
|
|
13795
13818
|
volumes: input.volumes,
|
|
13796
13819
|
volumeUnits: input.volumeUnits,
|
|
13797
13820
|
ignoreFlats: input.ignoreFlats
|
|
13798
13821
|
});
|
|
13822
|
+
resolve2(processedData);
|
|
13823
|
+
} catch (err) {
|
|
13824
|
+
reject(err);
|
|
13825
|
+
}
|
|
13826
|
+
}).catch((err) => {
|
|
13827
|
+
reject(err);
|
|
13828
|
+
});
|
|
13829
|
+
});
|
|
13830
|
+
});
|
|
13831
|
+
(0, import_promises.pipeline)(
|
|
13832
|
+
import_stream.Readable.from(promiseProcessedData),
|
|
13833
|
+
new import_stream.Transform({
|
|
13834
|
+
objectMode: true,
|
|
13835
|
+
transform: async (processedDataPr, _, callback) => {
|
|
13836
|
+
const processedData = await processedDataPr;
|
|
13837
|
+
try {
|
|
13799
13838
|
processedData.forEach((item) => {
|
|
13800
13839
|
const [timestamp] = item;
|
|
13801
13840
|
if (timestamp && timestamp >= startDateMs && timestamp < endDateMs) {
|
|
@@ -13858,15 +13897,16 @@ var printMemory = () => {
|
|
|
13858
13897
|
instrument: "eurusd",
|
|
13859
13898
|
dates: {
|
|
13860
13899
|
from: /* @__PURE__ */ new Date("2021-02-01"),
|
|
13861
|
-
to: /* @__PURE__ */ new Date("2021-
|
|
13900
|
+
to: /* @__PURE__ */ new Date("2021-06-03")
|
|
13862
13901
|
},
|
|
13863
13902
|
timeframe: "m1",
|
|
13864
13903
|
format: "csv"
|
|
13865
13904
|
});
|
|
13866
|
-
data.on("data", (
|
|
13867
|
-
process.stdout.write(
|
|
13905
|
+
data.on("data", (chunk) => {
|
|
13906
|
+
process.stdout.write(chunk);
|
|
13868
13907
|
});
|
|
13869
13908
|
data.on("end", () => {
|
|
13909
|
+
console.log();
|
|
13870
13910
|
printMemory();
|
|
13871
13911
|
});
|
|
13872
13912
|
} catch (error) {
|
package/dist/index.js
CHANGED
|
@@ -715,6 +715,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
715
715
|
Instrument2["ispiteur"] = "ispiteur";
|
|
716
716
|
Instrument2["isrgususd"] = "isrgususd";
|
|
717
717
|
Instrument2["itususd"] = "itususd";
|
|
718
|
+
Instrument2["itaidxeur"] = "itaidxeur";
|
|
718
719
|
Instrument2["itrkgbgbx"] = "itrkgbgbx";
|
|
719
720
|
Instrument2["itubususd"] = "itubususd";
|
|
720
721
|
Instrument2["itvgbgbx"] = "itvgbgbx";
|
|
@@ -1204,6 +1205,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1204
1205
|
Instrument2["uriususd"] = "uriususd";
|
|
1205
1206
|
Instrument2["usiteur"] = "usiteur";
|
|
1206
1207
|
Instrument2["usbususd"] = "usbususd";
|
|
1208
|
+
Instrument2["usdaed"] = "usdaed";
|
|
1207
1209
|
Instrument2["usdcad"] = "usdcad";
|
|
1208
1210
|
Instrument2["usdchf"] = "usdchf";
|
|
1209
1211
|
Instrument2["usdcnh"] = "usdcnh";
|
|
@@ -1217,6 +1219,7 @@ var Instrument = /* @__PURE__ */ ((Instrument2) => {
|
|
|
1217
1219
|
Instrument2["usdnok"] = "usdnok";
|
|
1218
1220
|
Instrument2["usdpln"] = "usdpln";
|
|
1219
1221
|
Instrument2["usdron"] = "usdron";
|
|
1222
|
+
Instrument2["usdsar"] = "usdsar";
|
|
1220
1223
|
Instrument2["usdsek"] = "usdsek";
|
|
1221
1224
|
Instrument2["usdsgd"] = "usdsgd";
|
|
1222
1225
|
Instrument2["usdthb"] = "usdthb";
|
|
@@ -6094,7 +6097,7 @@ var instrument_meta_data_default = {
|
|
|
6094
6097
|
},
|
|
6095
6098
|
fbususd: {
|
|
6096
6099
|
name: "FB.US/USD",
|
|
6097
|
-
description: "FACEBOOK INC-A",
|
|
6100
|
+
description: "FACEBOOK INC-A / META",
|
|
6098
6101
|
decimalFactor: 1e3,
|
|
6099
6102
|
startHourForTicks: "2017-01-26T14:30:01.438Z",
|
|
6100
6103
|
startDayForMinuteCandles: "2017-01-26T14:30:00.000Z",
|
|
@@ -7370,6 +7373,15 @@ var instrument_meta_data_default = {
|
|
|
7370
7373
|
startMonthForHourlyCandles: "2022-05-12T13:00:00.000Z",
|
|
7371
7374
|
startYearForDailyCandles: "2022-05-12T00:00:00.000Z"
|
|
7372
7375
|
},
|
|
7376
|
+
itaidxeur: {
|
|
7377
|
+
name: "ITA.IDX/EUR",
|
|
7378
|
+
description: "Italy 40 Index",
|
|
7379
|
+
decimalFactor: 1e3,
|
|
7380
|
+
startHourForTicks: "2014-06-02T07:00:33.102Z",
|
|
7381
|
+
startDayForMinuteCandles: "2014-06-02T07:00:00.000Z",
|
|
7382
|
+
startMonthForHourlyCandles: "2014-06-02T07:00:00.000Z",
|
|
7383
|
+
startYearForDailyCandles: "2014-06-02T00:00:00.000Z"
|
|
7384
|
+
},
|
|
7373
7385
|
itrkgbgbx: {
|
|
7374
7386
|
name: "ITRK.GB/GBX",
|
|
7375
7387
|
description: "Intertek Group PLC",
|
|
@@ -11771,6 +11783,15 @@ var instrument_meta_data_default = {
|
|
|
11771
11783
|
startMonthForHourlyCandles: "2017-11-15T15:00:00.000Z",
|
|
11772
11784
|
startYearForDailyCandles: "2017-11-15T00:00:00.000Z"
|
|
11773
11785
|
},
|
|
11786
|
+
usdaed: {
|
|
11787
|
+
name: "USD/AED",
|
|
11788
|
+
description: "US Dollar vs United Arab Emirates Dirham",
|
|
11789
|
+
decimalFactor: 100,
|
|
11790
|
+
startHourForTicks: "2024-03-22T20:55:00.062Z",
|
|
11791
|
+
startDayForMinuteCandles: "2024-03-22T20:55:00.000Z",
|
|
11792
|
+
startMonthForHourlyCandles: "2024-03-22T20:00:00.000Z",
|
|
11793
|
+
startYearForDailyCandles: "2024-03-22T00:00:00.000Z"
|
|
11794
|
+
},
|
|
11774
11795
|
usdcad: {
|
|
11775
11796
|
name: "USD/CAD",
|
|
11776
11797
|
description: "US Dollar vs Canadian Dollar",
|
|
@@ -11888,6 +11909,15 @@ var instrument_meta_data_default = {
|
|
|
11888
11909
|
startMonthForHourlyCandles: "2016-12-19T07:00:00.000Z",
|
|
11889
11910
|
startYearForDailyCandles: "2016-12-20T00:00:00.000Z"
|
|
11890
11911
|
},
|
|
11912
|
+
usdsar: {
|
|
11913
|
+
name: "USD/SAR",
|
|
11914
|
+
description: "US Dollar vs Saudi Riyal",
|
|
11915
|
+
decimalFactor: 100,
|
|
11916
|
+
startHourForTicks: "2024-03-25T10:29:41.348Z",
|
|
11917
|
+
startDayForMinuteCandles: "2024-03-25T10:29:00.000Z",
|
|
11918
|
+
startMonthForHourlyCandles: "2024-03-25T10:00:00.000Z",
|
|
11919
|
+
startYearForDailyCandles: "2024-03-25T00:00:00.000Z"
|
|
11920
|
+
},
|
|
11891
11921
|
usdsek: {
|
|
11892
11922
|
name: "USD/SEK",
|
|
11893
11923
|
description: "US Dollar vs Swedish Krona",
|
|
@@ -13767,7 +13797,7 @@ function formatBytes(bytes, decimals = 2) {
|
|
|
13767
13797
|
}
|
|
13768
13798
|
|
|
13769
13799
|
// package.json
|
|
13770
|
-
var version = "1.1.
|
|
13800
|
+
var version = "1.1.3";
|
|
13771
13801
|
|
|
13772
13802
|
// src/getHistoricalRates.ts
|
|
13773
13803
|
var import_debug = __toESM(require("debug"));
|
|
@@ -14060,26 +14090,35 @@ function getHistoricalRatesToStream(config) {
|
|
|
14060
14090
|
startDate,
|
|
14061
14091
|
endDate
|
|
14062
14092
|
});
|
|
14063
|
-
|
|
14064
|
-
|
|
14065
|
-
|
|
14066
|
-
objectMode: true,
|
|
14067
|
-
transform: async (url, _, callback) => {
|
|
14068
|
-
const bufferObject = {
|
|
14069
|
-
url,
|
|
14070
|
-
buffer: await bufferFetcher.fetchBuffer(url),
|
|
14071
|
-
isCacheHit: useCache
|
|
14072
|
-
};
|
|
14093
|
+
const promiseProcessedData = urlsforFetchingData.map((url) => {
|
|
14094
|
+
return new Promise((resolve2, reject) => {
|
|
14095
|
+
bufferFetcher.fetch([url]).then((bufferObjects) => {
|
|
14073
14096
|
try {
|
|
14074
14097
|
const processedData = processData({
|
|
14075
14098
|
instrument: input.instrument,
|
|
14076
14099
|
requestedTimeframe: input.timeframe,
|
|
14077
|
-
bufferObjects
|
|
14100
|
+
bufferObjects,
|
|
14078
14101
|
priceType: input.priceType,
|
|
14079
14102
|
volumes: input.volumes,
|
|
14080
14103
|
volumeUnits: input.volumeUnits,
|
|
14081
14104
|
ignoreFlats: input.ignoreFlats
|
|
14082
14105
|
});
|
|
14106
|
+
resolve2(processedData);
|
|
14107
|
+
} catch (err) {
|
|
14108
|
+
reject(err);
|
|
14109
|
+
}
|
|
14110
|
+
}).catch((err) => {
|
|
14111
|
+
reject(err);
|
|
14112
|
+
});
|
|
14113
|
+
});
|
|
14114
|
+
});
|
|
14115
|
+
(0, import_promises.pipeline)(
|
|
14116
|
+
import_stream.Readable.from(promiseProcessedData),
|
|
14117
|
+
new import_stream.Transform({
|
|
14118
|
+
objectMode: true,
|
|
14119
|
+
transform: async (processedDataPr, _, callback) => {
|
|
14120
|
+
const processedData = await processedDataPr;
|
|
14121
|
+
try {
|
|
14083
14122
|
processedData.forEach((item) => {
|
|
14084
14123
|
const [timestamp] = item;
|
|
14085
14124
|
if (timestamp && timestamp >= startDateMs && timestamp < endDateMs) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dukascopy-node-plus",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"description": "Node.js library for downloading historical market tick data for for Crypto, Stocks, ETFs, CFDs, Forex",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"license": "MIT",
|
|
31
31
|
"repository": {
|
|
32
32
|
"type": "git",
|
|
33
|
-
"url": "https://github.com/kyo06/dukascopy-node"
|
|
33
|
+
"url": "https://github.com/kyo06/dukascopy-node-plus"
|
|
34
34
|
},
|
|
35
35
|
"homepage": "https://www.dukascopy-node.app",
|
|
36
36
|
"keywords": [
|