Builds the implied-vol smile from the three standard FX market quotes
(ATM delta-neutral straddle, 25-delta risk reversal, 25-delta butterfly)
using Castagna & Mercurio's second-order Vanna-Volga approximation, and
reprices each portfolio leg off the smile vs the flat vol.
- backend: core/vanna_volga.py (delta->strike, DNS ATM, VV smile) and
POST /api/smile
- frontend: new "Vol Smile" dashboard tab with quote inputs, smile
chart, pillar table and smile-vs-flat leg repricing
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FpiqUMAyo4RL5DdQHMWbwE
Adds a workflow that pings the repo owner on each daily Claude PR and
acts on their reply: "approve" merges it, "reject: <reason>" closes it
with the reason recorded and a "rejected" label.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FpiqUMAyo4RL5DdQHMWbwE