# Changelog

Tutte le modifiche significative a TradingBot sono documentate qui.

Formato basato su [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), segue [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

---

## [1.3.0] - 2024-12-21

### Added
- **Logs Page**: Comprehensive logging system with real-time monitoring
  - Real-time log updates with auto-scroll
  - Advanced filtering (Level, Category, Symbol)
  - Color-coded log levels (Debug, Info, Warning, Error, Trade)
  - Trade-specific logs with detailed information
  - 500 log entries buffer with automatic rotation
  - Clear logs functionality
- **LoggingService**: Centralized logging management
  - Structured log entries with timestamps
  - Category and symbol-based filtering
  - Event-driven updates for real-time UI
- **Enhanced TradingBotService**: Integrated logging
  - Bot lifecycle events (start/stop)
  - Trade execution logs (buy/sell)
  - Detailed trade information in logs

### Changed
- MainLayout updated with Logs navigation item
- TradingBotService now logs all major operations

---

## [1.2.0] - 2024-12-21

### Added
- **Trade Persistence**: Complete persistence system for trade history and active positions
  - TradeHistoryService for JSON-based data storage
  - Automatic save every 30 seconds
  - Immediate save after each trade execution
  - Automatic data restore on application startup
- **Data Management UI**: Settings page section for persistent data management
  - View trade count and data size
  - View active positions count
  - Clear all data functionality with confirmation modal
- **Graceful Shutdown**: TradingBotBackgroundService for data persistence on application exit
  - Automatic save on container stop/restart
  - No data loss on unexpected shutdowns

### Changed
- TradingBotService now integrates with TradeHistoryService
- Buy/Sell methods are now async to support immediate persistence
- Settings page enhanced with data management section

### Technical
- Data stored in `/app/data` directory
- JSON format for human-readable persistence
- Compatible with Docker volume mapping
- Background service registered as IHostedService

---

## [1.1.0] - 2024-12-17

### Added
- **Automated Deployment**: MSBuild post-build per push automatico su Gitea Registry
- **Multiple Docker Tags**: latest, version, version-date per ogni release
- **Versioning System**: Script PowerShell `bump-version.ps1` per gestione versioni
- **Unraid Support**: Template XML per installazione 1-click
- **Documentation**: Guide complete per deployment e versioning

### Changed
- Riorganizzata struttura progetto (`/deployment`, `/docs`)
- Default WebUI port cambiato da 8080 a 8888
- Health check timing aumentato a 40s per startup Blazor

### Fixed
- WebUI icon non visibile in Unraid Docker tab
- Port mapping non configurabile in template
- Template URL path corretto

---

## [1.0.0] - 2024-12-15

### Added
- **Initial Release** di TradingBot
- Blazor Server UI con dashboard real-time
- Simple Moving Average (SMA) trading strategy
- 15 criptovalute supportate
- Simulazione market data per testing
- Trade history e statistics
- Settings persistenti via JSON
- Indicatori tecnici: SMA, EMA, RSI, MACD, Bollinger Bands
- Docker support con multi-stage build
- Health checks integrati

---

## Version Legend

- **Added**: Nuove features
- **Changed**: Modifiche a funzionalitą esistenti
- **Deprecated**: Features da rimuovere
- **Removed**: Features rimosse
- **Fixed**: Bug fixes
- **Security**: Security fixes
- **Technical**: Miglioramenti tecnici e infrastrutturali

---

[1.3.0]: https://gitea.encke-hake.ts.net/Alby96/Encelado/compare/v1.2.0...v1.3.0
[1.2.0]: https://gitea.encke-hake.ts.net/Alby96/Encelado/compare/v1.1.0...v1.2.0
[1.1.0]: https://gitea.encke-hake.ts.net/Alby96/Encelado/compare/v1.0.0...v1.1.0
[1.0.0]: https://gitea.encke-hake.ts.net/Alby96/Encelado/releases/tag/v1.0.0
