Signal Generation
Overviewโ
The signal generation module produces actionable trading plans delivered to consumers daily. Signals are constrained by strict risk management rules.
Constraintsโ
| Rule | Value | Rationale |
|---|---|---|
| Max signals per day | 3 | Quality over quantity |
| Max hold time | 30 minutes | Scalping/day-trade focus |
| Execution | Manual | Human confirms and executes |
| Min confluence score | 0.65 | High-probability setups only |
Signal Structureโ
Each signal contains:
interface TradingSignal {
// Identification
id: string;
timestamp: string;
pair: string;
// Direction
direction: 'BUY' | 'SELL';
// Levels
entry_price: number;
stop_loss: number;
take_profit: number;
// Meta
confidence: number; // 0.0 - 1.0
reasoning: string[]; // List of confirming factors
time_window: string; // Optimal entry window
max_hold_minutes: number; // Always โค 30
// Risk
risk_reward_ratio: number; // Minimum 1:1.5
position_size_pct: number; // % of capital suggested
}
Daily Plan Formatโ
Delivered each trading day before market open:
## ๐ Daily Trading Plan โ 2026-07-16
### Market Bias
- EUR/USD: Bullish (1H EMA trend up)
- GBP/USD: Neutral (ranging)
### Signals (Max 3)
#### Signal 1: EUR/USD BUY
- **Entry**: 1.0892 (on pullback to VWAP)
- **Stop Loss**: 1.0875 (-17 pips)
- **Take Profit**: 1.0920 (+28 pips)
- **R:R**: 1:1.65
- **Window**: 09:00-09:30 UTC
- **Confidence**: 82%
- **Reasoning**:
- Bullish engulfing on 5m
- RSI bouncing from 35
- VWAP support holding
- London session momentum
#### Signal 2: ...
### Key Levels to Watch
- EUR/USD: Support 1.0870, Resistance 1.0935
- GBP/USD: Support 1.2640, Resistance 1.2710
### Risk Notes
- โ ๏ธ NFP data release at 13:30 UTC โ avoid new positions 30min before
- Volume expected to increase London/NY overlap (13:00-16:00 UTC)
Delivery Channelsโ
| Channel | Method | Timing |
|---|---|---|
| Discord | Webhook/Bot message | Pre-market (06:00 UTC) |
| API | REST endpoint | On-demand |
| SMTP notification | Optional digest |
Signal Validation Rulesโ
Before a signal is emitted, it must pass:
- Confluence check โ Score โฅ 0.65
- Risk/Reward check โ R:R โฅ 1:1.5
- Time filter โ Within active session hours
- Correlation filter โ No conflicting signals on correlated pairs
- News filter โ No high-impact events within hold window
- Daily limit โ Max 3 signals not exceeded
- Spread check โ Current spread within acceptable range
Performance Trackingโ
Track all signals for continuous improvement:
CREATE TABLE signal_performance (
signal_id TEXT PRIMARY KEY,
pair TEXT,
direction TEXT,
entry_price REAL,
exit_price REAL,
pnl_pips REAL,
hold_time_minutes INTEGER,
outcome TEXT, -- 'TP_HIT', 'SL_HIT', 'TIME_EXIT', 'MANUAL_EXIT'
created_at DATETIME
);
Target Metrics:
- Win rate: > 55%
- Average R:R achieved: > 1.3
- Max consecutive losses: < 5
- Monthly Sharpe: > 1.5