try to fix live RT updates on ANNOTATE

This commit is contained in:
Dobromir Popov
2025-11-22 00:55:37 +02:00
parent feb6cec275
commit a7def3b788
5 changed files with 328 additions and 57 deletions

View File

@@ -224,6 +224,7 @@ class BacktestRunner:
if orchestrator and hasattr(orchestrator, 'store_transformer_prediction'):
# Determine model type from model class name
model_type = model.__class__.__name__.lower()
logger.debug(f"Backtest: Storing prediction for model type: {model_type}")
# Store in appropriate prediction collection
if 'transformer' in model_type:
@@ -236,6 +237,7 @@ class BacktestRunner:
'action': prediction['action'],
'horizon_minutes': 10
})
logger.debug(f"Backtest: Stored transformer prediction: {prediction['action']} @ {current_price}")
elif 'cnn' in model_type:
if hasattr(orchestrator, 'recent_cnn_predictions'):
if symbol not in orchestrator.recent_cnn_predictions:
@@ -2006,12 +2008,14 @@ class AnnotationDashboard:
@self.server.route('/api/realtime-inference/start', methods=['POST'])
def start_realtime_inference():
"""Start real-time inference mode with optional live training on L2 pivots"""
"""Start real-time inference mode with optional training modes"""
try:
data = request.get_json()
model_name = data.get('model_name')
symbol = data.get('symbol', 'ETH/USDT')
enable_live_training = data.get('enable_live_training', True) # Default: enabled
timeframe = data.get('timeframe', '1m')
enable_live_training = data.get('enable_live_training', False) # Pivot-based training
train_every_candle = data.get('train_every_candle', False) # Per-candle training
if not self.training_adapter:
return jsonify({
@@ -2022,18 +2026,23 @@ class AnnotationDashboard:
}
})
# Start real-time inference with optional live training
# Start real-time inference with optional training modes
inference_id = self.training_adapter.start_realtime_inference(
model_name=model_name,
symbol=symbol,
data_provider=self.data_provider,
enable_live_training=enable_live_training
enable_live_training=enable_live_training,
train_every_candle=train_every_candle,
timeframe=timeframe
)
training_mode = "per-candle" if train_every_candle else ("pivot-based" if enable_live_training else "inference-only")
return jsonify({
'success': True,
'inference_id': inference_id,
'live_training_enabled': enable_live_training
'training_mode': training_mode,
'timeframe': timeframe
})
except Exception as e: