Files
gogo2/ANNOTATE/REALTIME_INFERENCE_GUIDE.md
Dobromir Popov f464a412dc uni data storage
2025-10-20 09:48:59 +03:00

286 lines
6.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Real-Time Inference Guide
## 🎯 Overview
Real-time inference mode runs your trained model on **live streaming data** from the DataProvider, updating charts every second and displaying model predictions in real-time.
---
## 🚀 Starting Real-Time Inference
### Step 1: Select Model
Choose the model you want to run from the dropdown in the training panel.
### Step 2: Click "Start Live Inference"
- Button turns red: "Stop Inference"
- Live mode banner appears at top
- Charts begin updating every second
- Model predictions displayed
### Visual Indicators
- **🔴 LIVE banner** at top of page
- **Green status box** in training panel
- **Update counter** showing number of updates
- **Signal markers** on charts (🔵 BUY, 🔴 SELL)
---
## 📊 What Updates in Real-Time
### Charts (Every 1 Second)
- **All 4 timeframes** update with latest data
- **Candlesticks** show new price action
- **Volume bars** update with new volume
- **Smooth updates** without page refresh
### Model Signals
- **Latest prediction** displayed (BUY/SELL/HOLD)
- **Confidence level** shown as percentage
- **Signal markers** added to charts
- **Last 10 signals** kept visible
### Data Source
- Uses **DataProvider's cached data**
- Same data as main trading system
- Updates from exchange feeds
- 1-second resolution
---
## 🎨 Visual Elements
### Live Mode Banner
```
🔴 LIVE | Real-Time Inference Active
Charts updating with live data every second
[X updates]
```
### Signal Markers on Charts
- **🔵 BUY** - Green marker with arrow
- **🔴 SELL** - Red marker with arrow
- **Timestamp** - When signal was generated
- **Price** - Price at signal time
### Training Panel Status
```
🔴 LIVE
Signal: BUY
Confidence: 75.3%
Charts updating every 1s
```
---
## 🛑 Stopping Real-Time Inference
### Click "Stop Inference"
- Live mode banner disappears
- Charts stop updating
- Signal markers remain visible
- Can review final signals
### What Happens
- Inference loop terminates
- Chart updates stop
- Last 100 signals saved
- Model remains loaded
---
## 📈 Monitoring Performance
### Watch For
- **Signal frequency** - How often model signals
- **Confidence levels** - Higher is better (>70%)
- **Signal accuracy** - Do signals make sense?
- **False positives** - Signals that shouldn't happen
### Good Signs
- ✅ Signals at key levels (support/resistance)
- ✅ High confidence (>70%)
- ✅ Signals match your analysis
- ✅ Few false positives
### Warning Signs
- ⚠️ Too many signals (every second)
- ⚠️ Low confidence (<50%)
- Random signals
- Signals don't match patterns
---
## 🔧 Technical Details
### Update Frequency
- **Charts**: 1 second
- **Signals**: 1 second
- **Model inference**: 1 second
### Data Flow
```
DataProvider (Live Data)
Latest Market State (4 timeframes)
Model Inference
Prediction (Action + Confidence)
Update Charts + Display Signal
```
### Performance
- **Latency**: ~100-200ms per update
- **CPU Usage**: Moderate (model inference)
- **Memory**: Stable (no leaks)
- **Network**: Minimal (uses cached data)
---
## 💡 Tips & Tricks
### Tip 1: Watch Multiple Timeframes
All 4 charts update simultaneously. Watch for:
- Alignment across timeframes
- Divergences between timeframes
- Pattern confirmation
### Tip 2: Monitor Confidence
- **>80%**: Very strong signal
- **70-80%**: Strong signal
- **50-70%**: Moderate signal
- **<50%**: Weak signal (ignore)
### Tip 3: Compare with Annotations
- Do live signals match your annotations?
- Are signals at similar price levels?
- Is timing similar to your trades?
### Tip 4: Test Different Models
- Try CNN vs DQN vs Transformer
- Compare signal quality
- Note which performs best
### Tip 5: Use for Validation
- After training, test with live inference
- Verify model learned correctly
- Check for overfitting
---
## 🐛 Troubleshooting
### Charts Not Updating
**Issue**: Live mode active but charts frozen
**Solutions**:
- Check browser console for errors
- Verify DataProvider has live data
- Refresh page and restart inference
- Check network tab for failed requests
### No Signals Generated
**Issue**: Status shows "HOLD" constantly
**Solutions**:
- Model may need more training
- Check model is loaded correctly
- Verify market conditions (model may correctly hold)
- Try different model
### Signals Too Frequent
**Issue**: Signal every second
**Solutions**:
- Model may be overtrained
- Need more negative examples in training
- Adjust confidence threshold
- Retrain with better annotations
### Performance Issues
**Issue**: Browser slow/laggy
**Solutions**:
- Close other tabs
- Reduce number of visible timeframes
- Stop inference when not needed
- Clear browser cache
---
## 📊 Example Session
### Scenario: Testing CNN After Training
**1. Preparation**
- Trained CNN on 20 breakout annotations
- Model learned breakout patterns
- Ready to test on live data
**2. Start Inference**
- Select "StandardizedCNN"
- Click "Start Live Inference"
- 🔴 LIVE banner appears
- Charts begin updating
**3. Observation (5 minutes)**
- Charts update smoothly
- Model generates 2 BUY signals
- Both at resistance breakouts
- Confidence: 78% and 82%
**4. Validation**
- Signals match training patterns
- Timing is precise
- No false positives
- Model learned correctly
**5. Stop Inference**
- Click "Stop Inference"
- Review signal history
- Model performs well
- Ready for production
---
## 🎯 Best Practices
### Before Starting
- Train model first
- Verify model loaded
- Check DataProvider has data
- Close unnecessary tabs
### During Inference
- Monitor all timeframes
- Note signal quality
- Check confidence levels
- Compare with your analysis
### After Stopping
- Review signal history
- Note performance
- Identify improvements
- Adjust training if needed
---
## 🚀 Summary
Real-time inference provides:
**Live chart updates** (1/second)
**Model predictions** in real-time
**Signal markers** on charts
**Confidence levels** displayed
**Performance monitoring** built-in
Use it to:
- **Validate training** - Check model learned correctly
- **Test models** - Compare different models
- **Monitor performance** - Track signal quality
- **Debug issues** - Identify problems
**Result**: Confidence that your model works correctly before deploying to production! 🎯