updated dashboard
All checks were successful
Deployment / deploy-docker (push) Successful in 16s

This commit is contained in:
Melchior Reimers
2026-01-27 11:30:50 +01:00
parent 228212cbab
commit 01f4c23f51
6 changed files with 65 additions and 20 deletions

View File

@@ -129,16 +129,16 @@ def run_task(historical=False):
logger.info(f"No trades fetched from {exchange.name}.")
continue
# Hash-basierte Deduplizierung
# Hole existierende Hashes für Trades ab dem ältesten neuen Trade
# Hash-basierte Deduplizierung - IMMER prüfen!
oldest_trade_ts = min(t.timestamp for t in trades)
newest_trade_ts = max(t.timestamp for t in trades)
# Nur prüfen wenn wir nicht einen komplett historischen Sync machen
if last_ts > datetime.datetime.min.replace(tzinfo=datetime.timezone.utc):
# Hole Hashes der letzten 7 Tage für diese Exchange
check_since = oldest_trade_ts - datetime.timedelta(days=1)
existing_hashes = get_existing_trade_hashes(db_url, exchange.name, check_since)
logger.info(f"Found {len(existing_hashes)} existing trade hashes in DB")
# Hole Hashes für den Zeitraum der neuen Trades (plus 1 Tag Puffer)
check_since = oldest_trade_ts - datetime.timedelta(days=1)
existing_hashes = get_existing_trade_hashes(db_url, exchange.name, check_since)
if existing_hashes:
logger.info(f"Found {len(existing_hashes)} existing trade hashes in DB for period")
# Filtere nur wirklich neue Trades
new_trades = []
@@ -147,7 +147,8 @@ def run_task(historical=False):
if trade_hash not in existing_hashes:
new_trades.append(t)
else:
# Historischer Sync - keine Deduplizierung nötig
# Keine existierenden Hashes gefunden - alle Trades sind neu
logger.info(f"No existing hashes found - all trades are new")
new_trades = trades
logger.info(f"Found {len(trades)} total trades, {len(new_trades)} are new.")