fix: Replace component_scores with direct attributes in notebook cells

Fixed AttributeError in cells 89 and 92:
- component_scores['trend'] → trend_score
- component_scores['volume'] → volume_score
- component_scores['momentum'] → momentum_score
- component_scores['support_resistance'] → support_resistance_score
- component_scores['fibonacci'] → fibonacci_score
- .reasoning → .reason

Now cells will work correctly with EnhancedSignal object.
This commit is contained in:
2026-01-21 13:23:08 +01:00
parent 7e978cf7c4
commit 35e19143ac
@@ -3587,19 +3587,19 @@
" final_confidence = enhanced.total_score\n", " final_confidence = enhanced.total_score\n",
"\n", "\n",
" print(f\"\\n✅ Enhanced Signal Scoring:\")\n", " print(f\"\\n✅ Enhanced Signal Scoring:\")\n",
" print(f\" Trend Score: {enhanced.component_scores['trend']:.1f}/100\")\n", " print(f\" Trend Score: {enhanced.trend_score:.1f}/100\")\n",
" print(f\" Volume Score: {enhanced.component_scores['volume']:.1f}/100\")\n", " print(f\" Volume Score: {enhanced.volume_score:.1f}/100\")\n",
" print(f\" Momentum Score: {enhanced.component_scores['momentum']:.1f}/100\")\n", " print(f\" Momentum Score: {enhanced.momentum_score:.1f}/100\")\n",
" print(f\" S/R Score: {enhanced.component_scores['support_resistance']:.1f}/100\")\n", " print(f\" S/R Score: {enhanced.support_resistance_score:.1f}/100\")\n",
" print(f\" Fibonacci Score: {enhanced.component_scores['fibonacci']:.1f}/100\")\n", " print(f\" Fibonacci Score: {enhanced.fibonacci_score:.1f}/100\")\n",
" print(f\" ─────────────────────────────────────\")\n", " print(f\" ─────────────────────────────────────\")\n",
" print(f\" 📊 Base Confidence: {base_confidence:.1f}%\")\n", " print(f\" 📊 Base Confidence: {base_confidence:.1f}%\")\n",
" print(f\" 🎯 Enhanced Score: {final_confidence:.1f}%\")\n", " print(f\" 🎯 Enhanced Score: {final_confidence:.1f}%\")\n",
" print(f\" 📈 Signal Quality: {enhanced.signal_quality}\")\n", " print(f\" 📈 Signal Quality: {enhanced.signal_quality}\")\n",
"\n", "\n",
" # Show reasoning\n", " # Show reasoning\n",
" if enhanced.reasoning:\n", " if enhanced.reason:\n",
" print(f\"\\n💡 Analysis: {enhanced.reasoning}\")\n", " print(f\"\\n💡 Analysis: {enhanced.reason}\")\n",
"\n", "\n",
" except Exception as e:\n", " except Exception as e:\n",
" print(f\"⚠️ Enhanced scoring failed: {e}\")\n", " print(f\"⚠️ Enhanced scoring failed: {e}\")\n",
@@ -3710,7 +3710,15 @@
"execution_count": null, "execution_count": null,
"id": "597b2834", "id": "597b2834",
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"2026-01-21 13:21:23,269 - INFO - HTTP Request: POST https://api.telegram.org/bot7783303065:AAHVVvwWGqmhJ2BVq8LqkLRSsicKy1CUsD8/getUpdates \"HTTP/1.1 200 OK\"\n"
]
}
],
"source": [ "source": [
"# ==========================================\n", "# ==========================================\n",
"# TEST ENHANCED SIGNAL SCORING\n", "# TEST ENHANCED SIGNAL SCORING\n",
@@ -3739,11 +3747,11 @@
" )\n", " )\n",
"\n", "\n",
" print(f\"\\n🎯 Enhanced Analysis:\")\n", " print(f\"\\n🎯 Enhanced Analysis:\")\n",
" print(f\" Trend: {enhanced.component_scores['trend']:.1f}/100 (30%)\")\n", " print(f\" Trend: {enhanced.trend_score:.1f}/100 (30%)\")\n",
" print(f\" Volume: {enhanced.component_scores['volume']:.1f}/100 (20%)\")\n", " print(f\" Volume: {enhanced.volume_score:.1f}/100 (20%)\")\n",
" print(f\" Momentum: {enhanced.component_scores['momentum']:.1f}/100 (20%)\")\n", " print(f\" Momentum: {enhanced.momentum_score:.1f}/100 (20%)\")\n",
" print(f\" S/R: {enhanced.component_scores['support_resistance']:.1f}/100 (15%)\")\n", " print(f\" S/R: {enhanced.support_resistance_score:.1f}/100 (15%)\")\n",
" print(f\" Fibonacci: {enhanced.component_scores['fibonacci']:.1f}/100 (15%)\")\n", " print(f\" Fibonacci: {enhanced.fibonacci_score:.1f}/100 (15%)\")\n",
" print(f\" ─────────────────────────────────────\")\n", " print(f\" ─────────────────────────────────────\")\n",
" print(f\" Total Score: {enhanced.total_score:.1f}%\")\n", " print(f\" Total Score: {enhanced.total_score:.1f}%\")\n",
" print(f\" Quality: {enhanced.signal_quality}\")\n", " print(f\" Quality: {enhanced.signal_quality}\")\n",
@@ -3760,8 +3768,8 @@
" print(f\"\\n⚪ Enhanced score same as base\")\n", " print(f\"\\n⚪ Enhanced score same as base\")\n",
"\n", "\n",
" # Show reasoning\n", " # Show reasoning\n",
" if enhanced.reasoning:\n", " if enhanced.reason:\n",
" print(f\"\\n💡 {enhanced.reasoning}\")\n", " print(f\"\\n💡 {enhanced.reason}\")\n",
"\n", "\n",
"else:\n", "else:\n",
" print(\"❌ No signal data available\")\n", " print(\"❌ No signal data available\")\n",