Selecting 指定币数量 opens an order dialog; pending orders move into a 当前委托 tab after 当前持仓; harden remark autofill that showed dekun.
Co-authored-by: Cursor <cursoragent@cursor.com>
Map plan/leg close_reason codes like target_down_win_leg and expiry to Chinese labels in detail, form, and stats.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the category tabs and search toolbar page-level so they sit above the numbered trade/review/stats sections.
Co-authored-by: Cursor <cursoragent@cursor.com>
Separate trade/review/stats blocks, tuck filters into a toolbar, and hide empty stat groups so the page scans more easily.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add a dedicated lightbox above the review dialog and raise global imgModal z-index so enlargements are no longer hidden behind it.
Co-authored-by: Cursor <cursoragent@cursor.com>
Treat the filter as fuzzy q over underlying/inst/strategy (BTCUSDT->BTC) instead of exact strategy_tag, which always wiped pending rows.
Co-authored-by: Cursor <cursoragent@cursor.com>
Stop auto-closing the print tab on afterprint (short checklist pages were especially fragile), load print HTML via fetch into a blank window, and use CSS checkboxes instead of Unicode ballot boxes.
Co-authored-by: Cursor <cursoragent@cursor.com>
API enriches entry/SL/TP with price_to_precision display strings; OKX formatter now uses the same path as Gate/Binance.
Co-authored-by: Cursor <cursoragent@cursor.com>
Expose KEY_AUTO_ORDER_ENABLED and KEY_AUTO_MIN_PLANNED_RR under 交易执行 so the frontend matches the settings readout.
Co-authored-by: Cursor <cursoragent@cursor.com>
Exclude journal-form from InstanceEmbed submit reload, stopImmediatePropagation on AJAX save, and force-reload trades when the table is stuck on loading.
Co-authored-by: Cursor <cursoragent@cursor.com>
Delegate submit handling for late-mounted #journal-form across OKX/Binance/Gate, avoid full reload fallback, and soft-refresh trade rows after save.
Co-authored-by: Cursor <cursoragent@cursor.com>
Defer exchange chart generation to a background thread and save via XHR so fill-from-trade no longer blocks on full page reload.
Co-authored-by: Cursor <cursoragent@cursor.com>
Monitor board only needs positions, balances, and targets; drop the OKX positions-history pull each poll, and surface timeout errors via msg.
Co-authored-by: Cursor <cursoragent@cursor.com>
Background poll builds a memory snapshot; the page reads snapshot and refreshes on SSE instead of hitting heavy exchange APIs on each load.
Co-authored-by: Cursor <cursoragent@cursor.com>
Unify hub/instance TP profit, calc_pnl, and push/accounting to net of 0.05% per side; leave exchange floating PnL unchanged.
Co-authored-by: Cursor <cursoragent@cursor.com>
Match hedge/roll/trend/order/key monitors for source badges, show option target monitors in green, and refresh the dashboard with the board 5s cycle.
Co-authored-by: Cursor <cursoragent@cursor.com>
Parse alternate reasoning fields, retry with a larger max_tokens budget, cap review images, and fall back to text-only when vision returns empty.
Co-authored-by: Cursor <cursoragent@cursor.com>
POST /ai_daily_review was returning 504 while the model was still running; patch BT reverse-proxy read/send timeouts to 360s on deploy.
Co-authored-by: Cursor <cursoragent@cursor.com>