Files
trading_bot_v3/test-last-decision.js
mindesbunister 167d7ff5bc feat: implement comprehensive AI decision display and reasoning panel
Major Features Added:
- Complete AI decision tracking system with detailed reasoning display
- Prominent gradient-styled AI reasoning panel on automation-v2 page
- Test AI decision generator with realistic trading scenarios
- Enhanced decision transparency showing entry/exit logic and leverage calculations

- Fixed orphaned order cleanup to preserve reduce-only SL/TP orders
- Integrated AI leverage calculator with 100x capability (up from 10x limit)
- Added lastDecision property to automation status for UI display
- Enhanced position monitoring with better cleanup triggers

- Beautiful gradient-styled AI Trading Analysis panel
- Color-coded confidence levels and recommendation displays
- Detailed breakdown of entry strategy, stop loss logic, and take profit targets
- Real-time display of AI leverage reasoning with safety buffer explanations
- Test AI button for demonstration of decision-making process

- SL/TP orders now execute properly (fixed cleanup interference)
- AI calculates sophisticated leverage (8.8x-42.2x vs previous 1x hardcoded)
- Complete decision audit trail with execution details
- Risk management transparency with liquidation safety calculations

- Why This Decision? - Prominent reasoning section
- Entry & Exit Strategy - Price levels with color coding
- AI Leverage Decision - Detailed calculation explanations
- Execution status with success/failure indicators
- Transaction IDs and comprehensive trade details

All systems now provide full transparency of AI decision-making process.
2025-07-26 22:41:55 +02:00

78 lines
2.6 KiB
JavaScript
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.
#!/usr/bin/env node
/**
* Test Last Decision Tracking in Automation
*/
const { simpleAutomation } = require('./lib/simple-automation.js');
async function testLastDecisionTracking() {
console.log('🧪 Testing Last Decision Tracking...');
// Set up mock config
simpleAutomation.config = {
symbol: 'SOLUSD',
tradingAmount: 100,
leverage: 1,
mode: 'SIMULATION',
selectedTimeframes: ['60', '240']
};
// Test scenario 1: Low confidence - should not execute
console.log('\n1⃣ Testing Low Confidence Decision...');
const lowConfidenceAnalysis = {
recommendation: 'BUY',
confidence: 65, // Below 75% threshold
reasoning: 'Weak bullish signal with mixed indicators',
currentPrice: 186.50
};
const shouldTrade1 = simpleAutomation.shouldExecuteTrade(lowConfidenceAnalysis);
console.log('Decision:', shouldTrade1 ? 'EXECUTE' : 'NO TRADE');
console.log('Last Decision:', simpleAutomation.stats.lastDecision);
// Test scenario 2: High confidence - should execute (but in simulation)
console.log('\n2⃣ Testing High Confidence Decision...');
const highConfidenceAnalysis = {
recommendation: 'BUY',
confidence: 85, // Above 75% threshold
reasoning: 'Strong bullish breakout with volume confirmation',
currentPrice: 186.50
};
const shouldTrade2 = simpleAutomation.shouldExecuteTrade(highConfidenceAnalysis);
console.log('Decision:', shouldTrade2 ? 'EXECUTE' : 'NO TRADE');
console.log('Last Decision:', simpleAutomation.stats.lastDecision);
// Test scenario 3: Live mode simulation
console.log('\n3⃣ Testing Live Mode Decision...');
simpleAutomation.config.mode = 'LIVE';
const liveAnalysis = {
recommendation: 'SELL',
confidence: 88,
reasoning: 'Strong bearish reversal pattern with RSI divergence',
currentPrice: 186.50
};
const shouldTrade3 = simpleAutomation.shouldExecuteTrade(liveAnalysis);
console.log('Decision:', shouldTrade3 ? 'EXECUTE' : 'NO TRADE');
console.log('Last Decision:', simpleAutomation.stats.lastDecision);
// Test execution tracking
if (shouldTrade3) {
console.log('\n4⃣ Testing Execution Tracking...');
try {
await simpleAutomation.executeTrade(liveAnalysis);
console.log('Updated Last Decision with Execution:', simpleAutomation.stats.lastDecision);
} catch (error) {
console.log('Execution test completed (expected error in test environment)');
}
}
console.log('\n✅ Last Decision Tracking Test Complete!');
console.log('\n📊 Final Status:', simpleAutomation.getStatus());
}
testLastDecisionTracking();