diff options
author | uvok | 2025-04-14 10:57:32 +0200 |
---|---|---|
committer | uvok | 2025-04-14 10:57:32 +0200 |
commit | b87a5ca320675a75ea8c8896e1747899b0e21d39 (patch) | |
tree | ad6540e1edb82d10585cd5a5fbc5d7253f0f8f38 | |
parent | a144573a61b618f5dea475e3919d443229f2bbbd (diff) |
Fix program run
-rw-r--r-- | bla.py | 16 |
1 files changed, 9 insertions, 7 deletions
@@ -2,6 +2,7 @@ import csv from collections import defaultdict from datetime import datetime +from trade import Trade from trade_queue import FIFOQueue @@ -9,15 +10,16 @@ def generate_report(sale_entries, proceeds, crypto_asset, date_sold): report = [] sell_date = datetime.strptime(date_sold, "%Y-%m-%d").strftime("%d.%m.%Y") - for amount, cost, buy_date in sale_entries: - buy_date_formatted = datetime.strptime(buy_date, "%Y-%m-%d").strftime("%d.%m.%Y") - holding_period = (datetime.strptime(date_sold, "%Y-%m-%d") - datetime.strptime(buy_date, "%Y-%m-%d")).days + trade: Trade + for trade in sale_entries: + buy_date_formatted = datetime.strptime(trade.date, "%Y-%m-%d").strftime("%d.%m.%Y") + holding_period = (datetime.strptime(date_sold, "%Y-%m-%d") - datetime.strptime(trade.date, "%Y-%m-%d")).days short_or_long = "Short" if holding_period < 365 else "Long" - cost_basis = cost - gain_or_loss = proceeds - cost_basis + total_cost = trade.total_cost + gain_or_loss = proceeds - total_cost report.append({ - "Amount": f"{amount:.8f}", + "Amount": f"{trade.amount:.8f}", "Currency": crypto_asset, "Date Sold": sell_date, "Date Acquired": buy_date_formatted, @@ -25,7 +27,7 @@ def generate_report(sale_entries, proceeds, crypto_asset, date_sold): "Buy/Input at": "Kraken", "Sell/Output at": "Kraken", "Proceeds": f"{proceeds:.2f}", - "Cost Basis": f"{cost_basis:.2f}", + "Cost Basis": f"{total_cost:.2f}", "Gain/Loss": f"{gain_or_loss:.2f}", }) |