Improve indicators panel and fix data collector startup

Dashboard:
- Add indicator checkboxes with multi-select support
- Show color dots for each plot group in indicator list
- Config panel always visible with helpful empty state message
- Support multi-color indicators (HTS shows Fast/Slow colors)
- Add line type selector (solid/dotted/dashed) and line width
- Combine SMA/EMA into unified MA indicator with type selector

Data Collector:
- Fix missing asyncio import in database.py (caused NameError on timeout)
- Add startup backfill for all standard intervals on collector restart
- Add gap detection + time-based backfill for robustness
- Add backfill_gap.py tool for manual gap filling
- Optimize custom timeframe generation to only generate missing candles (not all from beginning)

Files changed:
- src/api/dashboard/static/js/ui/indicators-panel.js
- src/api/dashboard/static/js/indicators/index.js, ma_indicator.js
- src/api/dashboard/static/js/strategies/config.js
- src/api/dashboard/static/js/ui/chart.js
- src/api/dashboard/static/js/app.js
- src/api/dashboard/static/index.html
- src/data_collector/database.py
- src/data_collector/main.py
- src/data_collector/custom_timeframe_generator.py
- src/data_collector/backfill_gap.py (new)
This commit is contained in:
BTC Bot
2026-02-24 10:21:41 +01:00
parent 09ec51c185
commit 610911bca0
11 changed files with 733 additions and 109 deletions

View File

@ -1,8 +1,7 @@
export { MA } from './ma.js';
export { BaseIndicator } from './base.js';
export { HTSIndicator } from './hts.js';
export { SMAIndicator } from './sma.js';
export { EMAIndicator } from './ema.js';
export { MAIndicator } from './ma_indicator.js';
export { RSIIndicator } from './rsi.js';
export { BollingerBandsIndicator } from './bb.js';
export { MACDIndicator } from './macd.js';
@ -10,8 +9,7 @@ export { StochasticIndicator } from './stoch.js';
export { ATRIndicator } from './atr.js';
import { HTSIndicator } from './hts.js';
import { SMAIndicator } from './sma.js';
import { EMAIndicator } from './ema.js';
import { MAIndicator } from './ma_indicator.js';
import { RSIIndicator } from './rsi.js';
import { BollingerBandsIndicator } from './bb.js';
import { MACDIndicator } from './macd.js';
@ -20,8 +18,7 @@ import { ATRIndicator } from './atr.js';
export const IndicatorRegistry = {
hts: HTSIndicator,
sma: SMAIndicator,
ema: EMAIndicator,
ma: MAIndicator,
rsi: RSIIndicator,
bb: BollingerBandsIndicator,
macd: MACDIndicator,