gogo2/test_training_status.py
2025-05-27 02:36:20 +03:00

59 lines
2.1 KiB
Python

#!/usr/bin/env python3
"""
Test script to check training status functionality
"""
import logging
logging.basicConfig(level=logging.INFO)
print("Testing training status functionality...")
try:
from web.scalping_dashboard import create_scalping_dashboard
from core.data_provider import DataProvider
from core.enhanced_orchestrator import EnhancedTradingOrchestrator
print("✅ Imports successful")
# Create components
data_provider = DataProvider()
orchestrator = EnhancedTradingOrchestrator(data_provider)
dashboard = create_scalping_dashboard(data_provider, orchestrator)
print("✅ Dashboard created successfully")
# Test training status
training_status = dashboard._get_model_training_status()
print("\n📊 Training Status:")
print(f"CNN Status: {training_status['cnn']['status']}")
print(f"CNN Accuracy: {training_status['cnn']['accuracy']:.1%}")
print(f"CNN Loss: {training_status['cnn']['loss']:.4f}")
print(f"CNN Epochs: {training_status['cnn']['epochs']}")
print(f"RL Status: {training_status['rl']['status']}")
print(f"RL Win Rate: {training_status['rl']['win_rate']:.1%}")
print(f"RL Episodes: {training_status['rl']['episodes']}")
print(f"RL Memory: {training_status['rl']['memory_size']}")
# Test extrema stats
if hasattr(orchestrator, 'get_extrema_stats'):
extrema_stats = orchestrator.get_extrema_stats()
print(f"\n🎯 Extrema Stats:")
print(f"Total extrema detected: {extrema_stats.get('total_extrema_detected', 0)}")
print(f"Training queue size: {extrema_stats.get('training_queue_size', 0)}")
print("✅ Extrema stats available")
else:
print("❌ Extrema stats not available")
# Test tick cache
print(f"\n📈 Training Data:")
print(f"Tick cache size: {len(dashboard.tick_cache)}")
print(f"1s bars cache size: {len(dashboard.one_second_bars)}")
print(f"Streaming status: {dashboard.is_streaming}")
print("\n✅ All tests completed successfully!")
except Exception as e:
print(f"❌ Error: {e}")
import traceback
traceback.print_exc()