Files
DinQuant/docs/FRONTEND_FAST_ANALYSIS.md
T
Dinger 2e9c7cd69e feat: AI analysis engine refactor, dark theme polish & virtual position management
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
2026-03-23 23:01:04 +08:00

3.3 KiB
Raw Blame History

快速分析(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 对齐几何关系:
    • BUYstop_loss < 现价 < take_profit
    • SELL(空)take_profit < 现价 < stop_loss(止损在上方,止盈在下方)
  • 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, positionSizePct
  • loss_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-legacyfast_analysis 内同样有上述字段;overview.report 会追加 【周期预判】 段落;顶层也有 trend_outlook / trend_outlook_summary

前端需要做的

  • 在快速分析结果页单独渲染 trend_outlooktrend_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_outlooktrend_outlook_summary

更新私有前端仓库后,通过 CI 或手动打包替换本仓库的 frontend/dist/(参见 update-frontend.yml)。