Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions polymarket-endcycle-sniper-bot/exports/bot.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import asyncio
from dataclasses import dataclass, field
from datetime import datetime
from datetime import datetime, timezone
from decimal import Decimal
from typing import Optional

Expand All @@ -21,7 +21,7 @@
class BotStats:
"""Runtime statistics for the bot."""

started_at: datetime = field(default_factory=datetime.utcnow)
started_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc))
scan_cycles: int = 0
markets_scanned: int = 0
opportunities_found: int = 0
Expand Down Expand Up @@ -178,7 +178,7 @@ async def shutdown(self) -> None:

def _log_stats(self) -> None:
"""Log current statistics."""
runtime = datetime.utcnow() - self.stats.started_at
runtime = datetime.now(timezone.utc) - self.stats.started_at
hours = runtime.total_seconds() / 3600

log.info(
Expand All @@ -194,7 +194,7 @@ def _log_stats(self) -> None:

def get_stats(self) -> dict:
"""Get current statistics."""
runtime = datetime.utcnow() - self.stats.started_at
runtime = datetime.now(timezone.utc) - self.stats.started_at

return {
"runtime_seconds": runtime.total_seconds(),
Expand Down Expand Up @@ -303,7 +303,7 @@ async def _on_markets_loaded(self, markets: list) -> None:

async def _save_near_miss_alert(self, alert, min_required: Decimal) -> None:
"""Save an illiquid arbitrage alert to the database."""
from datetime import datetime, timezone
from datetime import datetime, timezone, timezone
from rarb.data.repositories import NearMissAlertRepository

try:
Expand All @@ -324,7 +324,7 @@ async def _save_near_miss_alert(self, alert, min_required: Decimal) -> None:

async def _save_insufficient_balance_alert(self, alert, required: Decimal, available: Decimal) -> None:
"""Save an alert for when balance is insufficient."""
from datetime import datetime, timezone
from datetime import datetime, timezone, timezone
from rarb.data.repositories import NearMissAlertRepository

try:
Expand Down Expand Up @@ -575,7 +575,7 @@ async def _auto_redemption_loop(self) -> None:

async def _stats_history_loop(self) -> None:
"""Background task that records hourly stats snapshots for charting."""
from datetime import datetime, timezone
from datetime import datetime, timezone, timezone
from rarb.data.repositories import StatsHistoryRepository

# Wait a bit before first record
Expand Down Expand Up @@ -624,7 +624,7 @@ async def _stats_history_loop(self) -> None:

async def _minute_stats_loop(self) -> None:
"""Background task that records minute-level price update stats."""
from datetime import datetime, timezone
from datetime import datetime, timezone, timezone
from rarb.data.repositories import MinuteStatsRepository

# Wait a bit before first record
Expand Down Expand Up @@ -828,7 +828,7 @@ async def shutdown(self) -> None:

def _log_stats(self) -> None:
"""Log statistics."""
runtime = datetime.utcnow() - self.stats.started_at
runtime = datetime.now(timezone.utc) - self.stats.started_at
hours = runtime.total_seconds() / 3600

scanner_stats = self.scanner.get_stats()
Expand Down
Empty file.
Loading