2e9c7cd69e
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
3.3 KiB
3.3 KiB
快速分析(Fast Analysis)前端对接说明
本开源仓库中的 frontend/ 仅包含构建产物 dist/,Vue 源码在私有前端仓库(见根目录 .github/workflows/update-frontend.yml)。因此在本仓库内无法直接修改 FastAnalysisReport.vue 等组件,需要在私有仓库中按下列说明调整。
1. 止盈 / 止损显示反了(BUY/SELL)
后端约定(/api/fast-analysis/analyze)
trading_plan.stop_loss/trading_plan.take_profit已与decision对齐几何关系:- BUY:
stop_loss < 现价 < take_profit - SELL(空):
take_profit < 现价 < stop_loss(止损在上方,止盈在下方)
- BUY:
indicators.trading_levels.suggested_stop_loss / suggested_take_profit在采集器里是多单(做多)参考价,不能在 SELL 时直接拿来当界面上的「止损/止盈」两行,否则会和空单几何相反。
前端常见错误
- 第一行写死绑定
trading_levels.suggested_stop_loss、第二行绑定suggested_take_profit。 - 或把
stop_loss/take_profit标签写反(模板里「止损」绑了take_profit)。
推荐写法(私有仓库中修改)
只使用接口返回的 data.trading_plan(或兼容字段 stopLoss / takeProfit):
止损(亏损离场价): trading_plan.stop_loss (或 stopLoss)
止盈(盈利目标价): trading_plan.take_profit (或 takeProfit)
可选:根据 trading_plan.decision === 'SELL' 在文案旁加一句「空单:止损在现价上方,止盈在现价下方」。
API 兼容字段(后端已加)
trading_plan 内额外包含:
entryPrice,stopLoss,takeProfit,positionSizePctloss_exit_price,profit_target_price(与止损/止盈数值一致,语义更清晰)decision:与主结果decision一致,便于组件内判断
根级另有驼峰:trendOutlook, trendOutlookSummary(与 trend_outlook 等相同内容)。
2. 「未来时间段预判」不显示
后端字段:
trend_outlook:对象,含next_24h,next_3d,next_1w,next_1m(每项含score,trend,strength)。trend_outlook_summary:一行可读摘要(中文/英文随language)。- 若走
/api/fast-analysis/analyze-legacy:fast_analysis内同样有上述字段;overview.report会追加 【周期预判】 段落;顶层也有trend_outlook/trend_outlook_summary。
前端需要做的
- 在快速分析结果页单独渲染
trend_outlook或trend_outlook_summary(不要只读summary正文)。 - 若请求的是 legacy 接口,请读
data.fast_analysis.trend_outlook或顶层data.trend_outlook,不要假设只在某一嵌套路径下。
3. 自检清单
| 检查项 | 说明 |
|---|---|
| 接口路径 | 确认用的是 /analyze 还是 /analyze-legacy,字段路径一致 |
| 绑定来源 | 止损/止盈是否来自 trading_plan,而非 trading_levels |
| SELL 几何 | 空单位:take_profit < current < stop_loss |
| 周期预判 | 模板是否包含 trend_outlook 或 trend_outlook_summary |
更新私有前端仓库后,通过 CI 或手动打包替换本仓库的 frontend/dist/(参见 update-frontend.yml)。