from pathlib import Path from pydantic_settings import BaseSettings, SettingsConfigDict ROOT_DIR = Path(__file__).resolve().parents[2] class Settings(BaseSettings): model_config = SettingsConfigDict( env_file=str(ROOT_DIR / ".env"), env_file_encoding="utf-8", extra="ignore", ) wecom_webhook_url: str = "" binance_fapi_base: str = "https://fapi.binance.com" top_n: int = 30 volume_threshold: float = 10_000_000 change_threshold: float = 5.0 refresh_minutes: int = 5 host: str = "127.0.0.1" port: int = 8000 db_path: str = str(ROOT_DIR / "data" / "monitor.db") max_concurrency: int = 20 # 代理默认关闭;仅当 PROXY_ENABLED=true 时生效 proxy_enabled: bool = False proxy_url: str = "socks5h://192.168.8.4:1081" proxy_for: str = "binance" # binance | wecom | all settings = Settings()