Filter OKX positions-history to type 2/3/6, format premium and bid recovery to 2 decimals, and allow locally hiding rows via delete button.
Co-authored-by: Cursor <cursoragent@cursor.com>
Format prices by tickSz, move bid depth/recovery to card end with plain styling, and load option history from OKX positions-history instead of local DB.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>