Commit Graph

638 Commits

Author SHA1 Message Date
dekun 1ee9eb02c3 Add settings page tabs and show env API keys with last four digits.
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>
2026-07-08 21:31:14 +08:00
dekun 12e44ab26d Fix env config tabs with CSS radio labels, no JS required
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 21:19:23 +08:00
dekun 4b3373a68d Fix env config tab clicks via document event delegation
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 21:14:42 +08:00
dekun 576f6fbcfc Redesign env config UI: tabs, 2-col form, remove per-field badges
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 21:10:54 +08:00
dekun 0d2ce9c126 Add curated env config UI with Chinese labels and deploy secret bootstrap
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 21:03:00 +08:00
dekun 0b91d26f71 Fix Jinja conflict: rename display meta items to entries
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 20:38:52 +08:00
dekun 68e03ccd97 Fix settings tab 500 and env config grouping in UI
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 20:33:31 +08:00
dekun aa966114b1 Fix settings and env config stuck on loading via SSR form render
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 20:24:15 +08:00
dekun 6975da8575 Fix settings loading and use 2-column card layout.
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>
2026-07-08 20:12:22 +08:00
dekun ef4b2f17ca Add instance nav prefs, env config UI, and PM2 restart.
P1-P4: configurable nav/section visibility in system settings, full .env editor with restart badges, password change, runtime hot overrides, and single-instance pm2 restart. Works in hub embed iframe.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 20:07:06 +08:00
dekun d84a265b67 Split risk policy into its own navigation tab.
Move read-only risk control docs to /risk_policy before settings; keep transfers and exports on the settings page.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 19:42:29 +08:00
dekun fd6391b734 Remove manual refresh funds button from header.
Account snapshot already refreshes automatically on load, interval, and tab switch.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 19:18:44 +08:00
dekun 0d27e13275 Fix header funds flicker and unify settings page top bar.
Preserve SSR fund values when account_snapshot returns null, retry on failure, and show the same instance header panel on system settings.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 19:08:08 +08:00
dekun 279648de56 Add hub TP profit field, 2-decimal options PnL, and exchange mark price display.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:22:26 +08:00
dekun e3e53ff7f5 Fix roll position display: live contracts, TP profit, and 2-decimal qty precision.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:06:33 +08:00
dekun 5ef6affabf Show initial and current roll position size plus rolling status on active roll groups table.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 16:45:32 +08:00
dekun f5f302b97e Add month/quarter/half-year/all list window presets with this month as default.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 11:22:29 +08:00
dekun 189b27e076 Add live expiry countdown for options positions on instance page and trading hub.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 11:14:30 +08:00
dekun f68197b775 Include options unrealized PnL in OKX instance header realtime PnL total.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 11:05:52 +08:00
dekun 75a64c5d24 Show premium paid on options position card and parse strike/type from instId when OKX omits them.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 10:40:07 +08:00
dekun 43fa1ad1f3 Show OTM options in chain even when ticker has no quotes.
Stop skipping contracts with empty ask, bid, and mark so out-of-the-money strikes remain visible in the list.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 07:28:11 +08:00
dekun 7f225c7407 Estimate missing option ask from mark or intrinsic on chain list.
Deep ITM contracts often have no ask on the book; show mark-based estimates with a tilde and restore breakeven calculations.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 17:50:25 +08:00
dekun 25879dd007 Show equivalent contract leverage on options order panel.
Display notional-over-premium leverage at current index and at the user target price for quick sizing comparison.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:58:25 +08:00
dekun 27921213b0 Add expiry profit estimate and remove chain quick-buy button.
Let users enter a target index in the order panel for estimated expiry P&L, and remove the redundant buy button from the options chain row.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:46:21 +08:00
dekun 2cfc1a490f Show bid/ask liquidity as price per sheet in options chain.
Display OKX askSz and bidSz beside top-of-book prices in the chain table and order panel using price/sheets format.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:28:08 +08:00
dekun 99f13817f8 Add pre-buy expiry breakeven columns to options chain table.
Show estimated expiry balance and distance from index in the chain list and order panel using ask price before opening a position.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:21:22 +08:00
dekun 3570a6900e Add OKX options expiry and close breakeven to hub monitor and dashboard.
Expose bePx-based expiry balance and mark-to-close breakeven on positions so monitor and dashboard can show both labels per contract.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:10:03 +08:00
dekun 7bbb5663c9 Dashboard OKX card: 3-column perpetual/options split when options enabled.
Show perpetual and options funding metrics separately, total funds row, then positions; other exchanges keep the 2-column layout.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 15:22:11 +08:00
dekun 9027708a61 Fix monitor stats bar: full-width strip with centered cell text.
Revert whole-card centering; keep compact height and text-align center inside each stat mini-card.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:42:45 +08:00
dekun 299b20acc5 Hub monitor: compact centered today stats bar in options split layout.
Reduce stats card height and center the horizontal bar above the OKX / Binance-Gate columns.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:36:48 +08:00
dekun dda022d3c3 Hub monitor: OKX left column with dual inner cards when options enabled.
Use a stats bar plus left OKX / right Binance+Gate split layout with equal-height inner perpetual and options cards and no in-card scrolling.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:33:13 +08:00
dekun 5e66600727 Hub monitor card: split perpetual and options blocks when options enabled.
Show matching stat rows and position sections for each account type; keep the standard single-block layout for exchanges without options.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:17:48 +08:00
dekun 4a3afdfb48 Fix monitor board crash: avoid shadowing options_open_position_count helper.
Rename the imported counter function so aggregate_monitor_board_totals no longer overwrites it with an int accumulator.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:09:39 +08:00
dekun 3163912266 Hub funds and dashboard: include OKX options balances in USDT totals.
Merge options USDC/USDT at 1:1 into fund overview snapshots, dashboard aggregation, and monitor board totals while keeping a separate options breakdown in the UI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 13:06:01 +08:00
dekun 6cc3382526 Hub monitor: read-only OKX options positions aggregation (Phase B).
Expose /api/hub/options/snapshot from OKX instance and render options summary on hub monitor cards when the options capability is enabled.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:55:35 +08:00
dekun 11a50c02cd fix(theme): improve light mode contrast across instance and options pages
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:23:22 +08:00
dekun afb191f90a fix(theme): show toggle on standalone embed shell, not only hub iframe
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:18:18 +08:00
dekun b29c54f126 fix(settings): restore theme toggle on OKX settings page
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:14:46 +08:00
dekun 68d8a97db5 fix(settings): equal columns, form-style option transfers, compact export
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:09:12 +08:00
dekun 27a00f026a fix(settings): OKX side panel shell, compact option transfers without selects
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:43:56 +08:00
dekun 6c26d4739e fix(settings): horizontal export links and strict OKX side column height
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:35:36 +08:00
dekun 5680ab515e fix: stretch settings side cards to match left column height
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:29:14 +08:00
dekun 6571fc9029 fix: enable threaded Flask on binance/gate for SSE embed live push
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:24:17 +08:00
dekun 2ad9e049f3 fix(okx): cache options balances and stop SSE from hammering exchange API
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:15:06 +08:00
dekun 799a4d6b8b fix: enable threaded Flask for SSE and make embed tab switch instant
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:09:34 +08:00
dekun 3db84d07e3 feat: instance embed SSE live push and lighter tab revisit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 11:01:10 +08:00
dekun 444088baf3 fix: reduce embed tab flash with persistent pane show/hide
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 10:53:42 +08:00
dekun 86188e6611 fix: import urlencode from urllib.parse in embed redirect
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 10:48:38 +08:00
dekun 30e40dc34c perf: embed shell soft nav, tab cache, and lighter options page boot
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 10:42:01 +08:00
dekun 8913138dc3 style: tighten options page typography and spacing
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 10:35:00 +08:00