Files
SII-leiyu af5bbd0bce Replace HTTP polling with RTDS WebSocket for real-time trade monitoring
- Add rtds_client.py: persistent WebSocket connection to wss://ws-live-data.polymarket.com
  with auto-reconnect, heartbeat, and trade message parsing
- Rewrite trade_monitor.py: single WebSocket receives ALL trades in real-time,
  replacing per-market HTTP polling loops (zero missed trades, sub-second latency)
- Remove QPS rate limiter and per-market polling infrastructure (no longer needed)
- Update default LLM model to gemini-3.1-pro-preview
- Add websockets and python-socks dependencies

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-06 12:06:45 +08:00

50 lines
1.0 KiB
TOML

[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "polymarket-whale-watcher"
version = "0.1.0"
description = "AI-powered whale trade detection and analysis bot for Polymarket"
readme = "README.md"
requires-python = ">=3.10"
license = {text = "MIT"}
dependencies = [
"httpx>=0.27.0",
"websockets>=13.0",
"python-socks[asyncio]>=2.0.0",
"pydantic>=2.0.0",
"pydantic-settings>=2.0.0",
"python-dotenv>=1.0.0",
"openai>=1.0.0",
"rich>=13.0.0",
"typer>=0.9.0",
"duckduckgo-search>=7.0.0",
"telethon>=1.36.0",
"fastapi>=0.100.0",
"uvicorn>=0.20.0",
]
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.23.0",
"ruff>=0.1.0",
"mypy>=1.0.0",
]
[project.scripts]
whale-watcher = "src.main:main"
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = ["E", "F", "I", "W"]
[tool.mypy]
python_version = "3.10"
warn_return_any = true
warn_unused_configs = true