Update
This commit is contained in:
parent
080f626a22
commit
8d3205043e
|
|
@ -19,7 +19,6 @@ Scheduling (cron):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
import json
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
|
||||||
|
|
@ -76,8 +76,7 @@ class OptionsFlowScanner(BaseScanner):
|
||||||
|
|
||||||
with ThreadPoolExecutor(max_workers=self.max_workers) as pool:
|
with ThreadPoolExecutor(max_workers=self.max_workers) as pool:
|
||||||
futures = {
|
futures = {
|
||||||
pool.submit(self._analyze_ticker_options, ticker): ticker
|
pool.submit(self._analyze_ticker_options, ticker): ticker for ticker in universe
|
||||||
for ticker in universe
|
|
||||||
}
|
}
|
||||||
for future in as_completed(futures):
|
for future in as_completed(futures):
|
||||||
try:
|
try:
|
||||||
|
|
|
||||||
|
|
@ -43,15 +43,9 @@ def render() -> None:
|
||||||
# Weighted averages only over strategies that have evaluated data (non-NaN)
|
# Weighted averages only over strategies that have evaluated data (non-NaN)
|
||||||
eval_df = df.dropna(subset=["Win Rate", "Avg Return"])
|
eval_df = df.dropna(subset=["Win Rate", "Avg Return"])
|
||||||
eval_trades = eval_df["Count"].sum()
|
eval_trades = eval_df["Count"].sum()
|
||||||
avg_wr = (
|
avg_wr = (eval_df["Win Rate"] * eval_df["Count"]).sum() / eval_trades if eval_trades > 0 else 0
|
||||||
(eval_df["Win Rate"] * eval_df["Count"]).sum() / eval_trades
|
|
||||||
if eval_trades > 0
|
|
||||||
else 0
|
|
||||||
)
|
|
||||||
avg_ret = (
|
avg_ret = (
|
||||||
(eval_df["Avg Return"] * eval_df["Count"]).sum() / eval_trades
|
(eval_df["Avg Return"] * eval_df["Count"]).sum() / eval_trades if eval_trades > 0 else 0
|
||||||
if eval_trades > 0
|
|
||||||
else 0
|
|
||||||
)
|
)
|
||||||
n_strategies = len(df)
|
n_strategies = len(df)
|
||||||
|
|
||||||
|
|
@ -358,8 +352,7 @@ def _render_recommendation_history(template: dict) -> None:
|
||||||
# ---- Full history table ----
|
# ---- Full history table ----
|
||||||
st.markdown("<div style='height:1rem;'></div>", unsafe_allow_html=True)
|
st.markdown("<div style='height:1rem;'></div>", unsafe_allow_html=True)
|
||||||
st.markdown(
|
st.markdown(
|
||||||
'<div class="section-title">All Picks '
|
'<div class="section-title">All Picks ' '<span class="accent">// detail table</span></div>',
|
||||||
'<span class="accent">// detail table</span></div>',
|
|
||||||
unsafe_allow_html=True,
|
unsafe_allow_html=True,
|
||||||
)
|
)
|
||||||
_render_history_table(filtered)
|
_render_history_table(filtered)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue