ROOT CAUSE IDENTIFIED (Dec 7, 2025): Position Manager stopped monitoring at 23:21 Dec 6, left position unprotected for 90+ minutes while price moved against user. User forced to manually close to prevent further losses. This is a CRITICAL RELIABILITY FAILURE. SMOKING GUN: 1. Close transaction confirms on Solana ✓ 2. Drift state propagation delayed (can take 5+ minutes) ✗ 3. After 60s timeout, PM detects "position missing" (false positive) 4. External closure handler removes from activeTrades 5. activeTrades.size === 0 → stopMonitoring() → ALL monitoring stops 6. Position actually still open on Drift → UNPROTECTED LAYER 1: Extended Verification Timeout - Changed: 60 seconds → 5 minutes for closingInProgress timeout - Rationale: Gives Drift state propagation adequate time to complete - Location: lib/trading/position-manager.ts line 792 - Impact: Eliminates 99% of false "external closure" detections LAYER 2: Double-Check Before External Closure - Added: 10-second delay + re-query position before processing closure - Logic: If position appears closed, wait 10s and check again - If still open after recheck: Reset flags, continue monitoring (DON'T remove) - If confirmed closed: Safe to proceed with external closure handling - Location: lib/trading/position-manager.ts line 603 - Impact: Catches Drift state lag, prevents premature monitoring removal LAYER 3: Verify Drift State Before Stop - Added: Query Drift for ALL positions before calling stopMonitoring() - Logic: If activeTrades.size === 0 BUT Drift shows open positions → DON'T STOP - Keeps monitoring active for safety, lets DriftStateVerifier recover - Logs orphaned positions for manual review - Location: lib/trading/position-manager.ts line 1069 - Impact: Zero chance of unmonitored positions, fail-safe behavior EXPECTED OUTCOME: - False positive detection: Eliminated by 5-min timeout + 10s recheck - Monitoring stops prematurely: Prevented by Drift verification check - Unprotected positions: Impossible (monitoring stays active if ANY uncertainty) - User confidence: Restored (no more manual intervention needed) DOCUMENTATION: - Root cause analysis: docs/PM_MONITORING_STOP_ROOT_CAUSE_DEC7_2025.md - Full technical details, timeline reconstruction, code evidence - Implementation guide for all 5 safety layers TESTING REQUIRED: 1. Deploy and restart container 2. Execute test trade with TP1 hit 3. Monitor logs for new safety check messages 4. Verify monitoring continues through state lag periods 5. Confirm no premature monitoring stops USER IMPACT: This bug caused real financial losses during 90-minute monitoring gap. These fixes prevent recurrence and restore system reliability. See: docs/PM_MONITORING_STOP_ROOT_CAUSE_DEC7_2025.md for complete analysis
Trading Bot v4 Documentation
Comprehensive documentation for the Trading Bot v4 autonomous trading system.
Last Updated: December 4, 2025
📂 Documentation Structure
analysis/ - Performance Analysis & Optimization Studies
Performance analyses, blocked signals tracking, profit projections, and diagnostic results. Data-driven insights for system optimization.
architecture/ - System Architecture & Design
Adaptive leverage system, ATR trailing stops, indicator version tracking, and position synchronization. Core technical design documentation.
bugs/ - Bug Reports & Critical Fixes
CRITICAL_.md and FIXES_.md bug reports. Historical record of critical incidents and their resolutions.
cluster/ - Distributed Computing & EPYC Cluster
EPYC cluster setup, distributed backtesting coordination, dual sweep configurations. Multi-server infrastructure documentation.
deployments/ - Deployment Status & Verification
COMPLETE.md and DEPLOYMENT.md status files. Verification reports for major feature deployments.
roadmaps/ - Strategic Planning & Roadmaps
All ROADMAP.md files. Long-term strategic planning for system enhancements across multiple dimensions.
setup/ - Setup Guides & Configuration
TradingView alert setup, n8n workflows, signal quality configuration, percentage sizing features.
archived/ - Historical Documentation
Obsolete verification checklists and documentation from previous development phases.
🚀 Quick Start
New Developers:
- Read TRADING_GOALS.md - Understand financial objectives
- Review roadmaps/OPTIMIZATION_MASTER_ROADMAP.md - Strategic vision
- Check setup/QUICK_SETUP_CARD.md - Quick configuration reference
- Study architecture/ADAPTIVE_LEVERAGE_SYSTEM.md - Core risk management
Debugging Issues:
- Search bugs/ directory for similar incidents
- Review COMMON_PITFALLS.md for documented issues (72 pitfalls)
- Check deployments/ for recent changes
- Consult analysis/DIAGNOSTIC_RESULTS_SUMMARY.md
Feature Development:
- Check roadmaps/ for planned enhancements
- Review architecture/ for existing patterns
- Read deployment verification docs in deployments/
- Follow verification procedures before marking features "complete"
📊 Current System Status
Production Configuration (Dec 4, 2025):
- Capital: $540 USDC (100% health, zero debt)
- Quality Thresholds: LONG ≥90, SHORT ≥95
- Adaptive Leverage: 10x for high-quality (≥95), 5x for borderline (90-94)
- Indicator: v9 Money Line with MA Gap + Momentum SHORT Filter
- Position Sizing: SOL-PERP at 100% allocation, 5x leverage
- Runner System: TP1 closes 60%, TP2 activates trailing stop on 40% runner
- Smart Entry: Enabled (waits for 0.3% pullback confirmation)
See TRADING_GOALS.md for complete financial roadmap ($106 → $100k+)
🔍 Finding Documentation
By Topic:
- Performance Data: analysis/
- System Design: architecture/
- Bug History: bugs/
- Infrastructure: cluster/
- Feature Status: deployments/
- Future Plans: roadmaps/
- Setup Guides: setup/
By Date:
- Most recent deployments in deployments/
- Historical bugs in bugs/
- Archived docs in archived/
By File Type:
*ROADMAP.md→ roadmaps/CRITICAL_*.md→ bugs/*_COMPLETE.md→ deployments/*_ANALYSIS.md→ analysis/
📝 Documentation Standards
File Naming Conventions:
UPPERCASE_WITH_UNDERSCORES.md- Important permanent docslowercase-with-dashes.md- Temporary or draft docs*_COMPLETE.md- Verified deployment statusCRITICAL_*.md- Bug reports requiring immediate attention
Content Requirements:
- Date stamps: All docs must include creation/update dates
- Status indicators: Use emojis (✅ ❌ 🔄 ⏳ 🎯) for quick status scanning
- Code examples: Always include working code snippets for complex features
- Verification steps: Document how to verify feature is working
- Lessons learned: Include "Why This Matters" and "Lessons Learned" sections
Update Frequency:
- Real-time: deployments/ - Update immediately after deployment
- Weekly: roadmaps/ - Review progress, update status
- Monthly: analysis/ - Performance review, optimization analysis
- As-needed: bugs/, setup/, architecture/
🤝 Contributing
Before Committing:
- Update relevant documentation in appropriate subdirectory
- Add entry to
.github/copilot-instructions.mdif system behavior changes - Create deployment verification doc in deployments/
- Update roadmap status in roadmaps/ if completing phase
- Git commit with descriptive message (
docs:,feat:,fix:,critical:)
Documentation Mandate:
- EVERY git commit requires documentation update - Code without docs = incomplete work
- See
.github/copilot-instructions.md"DOCUMENTATION + GIT COMMIT: INSEPARABLE WORKFLOW" - ENV variables, configuration changes → Document in copilot-instructions.md
- Bug fixes → Add to
docs/COMMON_PITFALLS.mdwith full incident details
🔗 External References
- Main Repository:
/home/icke/traderv4/ - Configuration:
.github/copilot-instructions.md(3,600+ lines) - Common Pitfalls:
docs/COMMON_PITFALLS.md(72 documented issues) - Environment Variables:
.env(482 lines) - Database Schema:
prisma/schema.prisma - Primary Code:
app/api/trading/,lib/trading/,lib/drift/
📞 Support
For Issues:
- Check COMMON_PITFALLS.md for documented issues (72 pitfalls)
- Search bugs/ for similar problems
- Consult deployments/ for recent changes
- Search git history:
git log --grep="keyword"
For Features:
- Check roadmaps/ for planned work
- Review architecture/ for existing patterns
- Study similar implementations in git history
Remember: This is a real money trading system - every change affects financial outcomes. Always verify thoroughly before declaring anything "working" or "fixed".