fix: Adjust open trades summary query to handle sell orders and filter zero total shares

This commit is contained in:
Bobby (aider) 2025-02-13 11:14:28 -08:00
parent abaf3ab855
commit 4bd9bd8c42

View File

@ -475,7 +475,10 @@ def get_open_trades_summary() -> dict:
query = """ query = """
SELECT SELECT
ticker, ticker,
sum(shares) as total_shares, sum(CASE
WHEN direction = 'sell' THEN -shares
ELSE shares
END) as total_shares,
avg(entry_price) as avg_entry_price, avg(entry_price) as avg_entry_price,
min(entry_date) as first_entry, min(entry_date) as first_entry,
max(entry_date) as last_entry, max(entry_date) as last_entry,
@ -484,6 +487,7 @@ def get_open_trades_summary() -> dict:
FROM stock_db.trades FROM stock_db.trades
WHERE exit_price IS NULL WHERE exit_price IS NULL
GROUP BY ticker GROUP BY ticker
HAVING total_shares > 0
ORDER BY ticker ASC ORDER BY ticker ASC
""" """
print(f"Executing summary query: {query}") # Debug print(f"Executing summary query: {query}") # Debug