Update app.py
Browse files
app.py
CHANGED
|
@@ -332,25 +332,33 @@ if selected_exp_date:
|
|
| 332 |
# ... (Filterlogik bleibt gleich) ...
|
| 333 |
filtered_df = calculated_df_unfiltered.copy()
|
| 334 |
filtered_df = filtered_df[
|
| 335 |
-
|
| 336 |
-
|
| 337 |
-
|
| 338 |
-
|
| 339 |
-
|
| 340 |
-
|
| 341 |
-
|
| 342 |
-
|
| 343 |
-
|
| 344 |
-
|
| 345 |
-
|
| 346 |
-
|
| 347 |
-
|
| 348 |
-
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 354 |
|
| 355 |
if not cols_to_display_final:
|
| 356 |
st.warning("Keine gültigen Spalten zur Anzeige ausgewählt oder in den Daten vorhanden.")
|
|
|
|
| 332 |
# ... (Filterlogik bleibt gleich) ...
|
| 333 |
filtered_df = calculated_df_unfiltered.copy()
|
| 334 |
filtered_df = filtered_df[
|
| 335 |
+
filtered_df['annualizedReturnPercentNet'].between(st.session_state.min_annual_return_filter, st.session_state.max_annual_return_filter, inclusive='both') |
|
| 336 |
+
filtered_df['annualizedReturnPercentNet'].isna()
|
| 337 |
+
]
|
| 338 |
+
filtered_df = filtered_df[
|
| 339 |
+
filtered_df['delta'].between(st.session_state.min_delta_filter, st.session_state.max_delta_filter, inclusive='both') |
|
| 340 |
+
filtered_df['delta'].isna()
|
| 341 |
+
]
|
| 342 |
+
|
| 343 |
+
|
| 344 |
+
# --- Tabelle Anzeigen ---
|
| 345 |
+
st.markdown(f"###### Call-Optionen für {datetime.strptime(selected_exp_date, '%Y-%m-%d').strftime('%d. %B %Y')} ({len(filtered_df)} angezeigt)")
|
| 346 |
+
|
| 347 |
+
# --- HIER die Spaltenauswahl-Logik korrigieren ---
|
| 348 |
+
# 1. Definiere die Mapping-Tabelle (ist schon weiter oben im Code, stellen wir sicher)
|
| 349 |
+
# display_columns = { ... } # Diese Definition sollte nach der Währungsbestimmung erfolgen
|
| 350 |
+
|
| 351 |
+
# 2. Finde die originalen Schlüssel für die vom Benutzer ausgewählten Anzeigenamen
|
| 352 |
+
selected_display_names = st.session_state.selected_columns
|
| 353 |
+
original_cols_keys_to_display = [
|
| 354 |
+
key for key, value in display_columns.items() if value in selected_display_names
|
| 355 |
+
]
|
| 356 |
+
|
| 357 |
+
# 3. Prüfe, welche dieser originalen Schlüssel tatsächlich im gefilterten DataFrame existieren
|
| 358 |
+
cols_to_display_final = [
|
| 359 |
+
col for col in original_cols_keys_to_display if col in filtered_df.columns
|
| 360 |
+
]
|
| 361 |
+
# --- Ende Korrektur Spaltenauswahl ---
|
| 362 |
|
| 363 |
if not cols_to_display_final:
|
| 364 |
st.warning("Keine gültigen Spalten zur Anzeige ausgewählt oder in den Daten vorhanden.")
|