show indicator params like MA(44) in active list and analysis panel
This commit is contained in:
@ -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 `
|
||||
<div class="ta-ma-row" style="border-bottom: none; padding: 6px 0; align-items: center;">
|
||||
<span class="ta-ma-label">${indSignal.name} ${paramsStr}</span>
|
||||
<span class="ta-ma-label">${indSignal.name}${paramsStr}</span>
|
||||
<span class="ta-ma-value" style="display: flex; align-items: center; gap: 8px;">
|
||||
<span style="font-size: 11px; padding: 2px 8px; min-width: 60px; text-align: center; background: ${signalColor}; color: white; border-radius: 3px;">${signalIcon} ${indSignal.signal.toUpperCase()}</span>
|
||||
<span style="font-size: 10px; color: var(--tv-text-secondary);">${lastSignalDate}</span>
|
||||
|
||||
@ -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;
|
||||
}
|
||||
|
||||
@ -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,
|
||||
|
||||
Reference in New Issue
Block a user