- Removed conditional rendering for the assistant guide bar.
- Simplified strategy overview and strategy list item components.
- Introduced a new modal for selecting strategy mode.
- Enhanced strategy creation modal to support script strategies with a dedicated editor.
- Updated form handling for script strategies, including validation and submission logic.
- Improved user experience with better messaging and streamlined UI components.
- Updated translations for better clarity in Chinese.
Core changes:
- Refactor FastAnalysisService: single LLM multi-factor analysis replaces
7-agent pipeline; add multi-timeframe consensus, threshold calibration,
confidence calibration, multi-model ensemble voting
- Add RAG memory injection and reflection validation (analysis_memory +
reflection worker)
- Simplify billing config: remove unused strategy_run/backtest/portfolio_monitor,
add ai_code_gen separate billing (different token consumption scale)
- Settings hot-reload after save, no backend restart needed
Frontend:
- Global dark theme overhaul: pure black palette replacing blue-tinted colors
across sidebar/header/dashboard/analysis/K-line/user-manage/profile/settings/billing
- Fix USDT payment modal dark theme (portal rendering broke CSS selectors)
- Refactor position modal: direction + quantity + entry price, remove add/reduce
logic, show raw DB values on re-open, save exactly what user inputs
- Fix Polymarket prediction market dark text
- i18n for position modal title
Backend:
- Position management: one record per symbol (DELETE+INSERT replacing
ON CONFLICT with side), fixes PnL showing 0 when switching long/short
- MarketDataCollector data fetching optimization
- portfolio_monitor scheduled monitoring improvements
- env.example reorganized: common config first, advanced config last
Documentation:
- README architecture diagram updated to FastAnalysisService flow
- Add virtual position, AI tuning config, billing items documentation
- Add INDICATOR_DEFINITIONS_CN.md, FRONTEND_FAST_ANALYSIS.md
Made-with: Cursor
- Add global market dashboard APIs/assets and improve data robustness (incl. crypto heatmap by market cap)
- Enhance global market UI (map+heatmap layout, loading behavior, formatting, theme tweaks)
- Fix Settings LLM Provider select to render label/value options correctly
- Rename Indicator Community to Official Community and move it to the bottom
- Add search fallback when Google quota is exhausted
- Fix Invalid Date display in Dashboard notifications
- Fix timezone offset (8 hours) in Trading Records time display
- Fix position closing failures due to commission discrepancies (fetch actual exchange position size for reduce_only orders)
- Fix IBKR connection error 'no current event loop in thread' by ensuring asyncio event loop exists
- Fix duplicate orders on same candle by extending signal deduplication to close signals
- Add responsive design for Profile page (mobile-friendly)
- Remove unused strategy_code module and database table
- Fix LLM service to support multiple providers (OpenRouter, OpenAI, DeepSeek, Grok, Google)
- Add auto-detection of configured LLM provider based on API key availability
- Fix AI code generation to use unified LLMService with proper provider selection
- Fix crypto symbol format handling (ETH/USDT no longer becomes ETH/USDT/USDT)
- Fix Commission display showing '0E-8' in Trading Records
- Fix P&L display for signal-only trades (show '--' for unrealized P&L)
- Fix OAuth login not updating last_login_at for new users
- Add migration script for notification_settings column
- Update env.example with new LLM provider configurations
- Remove ESLint rule that was not defined in config