From c2f92cc5fbd60318ef43d7bfde6686f7eb6c138d Mon Sep 17 00:00:00 2001 From: DiTus Date: Mon, 2 Mar 2026 10:36:03 +0100 Subject: [PATCH] show indicator params like MA(44) in active list and analysis panel --- src/api/dashboard/static/js/ui/chart.js | 13 +++++++++++-- .../dashboard/static/js/ui/indicators-panel-new.js | 8 ++++---- .../dashboard/static/js/ui/signals-calculator.js | 4 ++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/api/dashboard/static/js/ui/chart.js b/src/api/dashboard/static/js/ui/chart.js index 6b723ae..6b28710 100644 --- a/src/api/dashboard/static/js/ui/chart.js +++ b/src/api/dashboard/static/js/ui/chart.js @@ -605,11 +605,20 @@ renderTA() { const signalIcon = indSignal.signal === 'buy' ? '🟢' : indSignal.signal === 'sell' ? '🔴' : '⚪'; const signalColor = indSignal.signal === 'buy' ? '#26a69a' : indSignal.signal === 'sell' ? '#ef5350' : '#787b86'; const lastSignalDate = indSignal.lastSignalDate ? formatDate(indSignal.lastSignalDate * 1000) : '-'; - const paramsStr = indSignal.params ? `(${indSignal.params})` : ''; + + // Format params as "MA(44)" style + let paramsStr = ''; + if (indSignal.params) { + const paramPairs = indSignal.params.split(',').map(p => { + const [key, val] = p.split('='); + return key === 'period' || key === 'maType' ? val : `${key}:${val}`; + }); + paramsStr = `(${paramPairs.join(',')})`; + } return `
- ${indSignal.name} ${paramsStr} + ${indSignal.name}${paramsStr} ${signalIcon} ${indSignal.signal.toUpperCase()} ${lastSignalDate} diff --git a/src/api/dashboard/static/js/ui/indicators-panel-new.js b/src/api/dashboard/static/js/ui/indicators-panel-new.js index 9bacdac..f417e49 100644 --- a/src/api/dashboard/static/js/ui/indicators-panel-new.js +++ b/src/api/dashboard/static/js/ui/indicators-panel-new.js @@ -49,14 +49,14 @@ function getIndicatorLabel(indicator) { const meta = getIndicatorMeta(indicator); if (!meta) return indicator.name; + // Always show params in parentheses (e.g., "MA(44)" or "MA(SMA,44)") const paramParts = meta.inputs.map(input => { const val = indicator.params[input.name]; - if (val !== undefined && val !== input.default) return val; - return null; - }).filter(v => v !== null); + return val !== undefined ? val : input.default; + }); if (paramParts.length > 0) { - return `${indicator.name} (${paramParts.join(', ')})`; + return `${indicator.name}(${paramParts.join(',')})`; } return indicator.name; } diff --git a/src/api/dashboard/static/js/ui/signals-calculator.js b/src/api/dashboard/static/js/ui/signals-calculator.js index 711dd3d..80abe59 100644 --- a/src/api/dashboard/static/js/ui/signals-calculator.js +++ b/src/api/dashboard/static/js/ui/signals-calculator.js @@ -311,8 +311,8 @@ export function calculateAllIndicatorSignals() { params: indicator.params && typeof indicator.params === 'object' ? Object.entries(indicator.params) .filter(([k, v]) => !k.startsWith('_') && v !== undefined && v !== null) - .map(([k, v]) => `${k}=${v}`) - .join(', ') + .map(([k, v]) => `${v}`) + .join(',') : null, type: indicator.type, signal: currentSignal.type,