id: DISPLAY-002 title: GLD Mode Shows Real GLD Pricing status: done priority: P0 size: S depends_on: - DISPLAY-001 tags: [ui, gld-mode] summary: In GLD display mode, show real GLD share prices without conversion to physical gold. acceptance_criteria: - GLD mode shows position quantity as "shares" not "oz" - GLD mode shows position value as `shares × GLD_price` not converted to gold - Entry price shown as GLD share price at time of purchase - P&L calculated as `(current_GLD_price - entry_GLD_price) × shares` - LTV calculated using GLD position value as collateral - Options strike selection in GLD mode uses GLD share prices directly - Hedge cost shown as $/share or $/position, not $/oz implementation_notes: - Added `display_mode` field to PortfolioConfig (default: "XAU") - Created app/domain/conversions.py for display mode conversion utilities - Updated portfolio_math.py to respect display_mode in spot resolution and snapshots - Updated overview.py to show share prices/units in GLD mode - Updated hedge.py to show share prices/units in GLD mode - Updated settings.py to allow display mode selection - Added tests/test_display_mode.py with comprehensive test coverage - Default display mode remains "XAU" to preserve existing behavior - GLD mode short-circuits conversion logic, showing share prices directly completed: 2026-03-28