From 1367c439911561925a1e3c163120303a73ab37f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Apr 2023 03:56:32 +0000 Subject: [PATCH 001/171] build(deps): bump node from 19.9.0-alpine to 20.0.0-alpine Bumps node from 19.9.0-alpine to 20.0.0-alpine. --- updated-dependencies: - dependency-name: node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e370de19..965e753b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:19.9.0-alpine as ui-builder +FROM node:20.0.0-alpine as ui-builder RUN mkdir /app From 66758de2b603d127b5258e1c446cd4bc7d8640e7 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 11:55:18 +0200 Subject: [PATCH 002/171] script setup: Balancecharts --- src/components/charts/BalanceChart.vue | 108 +++++++++++-------------- 1 file changed, 49 insertions(+), 59 deletions(-) diff --git a/src/components/charts/BalanceChart.vue b/src/components/charts/BalanceChart.vue index deabbd7c..147a789f 100644 --- a/src/components/charts/BalanceChart.vue +++ b/src/components/charts/BalanceChart.vue @@ -1,5 +1,5 @@ - From a75a6e2882fab54af4686262d0ff566f5bc0fd0e Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 14:29:44 +0200 Subject: [PATCH 003/171] script setup: botcomparisonlist --- src/components/ftbot/BotComparisonList.vue | 125 +++++++++------------ 1 file changed, 56 insertions(+), 69 deletions(-) diff --git a/src/components/ftbot/BotComparisonList.vue b/src/components/ftbot/BotComparisonList.vue index 62d6f1a1..367411f1 100644 --- a/src/components/ftbot/BotComparisonList.vue +++ b/src/components/ftbot/BotComparisonList.vue @@ -52,86 +52,73 @@ - From 1653386da964125f4da4e41c78866744f40c396a Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 14:30:31 +0200 Subject: [PATCH 004/171] Properly sort bots for dashboard --- src/shared/userService.ts | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/shared/userService.ts b/src/shared/userService.ts index 04957983..03899612 100644 --- a/src/shared/userService.ts +++ b/src/shared/userService.ts @@ -99,14 +99,17 @@ export class UserService { public static getAvailableBots(): BotDescriptors { const allInfo = UserService.getAllLoginInfos(); const response: BotDescriptors = {}; - Object.entries(allInfo).forEach(([k, v], idx) => { - response[k] = { - botId: k, - botName: v.botName, - botUrl: v.apiUrl, - sortId: v.sortId ?? idx, - }; - }); + Object.keys(allInfo) + .sort((a, b) => (allInfo[a].sortId ?? 0) - (allInfo[b].sortId ?? 0)) + .forEach((k, idx) => { + response[k] = { + botId: k, + botName: allInfo[k].botName, + botUrl: allInfo[k].apiUrl, + sortId: allInfo[k].sortId ?? idx, + }; + }); + return response; } From 5378d651e7889b6fbdfe077556741c19192b45ac Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 14:35:05 +0200 Subject: [PATCH 005/171] Fix type issue with chart --- src/components/charts/BalanceChart.vue | 2 +- src/types/balance.ts | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/components/charts/BalanceChart.vue b/src/components/charts/BalanceChart.vue index 147a789f..0cfe11c9 100644 --- a/src/components/charts/BalanceChart.vue +++ b/src/components/charts/BalanceChart.vue @@ -53,7 +53,7 @@ const balanceChartOptions = computed((): EChartsOption => { backgroundColor: 'rgba(0, 0, 0, 0)', dataset: { dimensions: ['balance', 'currency', 'est_stake', 'free', 'used', 'stake'], - source: props.currencies, + source: props.currencies as unknown[] as Record[], }, tooltip: { trigger: 'item', diff --git a/src/types/balance.ts b/src/types/balance.ts index 6f75b1a0..a561ea61 100644 --- a/src/types/balance.ts +++ b/src/types/balance.ts @@ -1,5 +1,4 @@ export interface BalanceRecords { - [key: string]: string | number; balance: number; currency: string; est_stake: number; @@ -7,11 +6,11 @@ export interface BalanceRecords { used: number; stake: string; // Properties added in v 2.x - // Temporarily disabled to fix type errors - // side: string; - // leverage: number; - // is_position: boolean; - // position: number; + side: string; + leverage: number; + is_position: boolean; + position: number; + bot_managed?: boolean; } export interface BalanceInterface { From 1fd35a90b7d8e9e9146aac83a60047d709cda2c6 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 14:36:06 +0200 Subject: [PATCH 006/171] Improved typesafety --- src/components/charts/BalanceChart.vue | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/components/charts/BalanceChart.vue b/src/components/charts/BalanceChart.vue index 0cfe11c9..68c9b20e 100644 --- a/src/components/charts/BalanceChart.vue +++ b/src/components/charts/BalanceChart.vue @@ -53,7 +53,16 @@ const balanceChartOptions = computed((): EChartsOption => { backgroundColor: 'rgba(0, 0, 0, 0)', dataset: { dimensions: ['balance', 'currency', 'est_stake', 'free', 'used', 'stake'], - source: props.currencies as unknown[] as Record[], + source: props.currencies.map((currency) => { + return { + balance: currency.balance, + currency: currency.currency, + est_stake: currency.est_stake, + free: currency.free, + used: currency.used, + stake: currency.stake, + }; + }), }, tooltip: { trigger: 'item', From c65ed7bc7903d144316cb310e4543722cf919594 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 14:39:50 +0200 Subject: [PATCH 007/171] Format balance chart by stakeCurrencyDecimals --- src/components/ftbot/BotBalance.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/ftbot/BotBalance.vue b/src/components/ftbot/BotBalance.vue index 38f923b6..33b8408a 100644 --- a/src/components/ftbot/BotBalance.vue +++ b/src/components/ftbot/BotBalance.vue @@ -68,7 +68,7 @@ const balanceCurrencies = computed(() => { }); const formatCurrency = (value) => { - return value ? formatPrice(value, 5) : ''; + return value ? formatPrice(value, botStore.activeBot.stakeCurrencyDecimals) : ''; }; const tableFields = computed(() => { From 502bb701abd795b5334fcdf8d2bc11b89d88e931 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 22 Apr 2023 17:10:22 +0200 Subject: [PATCH 008/171] Allow showing/hiding Balance closes #1205 --- src/components/ftbot/BotBalance.vue | 47 +++++++++++++++++++++-------- src/types/balance.ts | 12 ++++++-- 2 files changed, 44 insertions(+), 15 deletions(-) diff --git a/src/components/ftbot/BotBalance.vue b/src/components/ftbot/BotBalance.vue index 33b8408a..c0a4bfd3 100644 --- a/src/components/ftbot/BotBalance.vue +++ b/src/components/ftbot/BotBalance.vue @@ -4,8 +4,17 @@
+ + + + @@ -36,7 +45,11 @@ - {{ formatCurrency(botStore.activeBot.balance.total) }} + {{ + showBotOnly + ? formatCurrency(botStore.activeBot.balance.total_bot) + : formatCurrency(botStore.activeBot.balance.total) + }} @@ -47,36 +60,46 @@ + + diff --git a/src/components/ftbot/BacktestResultView.vue b/src/components/ftbot/BacktestResultView.vue index 96955ce1..078263ed 100644 --- a/src/components/ftbot/BacktestResultView.vue +++ b/src/components/ftbot/BacktestResultView.vue @@ -46,27 +46,12 @@ - - - + @@ -84,8 +69,9 @@ From 7e91ed5b8e48a853ca5d761c0faf1ef32ec536cf Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 4 May 2023 19:57:12 +0200 Subject: [PATCH 064/171] Sort imports --- src/components/charts/CandleChartContainer.vue | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/components/charts/CandleChartContainer.vue b/src/components/charts/CandleChartContainer.vue index 1f48f22d..70070571 100644 --- a/src/components/charts/CandleChartContainer.vue +++ b/src/components/charts/CandleChartContainer.vue @@ -85,16 +85,16 @@ diff --git a/src/components/charts/PlotConfigurator.vue b/src/components/charts/PlotConfigurator.vue index cf464548..c084ee19 100644 --- a/src/components/charts/PlotConfigurator.vue +++ b/src/components/charts/PlotConfigurator.vue @@ -1,7 +1,7 @@ diff --git a/src/components/charts/PlotIndicatorSelect.vue b/src/components/charts/PlotIndicatorSelect.vue index 22ec918d..6212a162 100644 --- a/src/components/charts/PlotIndicatorSelect.vue +++ b/src/components/charts/PlotIndicatorSelect.vue @@ -1,6 +1,7 @@ From 1dd5a3bfdae55f9015607c318b7c611a6e41e9bd Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 6 May 2023 17:37:36 +0200 Subject: [PATCH 091/171] Cleanup unused / comented code --- src/components/charts/PlotIndicatorSelect.vue | 27 ------------------- 1 file changed, 27 deletions(-) diff --git a/src/components/charts/PlotIndicatorSelect.vue b/src/components/charts/PlotIndicatorSelect.vue index 6212a162..f9668258 100644 --- a/src/components/charts/PlotIndicatorSelect.vue +++ b/src/components/charts/PlotIndicatorSelect.vue @@ -1,25 +1,6 @@ + + - diff --git a/src/components/ftbot/TradeDetail.vue b/src/components/ftbot/TradeDetail.vue index bd86114a..fb536dd1 100644 --- a/src/components/ftbot/TradeDetail.vue +++ b/src/components/ftbot/TradeDetail.vue @@ -128,25 +128,16 @@
- diff --git a/src/views/TradesList.vue b/src/views/TradesList.vue index 8d7cb640..57c3322e 100644 --- a/src/views/TradesList.vue +++ b/src/views/TradesList.vue @@ -40,29 +40,15 @@ - From 85820c8684a1c6c1dc3fb13dc744eff6489469f3 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 9 May 2023 20:04:57 +0200 Subject: [PATCH 128/171] More components to script setup --- src/App.vue | 31 +-- src/components/charts/TradesLog.vue | 251 +++++++++--------- src/components/ftbot/BacktestHistoryLoad.vue | 19 +- src/components/ftbot/BacktestResultSelect.vue | 31 +-- src/components/ftbot/BotControls.vue | 131 ++++----- src/components/ftbot/BotPerformance.vue | 37 +-- src/components/ftbot/CustomTradeList.vue | 96 +++---- src/components/ftbot/CustomTradeListEntry.vue | 38 +-- src/components/ftbot/DailyStats.vue | 67 ++--- src/components/ftbot/FTBotAPIPairList.vue | 105 ++++---- 10 files changed, 338 insertions(+), 468 deletions(-) diff --git a/src/App.vue b/src/App.vue index 476bc959..c05c42fd 100644 --- a/src/App.vue +++ b/src/App.vue @@ -6,31 +6,24 @@ - diff --git a/src/components/ftbot/BotControls.vue b/src/components/ftbot/BotControls.vue index 21907ffe..b5bd0ba4 100644 --- a/src/components/ftbot/BotControls.vue +++ b/src/components/ftbot/BotControls.vue @@ -64,87 +64,68 @@ forceexit - diff --git a/src/components/ftbot/BotPerformance.vue b/src/components/ftbot/BotPerformance.vue index 9b992738..0fcfaf70 100644 --- a/src/components/ftbot/BotPerformance.vue +++ b/src/components/ftbot/BotPerformance.vue @@ -11,32 +11,23 @@ - diff --git a/src/components/ftbot/CustomTradeList.vue b/src/components/ftbot/CustomTradeList.vue index 5a57da31..9b9d3425 100644 --- a/src/components/ftbot/CustomTradeList.vue +++ b/src/components/ftbot/CustomTradeList.vue @@ -33,70 +33,50 @@ - From 88bd3a781a5ce16e376aceb38b139a0082e3aa24 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 9 May 2023 20:07:05 +0200 Subject: [PATCH 130/171] Cleanup missing lang settings --- src/components/general/InfoBox.vue | 2 +- src/views/Error404View.vue | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/components/general/InfoBox.vue b/src/components/general/InfoBox.vue index 9a9de4a7..b94319c3 100644 --- a/src/components/general/InfoBox.vue +++ b/src/components/general/InfoBox.vue @@ -4,7 +4,7 @@ - - - From 90a08b7a339a2c04891df6e69b1c272ae1600f19 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 9 May 2023 20:23:15 +0200 Subject: [PATCH 131/171] Use proper icons instead of refresh symbol --- src/components/charts/CandleChartContainer.vue | 4 +++- src/components/charts/PlotIndicator.vue | 4 +++- src/components/ftbot/BacktestHistoryLoad.vue | 2 +- src/components/ftbot/BotBalance.vue | 6 +++--- src/components/ftbot/DailyStats.vue | 4 +++- src/components/ftbot/FreqaiModelSelect.vue | 4 +++- src/components/ftbot/LogViewer.vue | 4 +++- src/components/ftbot/PairLockList.vue | 4 +++- src/components/ftbot/StrategySelect.vue | 4 +++- 9 files changed, 25 insertions(+), 11 deletions(-) diff --git a/src/components/charts/CandleChartContainer.vue b/src/components/charts/CandleChartContainer.vue index 70070571..590cb60f 100644 --- a/src/components/charts/CandleChartContainer.vue +++ b/src/components/charts/CandleChartContainer.vue @@ -15,7 +15,9 @@ > - + + + Long signals: {{ dataset.enter_long_signals || dataset.buy_signals }} diff --git a/src/components/charts/PlotIndicator.vue b/src/components/charts/PlotIndicator.vue index 0bcaaa22..99ef193e 100644 --- a/src/components/charts/PlotIndicator.vue +++ b/src/components/charts/PlotIndicator.vue @@ -17,7 +17,9 @@ - + + + diff --git a/src/components/ftbot/BacktestHistoryLoad.vue b/src/components/ftbot/BacktestHistoryLoad.vue index fcaa594d..e1c01cab 100644 --- a/src/components/ftbot/BacktestHistoryLoad.vue +++ b/src/components/ftbot/BacktestHistoryLoad.vue @@ -6,7 +6,7 @@ aria-label="Refresh" @click="botStore.activeBot.getBacktestHistory" > - ↻ +

Load Historic results from disk. You can click on multiple results to load all of them into diff --git a/src/components/ftbot/BotBalance.vue b/src/components/ftbot/BotBalance.vue index 5fbffb9e..37463fd4 100644 --- a/src/components/ftbot/BotBalance.vue +++ b/src/components/ftbot/BotBalance.vue @@ -21,9 +21,9 @@ - + + + diff --git a/src/components/ftbot/DailyStats.vue b/src/components/ftbot/DailyStats.vue index 8ddb4a39..e2c7cc00 100644 --- a/src/components/ftbot/DailyStats.vue +++ b/src/components/ftbot/DailyStats.vue @@ -2,7 +2,9 @@

- + + +
- + + +
diff --git a/src/components/ftbot/LogViewer.vue b/src/components/ftbot/LogViewer.vue index 80bb0df8..dbf38b37 100644 --- a/src/components/ftbot/LogViewer.vue +++ b/src/components/ftbot/LogViewer.vue @@ -1,7 +1,9 @@ diff --git a/src/components/ftbot/PairLockList.vue b/src/components/ftbot/PairLockList.vue index 6eb2390e..dc0e3a13 100644 --- a/src/components/ftbot/PairLockList.vue +++ b/src/components/ftbot/PairLockList.vue @@ -2,7 +2,9 @@
- + + +
diff --git a/src/components/ftbot/StrategySelect.vue b/src/components/ftbot/StrategySelect.vue index 9b0ba884..ada8f7ed 100644 --- a/src/components/ftbot/StrategySelect.vue +++ b/src/components/ftbot/StrategySelect.vue @@ -8,7 +8,9 @@ >
- + + +
From db03cc993a62d82bca0b02b01ea53a24155fc5fc Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 9 May 2023 20:31:33 +0200 Subject: [PATCH 132/171] Use Iconlibrary throughout --- src/components/charts/CandleChartContainer.vue | 2 +- src/components/ftbot/FTBotAPIPairList.vue | 13 +++++++------ src/components/ftbot/PairSummary.vue | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/components/charts/CandleChartContainer.vue b/src/components/charts/CandleChartContainer.vue index 590cb60f..e6876b1c 100644 --- a/src/components/charts/CandleChartContainer.vue +++ b/src/components/charts/CandleChartContainer.vue @@ -42,7 +42,7 @@
- ⚙ +
diff --git a/src/components/ftbot/FTBotAPIPairList.vue b/src/components/ftbot/FTBotAPIPairList.vue index fb553ae6..e7b4f048 100644 --- a/src/components/ftbot/FTBotAPIPairList.vue +++ b/src/components/ftbot/FTBotAPIPairList.vue @@ -33,7 +33,7 @@ class="me-1" :class="botStore.activeBot.botApiVersion >= 1.12 ? 'col-6' : ''" size="sm" - >+ + > {{ pair }}{{ pair }} @@ -149,14 +149,15 @@ onMounted(() => { diff --git a/src/components/ftbot/TradeActionsPopover.vue b/src/components/ftbot/TradeActionsPopover.vue index 3e30e90a..885a8a8b 100644 --- a/src/components/ftbot/TradeActionsPopover.vue +++ b/src/components/ftbot/TradeActionsPopover.vue @@ -8,21 +8,31 @@ defineProps({ id: { type: Number, required: true }, botApiVersion: { type: Number, required: true }, }); -const emit = defineEmits(['forceExit', 'forceExitPartial', 'cancelOpenOrder', 'deleteTrade']); +const emit = defineEmits([ + 'forceExit', + 'forceExitPartial', + 'cancelOpenOrder', + 'reloadTrade', + 'deleteTrade', +]); const popoverOpen = ref(false); -const forceExitHandler = (item: Trade, ordertype: string | undefined = undefined) => { +function forceExitHandler(item: Trade, ordertype: string | undefined = undefined) { popoverOpen.value = false; emit('forceExit', item, ordertype); -}; -const forceExitPartialHandler = (item: Trade) => { +} +function forceExitPartialHandler(item: Trade) { popoverOpen.value = false; emit('forceExitPartial', item); -}; -const cancelOpenOrderHandler = (item: Trade) => { +} +function cancelOpenOrderHandler(item: Trade) { popoverOpen.value = false; emit('cancelOpenOrder', item); -}; +} +function handleReloadTrade(item: Trade) { + popoverOpen.value = false; + emit('reloadTrade', item); +}