- Enhanced MLPredictionOverlay with confidence bands (upper/lower bounds)
- Improved SignalMarkers with tooltips, signal types (BUY/SELL/HOLD), and click handlers
- Fixed ICTConceptsOverlay rectangle rendering with proper area series
- Added OverlayControlPanel for toggle/configuration of all overlays
- Created usePredictions hook for ML price predictions
- Created useSignals hook for trading signals
- Created useChartOverlays composite hook for unified overlay management
- Updated exports in index.ts files
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
SPRINT 4 (128 SP):
SUBTASK-007 Education (21 SP):
- Add QuizHistoryCard with stats and trend indicators
- Add EarnedCertificates with search, sort, sharing
- Enhance CourseDetail with "Resume where you left off"
SUBTASK-008 LLM Agent (44 SP):
- Add MemoryManager with conversation history management
- Add LLMToolsPanel with tool enable/disable and execution history
- Add FineTuningPanel with model selection and training config
SUBTASK-009 Portfolio (63 SP):
- Add MonteCarloSimulator with VaR/CVaR calculations
- Add CorrelationMatrix with heatmap visualization
- Add RebalancingPanel with drift thresholds and history
- Add GoalsManager with savings rate calculator
- Add RiskAnalytics with comprehensive metrics
SPRINT 5 (55 SP):
SUBTASK-010 Marketplace (42 SP):
- Create full marketplace module structure
- Add MarketplaceCatalog with grid/list view, filters
- Add SignalPackCard, SignalPackDetail pages
- Add AdvisoryCard, AdvisoryDetail with booking
- Add CourseProductCard, ReviewCard components
- Add marketplace types, service, and store
- Add routes: /marketplace, /marketplace/signals/:slug, etc.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ST-003.2: ML Overlay (13 SP)
- Add AMDZonesOverlay component for accumulation/manipulation/distribution visualization
- AMD zones rendered as colored shaded areas on chart
- Prediction lines and signal markers already implemented
ST-003.6: Screener Advanced (8 SP)
- Add volumeRatio, trend, mlSignal, mlConfidence columns
- Add 4 new filter presets: Bullish/Bearish Trend, Change >2%, ML Buy Signal
- Vol Ratio column with color coding (>2x amber, >1x green)
- ML Signal badge with confidence percentage
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
SUBTASK-003: Trading Core Features
- OrderForm: Add TP/SL validation based on trade direction (LONG/SHORT)
- TradingStatsPanel: Add Sharpe Ratio and Max Drawdown metrics
- TradesHistory: Add Export CSV button with full trade details
Metrics already implemented: Win Rate, Profit Factor, Total PnL
Alerts system: Already fully implemented (create, list, delete, toggle)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
SUBTASK-001: Routing fixes
- Add lazy-loaded route for /portfolio/:portfolioId
- Add navigation links from PortfolioDashboard to portfolio detail
- Verify /settings/billing is intentional dual-route (no changes needed)
SUBTASK-002: Auth improvements
- Extend ActiveSession type with device details (deviceType, browser, os, location)
- DeviceCard now uses backend data when available, falls back to userAgent parsing
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add tradingAgents.types.ts with complete type definitions
- Add agents.service.ts for Trading Agents API integration
- Add agentsStore.ts (Zustand) for state management
- Add BotCard.tsx, AgentCard.tsx, AgentsList.tsx components
- Add AgentsPage.tsx for /trading/agents route
- Fix TypeScript errors in AgentsList.tsx:
- Add handlers for startBot with default config
- Use correct AgentType for selectBot
Total: 8 new files, ~3,000 LOC
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add complete implementation of ML overlay components:
- MLPredictionOverlay: Renders ML price predictions as line overlay
- SignalMarkers: Displays BUY/SELL signal markers on chart
- ICTConceptsOverlay: Renders Order Blocks, FVG, and Liquidity zones
- useMlOverlayData: Custom hook with TanStack Query for data fetching
- mlOverlay.types.ts: Type definitions for all ML overlay data
Features:
- Uses lightweight-charts API for efficient rendering
- Automatic caching with 60s stale time
- Configurable colors and visibility
- Clean up on component unmount
- Full TypeScript support
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Created three complete 2FA components integrating with existing backend endpoints:
1. TwoFactorSetup.tsx (auth/components)
- 3-step wizard for 2FA setup
- QR code display with manual entry fallback
- TOTP code verification
- Backup codes display with copy functionality
- Integrates with POST /auth/2fa/setup and /auth/2fa/enable
2. TwoFactorVerifyModal.tsx (auth/components)
- Modal for 2FA verification during login
- Support for both TOTP (6 digits) and backup codes (8 digits)
- Auto-submit for TOTP codes
- Switch between code types
- Auto-focus input field
3. TwoFactorSettings.tsx (settings/components)
- Management panel for 2FA in settings
- Enable/disable 2FA with confirmation
- Regenerate backup codes
- Status display with activation date
- Integrates with all 2FA endpoints
All components follow project patterns:
- Tailwind CSS styling matching existing components
- lucide-react icons
- Centralized apiClient with auto-refresh
- Complete TypeScript types
- No placeholders or TODOs
Related: GAP-P1-004 2FA Frontend Flow
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace simulated video upload with real multipart upload to backend.
New Files:
- src/services/video-upload.service.ts (NEW): Complete multipart upload service
- Initialize upload with backend
- Split file into 5MB parts
- Upload parts to S3/R2 using presigned URLs
- Upload max 3 parts in parallel
- Complete upload and return video object
- Full upload flow with progress callbacks
Updated Files:
- src/modules/education/components/VideoUploadForm.tsx (UPDATED):
- Import videoUploadService
- Replace simulated upload (lines 214-248) with real API calls
- Use progress callbacks to update UI
- Handle real video ID on completion
- Maintain all existing UI/UX behavior
Upload Flow:
1. User selects video + fills metadata
2. Call videoUploadService.uploadVideo()
3. Backend initializes multipart upload
4. Split file into 5MB chunks
5. Upload chunks to S3/R2 (presigned URLs)
6. Backend completes upload
7. Video processing starts automatically
8. UI shows real-time progress
Technical Details:
- Part size: 5MB (optimal for network)
- Max concurrent uploads: 3 parts
- Uses fetch API for S3 direct upload
- ETags returned for multipart completion
- Full error handling and retry capability
Status: BLOCKER-003 (ST4.3) - 89% complete (5/6 tasks done)
Task: #10 ST4.3.5 - Frontend integrar VideoUploadForm con backend
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ModelSelector: Model selection with dropdown/tabs/cards variants
- EnsemblePanel: Ensemble voting configuration with weight sliders
- ICTAnalysisPanel: ICT analysis parameters with collapsible sections
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- OrderBookDepthVisualization: Canvas-based depth chart with bid/ask areas
- MarketDepthPanel: Complete market depth with filters and grouping
- SymbolComparisonChart: Multi-symbol comparison with normalization modes
- TradingScreener: Advanced screener with filters and saved presets
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- AnalysisRequestForm: Structured request builder for complex analysis tasks
- StrategyTemplateSelector: Pre-built strategy templates with AI recommendations
- LLMConfigPanel: Model selection and inference parameters (Claude models)
- ContextMemoryDisplay: Conversation context and memory visualization
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ConfidenceMeter: Advanced confidence visualization with model agreement
- SignalPerformanceTracker: Signal history with filters and statistics
- ModelAccuracyDashboard: Individual model metrics and comparison
- BacktestResultsVisualization: Backtest results with trades and monthly returns
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CourseProgressTracker: Comprehensive progress visualization
- LearningPathVisualizer: Visual roadmap for learning paths
- VideoProgressPlayer: Enhanced video player with bookmarks and controls
- AssessmentSummaryCard: Quiz results analysis and review
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- IndicatorConfigPanel: Advanced technical indicator configuration
- ChartDrawingToolsPanel: Drawing tools for technical analysis
- SymbolInfoPanel: Comprehensive symbol information sidebar
- TradeJournalPanel: Trade review and journaling for paper trading
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MT4LiveTradesPanel: Real-time positions dashboard with aggregate metrics
- PositionModifierDialog: Modal for modifying SL/TP with price/pips modes
- RiskBasedPositionSizer: Position size calculator based on risk percentage
- TradeAlertsNotificationCenter: Unified notification hub for MT4 events
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MessageList: Virtualized message list with auto-scroll
- ChatHeader: Header with title editing, actions menu, status
- MessageSearch: Search within conversation with filters
- MarkdownRenderer: Custom markdown rendering with code copy
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- QuickOrderPanel: One-click trading with lot presets
- TradeExecutionHistory: Session trade history with P&L stats
- TradingMetricsCard: Daily trading metrics and performance
- useMT4WebSocket: Real-time account/position updates hook
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- useChatAssistant: Centralized chat logic with retry and streaming support
- useStreamingChat: SSE streaming with token animation
- messageFormatters: Signal parsing, price formatting, markdown processing
- SignalExecutionPanel: Execute trading signals with risk validation
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MT4PositionsManager: Container for all live positions with filtering/sorting
- AdvancedOrderEntry: Professional order form with risk calculator, SL/TP modes
- AccountHealthDashboard: Unified account metrics with health status
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ToolCallCard: Display tool execution results with expandable details
- MessageFeedback: Thumbs up/down with detailed feedback form
- StreamingIndicator: Multiple variants for thinking/analyzing/generating states
- AssistantSettingsPanel: Settings modal with risk profile, preferences
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MT4ConnectionStatus: Connection indicator with account info display
- LivePositionCard: Real-time position card with P&L, modify/close actions
- RiskMonitor: Risk management dashboard with metrics and warnings
- index.ts: Centralized exports for all trading components
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CertificatePreview: Display earned certificates with download/share
- CourseReviews: Reviews section with rating summary and filtering
- LessonNotes: Note-taking with timestamps and auto-save
- RecommendedCourses: Course recommendations with multiple layouts
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ConversationHistory: Session list with search, delete, and selection
- ContextPanel: Display trading context (watchlist, risk profile, favorites)
- Update Assistant page to use chatStore for session management
- Wire sidebar to load/create/delete sessions
- Add error banner and responsive design
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add WalletDepositModal for depositing funds to wallet
- Add WalletWithdrawModal for withdrawing funds from wallet
- Add CheckoutSuccess page for successful Stripe checkout
- Add CheckoutCancel page for canceled checkout
- Update Billing page to use new wallet modals
- Add routes for /payments/success and /payments/cancel
- Export new modals from payments index
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add Settings tab with account info and reset functionality
- Show initial balance, total trades, open positions
- Reset account confirmation dialog
- Danger zone styling for reset action
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create TradingStatsPanel with trading metrics (win rate, P&L, profit factor)
- Create OrderBookPanel with bids/asks visualization and spread
- Update Trading.tsx with toggle buttons for all panels
- Implement indicator toggle logic with Set state
- Add stats panel: current streak, avg hold time, portfolio summary
- Add order book: depth bars, click-to-fill, configurable rows
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create AlertsPanel component with full CRUD functionality
- Add alerts API functions to trading.service.ts
- Integrate AlertsPanel into Trading.tsx with toggle button
- Support for above/below/crosses conditions
- Push and email notification options
- Recurring alerts support
- Filter by active/inactive status
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add Withdrawals.tsx with global withdrawals list and status filters
- Add Transactions.tsx with global transaction history and type/account filters
- Add Reports.tsx with allocation chart, performance bars, and export
- Add ProductDetail.tsx with performance chart and investment form
- Add routes for all new pages in App.tsx
OQI-004 progress: 45% -> 75%
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create AccountDetail.tsx with tabs for overview, transactions, distributions, deposit, withdraw
- Create investment.service.ts with full API client for investment endpoints
- Add routes /investment/portfolio, /investment/products, /investment/accounts/:accountId
- Integrate DepositForm and WithdrawForm components
- Add canvas-based performance chart
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create portfolioStore.ts with Zustand for state management
- Add portfolioWS instance for real-time portfolio updates
- Add usePortfolioUpdates hook for WebSocket subscriptions
- Refactor PortfolioDashboard to use store instead of local state
- Add WebSocket connection status indicator (Live/Offline)
- Add last update timestamp display
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add PerformanceChart component with canvas-based line chart
- Add EditAllocations page for modifying target allocations
- Integrate PerformanceChart into PortfolioDashboard
- Add route for /portfolio/:portfolioId/edit
- Extend portfolio.service with performance API functions
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Created portfolio.service.ts with API client functions
- Created AllocationChart component (donut chart)
- Created AllocationTable component (detailed positions)
- Created RebalanceCard component (rebalancing recommendations)
- Created GoalCard component (financial goal progress)
- Created PortfolioDashboard page (main dashboard)
- Created CreatePortfolio page (new portfolio form)
- Created CreateGoal page (new goal form)
- Updated App.tsx with portfolio routes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add notification service for API calls
- Add notification Zustand store with WebSocket integration
- Create NotificationBell component with badge
- Create NotificationDropdown with recent notifications
- Create NotificationItem with icons and actions
- Update MainLayout to use NotificationBell
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>