Desktop journal list now uses columns for coin, direction, PnL, times, and actions instead of stacked entry cards.
Co-authored-by: Cursor <cursoragent@cursor.com>
Paginate trade records, journals, and AI history at 5 per page with soft in-card flips; hide the journal form until 填入复盘.
Co-authored-by: Cursor <cursoragent@cursor.com>
Import closed OKX option history and closed hedge plans into one list for journaling, images, and stats without mixing contract reviews.
Co-authored-by: Cursor <cursoragent@cursor.com>
Thead rows used a .hidden class with no CSS rule on instance pages, so both header sets stayed visible.
Co-authored-by: Cursor <cursoragent@cursor.com>
Move the theme toggle inside body and stack it above the form so flex no longer pushes the card to the right.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show Binance/OKX/Gate 交易系统 with distinct exchange icons in manifests, apple titles, and login branding.
Co-authored-by: Cursor <cursoragent@cursor.com>
Header float PnL now uses bid recycle minus premium like position cards. Stats adds realized/open/total net PnL.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace single S* with up/down targets across UI, preview, persist, monitor, and alerts so ranging breakouts can close the winner either way.
Co-authored-by: Cursor <cursoragent@cursor.com>
History shows contract names with clickable fill details; stats split perp vs options plans for win rate, profit factor, max win/loss, and drawdown.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use available (free) balances for full-amount ops, support sub-account scope, and show clear success/failure feedback.
Co-authored-by: Cursor <cursoragent@cursor.com>
OKX requires quote_ccy/base_ccy for market orders; include trading_usdt in balance display and total funds.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use stale-while-revalidate for positions API and UI, throttle sync calls, and avoid overwriting displayed PnL with null on transient failures.
Co-authored-by: Cursor <cursoragent@cursor.com>
Adds order_type to journal uploads, removes legacy swing/trend labels from entry reason options, and ensures review-edit buttons sync when the records tab loads dynamically.
Co-authored-by: Cursor <cursoragent@cursor.com>
Wire bootstrap_deploy_secrets into setup_env.sh (one-time HUB_BRIDGE_TOKEN, FLASK_SECRET_KEY, HUB_SESSION_SECRET). Remove AI section from instance env UI; hub saves OPENAI settings to all four .env files. SSO unchanged.
Co-authored-by: Cursor <cursoragent@cursor.com>
System settings now use the same CSS tab layout as env config; sensitive env fields display masked values from .env while keeping save-on-empty behavior.
Co-authored-by: Cursor <cursoragent@cursor.com>
Merge Flask GET/POST routes, refresh prefs on tab revisit after preload, and reorganize system settings into separate cards.
Co-authored-by: Cursor <cursoragent@cursor.com>