From fbf3bce170824bff14c8bcbae06afd243efd8074 Mon Sep 17 00:00:00 2001 From: Smidy13 <77650800+Smidy13@users.noreply.github.com> Date: Wed, 23 Jun 2021 22:43:50 +1200 Subject: [PATCH 1/3] Improvement: Lykke Icons, Alphabetical Ordering of Crypto Exchange Icons --- .../Icons-SVG-Sources/exchanges/lykke.svg | 202 ++++++++++++++++++ .../Icons/Crypto-Exchanges/lykke.png | Bin 0 -> 27208 bytes .../Schemas/App-Schema/crypto-exchange.json | 64 +++--- 3 files changed, 236 insertions(+), 30 deletions(-) create mode 100644 Projects/Foundations/Icons-SVG-Sources/exchanges/lykke.svg create mode 100644 Projects/Foundations/Icons/Crypto-Exchanges/lykke.png diff --git a/Projects/Foundations/Icons-SVG-Sources/exchanges/lykke.svg b/Projects/Foundations/Icons-SVG-Sources/exchanges/lykke.svg new file mode 100644 index 000000000..4ba2ddd8a --- /dev/null +++ b/Projects/Foundations/Icons-SVG-Sources/exchanges/lykke.svg @@ -0,0 +1,202 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Projects/Foundations/Icons/Crypto-Exchanges/lykke.png b/Projects/Foundations/Icons/Crypto-Exchanges/lykke.png new file mode 100644 index 0000000000000000000000000000000000000000..fa64ccfb774f459ba32633ac68290173e95dce3d GIT binary patch literal 27208 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 x-wL(W`dcCU4mq9GT{tuZr1gro6 literal 0 HcmV?d00001 diff --git a/Projects/Foundations/Schemas/App-Schema/crypto-exchange.json b/Projects/Foundations/Schemas/App-Schema/crypto-exchange.json index 8ab740157..103c66930 100644 --- a/Projects/Foundations/Schemas/App-Schema/crypto-exchange.json +++ b/Projects/Foundations/Schemas/App-Schema/crypto-exchange.json @@ -76,10 +76,6 @@ } ], "alternativeIcons": [ - { - "codeName": "bitfinex", - "iconName": "bitfinex" - }, { "codeName": "binance", "iconName": "binance" @@ -89,45 +85,49 @@ "iconName": "binanceus" }, { - "codeName": "coinbasepro", - "iconName": "coinbasepro" - }, - { - "codeName": "kucoin", - "iconName": "kucoin" - }, - { - "codeName": "bittrex", - "iconName": "bittrex" - }, - { - "codeName": "kraken", - "iconName": "kraken" - }, - { - "codeName": "poloniex", - "iconName": "poloniex" - }, - { - "codeName": "upbit", - "iconName": "upbit" + "codeName": "bitfinex", + "iconName": "bitfinex" }, { "codeName": "bitmex", "iconName": "bitmex" }, { - "codeName": "liquid", - "iconName": "liquid" + "codeName": "bittrex", + "iconName": "bittrex" + }, + { + "codeName": "coinbasepro", + "iconName": "coinbasepro" + }, + { + "codeName": "ftx", + "iconName": "ftx" }, { "codeName": "hitbtc", "iconName": "hitbtc" }, + { + "codeName": "kraken", + "iconName": "kraken" + }, + { + "codeName": "kucoin", + "iconName": "kucoin" + }, + { + "codeName": "liquid", + "iconName": "liquid" + }, { "codeName": "luno", "iconName": "luno" }, + { + "codeName": "lykke", + "iconName": "lykke" + }, { "codeName": "okex", "iconName": "okex" @@ -137,8 +137,12 @@ "iconName": "okex" }, { - "codeName": "ftx", - "iconName": "ftx" + "codeName": "poloniex", + "iconName": "poloniex" + }, + { + "codeName": "upbit", + "iconName": "upbit" } ] } \ No newline at end of file From 6e178fe3ec8614102f940ccdb36628729a9f073f Mon Sep 17 00:00:00 2001 From: Smidy13 <77650800+Smidy13@users.noreply.github.com> Date: Wed, 23 Jun 2021 23:13:56 +1200 Subject: [PATCH 2/3] Bug Fix: Accept Empty OHLCV if at the Current Minute --- .../Sensor-Bot/Exchange-Raw-Data/HistoricOHLCVs.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/HistoricOHLCVs.js b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/HistoricOHLCVs.js index 9feb26e82..a1f6f0253 100644 --- a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/HistoricOHLCVs.js +++ b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/HistoricOHLCVs.js @@ -418,18 +418,21 @@ await exchange.fetchOHLCV(symbol, '1m', since, limit, params) - if (OHLCVs.length === 0) { + if (OHLCVs.length === 0 && new Date(since).valueOf() !== (new Date).setSeconds(0,0)) { + /* - If OHLCVs is empty we might be dealing with extended maintenance longer than our OHLCV limit. + If OHLCVs is empty and we're not at the current minute we might + be dealing with extended maintenance longer than our OHLCV limit. If this is the case jump forward to the next valid OHLCV record. */ + since = await findNextValidOHLCV() } /* CCXT for certain Exchanges will return an empty or partial array if the since date is too far in the past if this occurs this function will recursively step backwards in the Exchange - and Market in 1D intervals until it finds the earliest date with values. + and Market in 1D intervals until it finds the earliest date with values. */ async function findMarketStart() { From 32b123123acb514093d543f97a66022f52336dde Mon Sep 17 00:00:00 2001 From: Smidy13 <77650800+Smidy13@users.noreply.github.com> Date: Wed, 23 Jun 2021 23:15:56 +1200 Subject: [PATCH 3/3] Dependency Update: CCXT from v1.51.61 to v1.51.91 --- Client/package-lock.json | 6 +++--- Client/package.json | 2 +- .../Sensor-Bot/Exchange-Raw-Data/package-lock.json | 6 +++--- .../Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package.json | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Client/package-lock.json b/Client/package-lock.json index 618d94891..60e30b133 100644 --- a/Client/package-lock.json +++ b/Client/package-lock.json @@ -915,9 +915,9 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "ccxt": { - "version": "1.51.61", - "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.51.61.tgz", - "integrity": "sha512-ywz04QrqU4qW07i1mzhlF1yv6p2hs37ndYqYG9R5Fln1FUHXfxiwnCbBK3LOdYeal7fdT8lGUCqL6LCEXgtjcQ==" + "version": "1.51.91", + "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.51.91.tgz", + "integrity": "sha512-pomtW3aDy7oSOm+Y9XP4WAkPPx9oZNGjhzwPEXyMrNKsVrc7+deVq07rIS+m5UHUkRel6a4U2hUwnWHOxAQMuQ==" }, "child_process": { "version": "1.0.2", diff --git a/Client/package.json b/Client/package.json index 6bc30f8eb..913d92435 100644 --- a/Client/package.json +++ b/Client/package.json @@ -8,7 +8,7 @@ }, "dependencies": { "@octokit/rest": "^18.0.12", - "ccxt": "^1.51.61", + "ccxt": "^1.51.91", "child_process": "^1.0.2", "open": "^6.4.0", "rimraf": "^3.0.2", diff --git a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package-lock.json b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package-lock.json index 7c43a4b64..c92c4f8d6 100644 --- a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package-lock.json +++ b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "ccxt": { - "version": "1.51.61", - "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.51.61.tgz", - "integrity": "sha512-ywz04QrqU4qW07i1mzhlF1yv6p2hs37ndYqYG9R5Fln1FUHXfxiwnCbBK3LOdYeal7fdT8lGUCqL6LCEXgtjcQ==" + "version": "1.51.91", + "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.51.91.tgz", + "integrity": "sha512-pomtW3aDy7oSOm+Y9XP4WAkPPx9oZNGjhzwPEXyMrNKsVrc7+deVq07rIS+m5UHUkRel6a4U2hUwnWHOxAQMuQ==" } } } diff --git a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package.json b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package.json index 0d7450775..5649ee9be 100644 --- a/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package.json +++ b/Projects/Foundations/TS/Bot-Modules/Sensor-Bot/Exchange-Raw-Data/package.json @@ -7,6 +7,6 @@ "name": "Luis-Fernando-Molina" }, "dependencies": { - "ccxt": "^1.51.61" + "ccxt": "^1.51.91" } }