Dark theme, persistent ticker, Heston calibration fix, and plain-English explanations#14
Merged
Merged
Conversation
Centralize column tooltips in app_lib (COLUMN_HELP + column_help) and wire them into every data table — options chain, SVI surface params, strategy candidates, POP-by-measure, screener, and backtest trades. Add help= tooltips to the headline metrics (Overview, Vol Diagnostics, Probability Lab, Backtester) and short "how to read" captions under the jargon-heavy tables and charts (cone, payoff, P&L surface, radar, SVI). https://claude.ai/code/session_01AXbuChtmt8Xo4cxEtKrady
Make the standalone playbook report self-explanatory: header tooltips and a visible "How to read this table" glossary (survives PDF export), plus a fix for the no-candidates colspan. Add a page caption explaining the report and its reproducible digest. Add a Glossary section to Assumptions & Disclaimers covering the volatility, probability, strategy, greek, surface, advanced-model and backtest terms used across the app. https://claude.ai/code/session_01AXbuChtmt8Xo4cxEtKrady
Strategy generation, payoff/scenario, the probability lab, GARCH, Heston/ PCA and the backtester all ship now; the old list contradicted the app. Document the real caveats instead: experimental gating, synthetic PCA/ backtest demos until snapshots accumulate, RV-proxy IV rank, and the flat risk-free rate. https://claude.ai/code/session_01AXbuChtmt8Xo4cxEtKrady
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A UX + correctness pass across the Streamlit app, plus one real quant bug fix.
.streamlit/config.toml+ injected CSS hooked intopage_headerso every page inherits it. Plotly figures get a matching dark template (gold/teal palette) inosl/viz/charts.py, rendered withtheme=Noneso the template wins over Streamlit's default.st.session_state, so a ticker set on one page carries across the whole app for the session.theta=0(Feller violated, ~11 vol-pt RMSE) on steep real skews. Replaced with a multi-start, bounded Levenberg-Marquardt that minimizes implied-vol error and seedsv0/thetafrom the ATM/median variance. Steep market-like surfaces drop from ~11 → ~0.5 vol pts; synthetic recovery stays at 0.008. The page also surfaces the Feller condition so stressed fits are visible.COLUMN_HELP+column_helpinapp_lib) on every data table;help=tooltips on headline metrics; "how to read" captions under jargon-heavy charts. The Playbook report carries header tooltips + a visible glossary (survives PDF export), and Assumptions & Disclaimers gains a central glossary.Test plan
uv run pytest— full suite green (197 tests)uv run mypy osl— cleanhttps://claude.ai/code/session_01AXbuChtmt8Xo4cxEtKrady
Generated by Claude Code