docs: Update copilot-instructions with manual trade filtering

- Added signalSource field documentation
- Emphasized CRITICAL exclusion from TradingView indicator analysis
- Reference to MANUAL_TRADE_FILTERING.md for SQL queries
- Manual Trading via Telegram section updated with contamination warning
This commit is contained in:
mindesbunister
2025-11-14 22:58:01 +01:00
parent 25776413d0
commit a9ed814960

View File

@@ -63,7 +63,7 @@
**MAE/MFE Tracking:** Every trade tracks Maximum Favorable Excursion (best profit %) and Maximum Adverse Excursion (worst loss %) updated every 2s. Used for data-driven optimization of TP/SL levels. **MAE/MFE Tracking:** Every trade tracks Maximum Favorable Excursion (best profit %) and Maximum Adverse Excursion (worst loss %) updated every 2s. Used for data-driven optimization of TP/SL levels.
**Manual Trading via Telegram:** Send plain-text messages like `long sol`, `short eth`, `long btc` to open positions instantly (bypasses n8n, calls `/api/trading/execute` directly with preset healthy metrics). **Manual Trading via Telegram:** Send plain-text messages like `long sol`, `short eth`, `long btc` to open positions instantly (bypasses n8n, calls `/api/trading/execute` directly with preset healthy metrics). **CRITICAL:** Manual trades are marked with `signalSource='manual'` and excluded from TradingView indicator analysis (prevents data contamination).
**Re-Entry Analytics System:** Manual trades are validated before execution using fresh TradingView data: **Re-Entry Analytics System:** Manual trades are validated before execution using fresh TradingView data:
- Market data cached from TradingView signals (5min expiry) - Market data cached from TradingView signals (5min expiry)
@@ -630,6 +630,10 @@ Without this, order cancellations fail silently during TP1→breakeven order upd
- `getBlockedSignalsForAnalysis()` - Fetch signals needing price analysis (future automation) - `getBlockedSignalsForAnalysis()` - Fetch signals needing price analysis (future automation)
**Important fields:** **Important fields:**
- `signalSource` (String?) - Identifies trade origin: 'tradingview', 'manual', or NULL (old trades)
- **CRITICAL:** Manual Telegram trades are marked `signalSource='manual'` and excluded from TradingView indicator analysis
- Use filter: `WHERE ("signalSource" IS NULL OR "signalSource" != 'manual')` for indicator optimization queries
- See `docs/MANUAL_TRADE_FILTERING.md` for complete SQL filtering guide
- `signalQualityScore` (Int?) - 0-100 score for data-driven optimization - `signalQualityScore` (Int?) - 0-100 score for data-driven optimization
- `signalQualityVersion` (String?) - Tracks which scoring logic was used ('v1', 'v2', 'v3', 'v4') - `signalQualityVersion` (String?) - Tracks which scoring logic was used ('v1', 'v2', 'v3', 'v4')
- v1: Original logic (price position < 5% threshold) - v1: Original logic (price position < 5% threshold)