Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .Jules/palette.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
## 2024-04-05 - Add tooltips with concrete examples to statistical and financial parameters
**Learning:** Users often struggle with statistical/financial parameters like "quantiles", "basis points", or "ADV" unless concrete examples are provided in tooltips to map the abstract concept to a real-world value (e.g. 10 bps = 0.10%).
**Action:** Always include concrete examples in tooltips for statistical and financial parameters across all UI forms and dashboards to improve accessibility and comprehension.
29 changes: 24 additions & 5 deletions src/dashboard.py
Original file line number Diff line number Diff line change
Expand Up @@ -168,9 +168,15 @@ def get_cache_key(*args) -> str:
help="Lookback months for Momentum signal."
)
else:
factor_window = st.slider("Factor Beta Window (days)", 20, 252, 63, 7)
vol_window = st.slider("Regime Vol Window (days)", 10, 60, 21, 5)
adv_pct = st.slider("ADV Participation %", 0.01, 0.30, float(DEFAULT_ADV_PCT), 0.01)
factor_window = st.slider(
"Factor Beta Window (days)", 20, 252, 63, 7, help="Lookback window for beta calculations (e.g., 63 days = 3 months)."
)
vol_window = st.slider(
"Regime Vol Window (days)", 10, 60, 21, 5, help="Lookback window for volatility calculations (e.g., 21 days = 1 month)."
)
adv_pct = st.slider(
"ADV Participation %", 0.01, 0.30, float(DEFAULT_ADV_PCT), 0.01, help="Max participation in Average Daily Volume (e.g., 0.10 = 10% of ADV)."
)

st.markdown("---")
st.subheader("4. Research Rigor")
Expand All @@ -185,12 +191,25 @@ def get_cache_key(*args) -> str:
st.info("Using full-sample quantiles (exploratory mode)")

vol_q_high = st.slider(
"High Volatility Quantile", 0.5, 0.95, DEFAULT_VOL_QUANTILE_HIGH, 0.05
"High Volatility Quantile",
0.5,
0.95,
DEFAULT_VOL_QUANTILE_HIGH,
0.05,
help="Threshold for identifying high volatility regimes (e.g., 0.80 = top 20% most volatile days).",
)

if mode == "Single-Asset":
st.subheader("5. Backtest Settings")
bt_cost = st.number_input("Transaction Cost (bps)", value=DEFAULT_COST_BPS, step=1) / 10000
bt_cost = (
st.number_input(
"Transaction Cost (bps)",
value=DEFAULT_COST_BPS,
step=1,
help="Cost per trade in basis points (e.g., 10 bps = 0.10%).",
)
/ 10000
)
allow_short = st.checkbox("Allow Short Selling?", value=False)
else:
st.subheader("5. Alert Thresholds")
Expand Down
Loading