Commit Graph

84 Commits

Author SHA1 Message Date
dekun d1ab2d5172 Add options stats holding time metrics and lightweight charts.
Show average hold duration for wins and losses, open positions, and CSS ring/bar visualizations in the stats tab.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 11:32:45 +08:00
dekun 9f255f13dd Add ITM and OTM filter toggles to options chain.
Default to in-the-money view with at-the-money contracts included; update expiry counts and empty states for the active filter.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 11:25:24 +08:00
dekun b70ce510ef Add tabbed layout for options positions card.
Split current positions, stats, and history into tabs to save vertical space and improve readability.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 11:19:33 +08:00
dekun f99900ac40 Fix intermittent loss of options positions and realtime PnL on refresh.
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>
2026-07-09 18:09:58 +08:00
dekun 5a97e14f3e Fix false options close sync, restore bar layout, and show open premium in history.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 17:51:07 +08:00
dekun 08a61fd4ae Tighten options position bar grouping and compact history table status layout.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 17:43:24 +08:00
dekun af7a397816 Fix options position bar layout so Put badge and contract id display on one line.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 17:37:24 +08:00
dekun 3d11b91869 Expand options position card inline below the clicked bar.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 17:06:22 +08:00
dekun ff83f6eebc Refine options position accordion: default collapsed, 2dp PnL, card outside scroll.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 17:00:06 +08:00
dekun f41af0bf1c Improve OKX options sizing, expiry sync, and multi-position accordion UI.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 16:51:48 +08:00
dekun 9eb10ba771 Align risk policy cards per row with equal-height stretch in 2x2 grid.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 10:21:25 +08:00
dekun db8a9296a7 Fix risk policy layout to 2x2 grid with content-based card heights.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 10:17:15 +08:00
dekun f4361e3eeb Make risk policy cards responsive with auto-fit grid layout.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 10:09:49 +08:00
dekun d3a44b23db Split journal order type from entry reason and fix review edit toggle in embed shell.
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>
2026-07-09 09:27:03 +08:00
dekun 4abe8a6ca9 Fix instance settings prefs JS 404 on static route.
Register instance_settings_prefs.js (and options_panel.js) in install_instance_theme_static; add delegated click handlers for embed lazy tabs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 00:07:30 +08:00
dekun f5bdaee886 Fix instance nav display prefs save in embed shell.
Re-bind save button when settings tab loads lazily; scope form lookup to settings pane.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 23:58:06 +08:00
dekun b733e551a0 Normalize fullwidth punctuation to ASCII across codebase.
Add scripts/normalize_ambiguous_unicode.py; fix corrupted patch_instance_theme_templates.py. Preserves curly quotes in string literals; removes Git homoglyph warnings on .env.example.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 23:42:26 +08:00
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 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 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 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 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 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 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