Home
Softono
PanWatch

PanWatch

Open source MIT Python
351
Stars
104
Forks
31
Issues
7
Watchers
1 week
Last Commit

About PanWatch

PanWatch is a self-hosted AI-powered stock monitoring assistant that provides real-time tracking for A-shares, HK stocks, and US stocks. Designed for data privacy, it allows users to deploy locally via Docker, ensuring all portfolio and trading data remains secure without third-party exposure. The system integrates the TradingAgents multi-agent framework to deliver intelligent investment decisions. It employs four specialized AI analyst agents covering technicals, sentiment, news, and fundamentals to engage in debate, risk review, and final consensus-building before generating actionable strategies. Key features include pre-market analysis, real-time intraday monitoring with signal detection for indicators like RSI, KDJ, and MACD, and post-market daily reports. It supports comprehensive portfolio management across multiple brokerage accounts and trading styles. Users can set complex price alerts based on volume, percentage changes, and trend conditions. The platform offers full-channel notifications via Teleg

Platforms

Web Self-hosted

Languages

Python

Links

盯盘侠 PanWatch

自托管 AI 盯盘助手 · 集成 TradingAgents 多 Agent 投资决策 — A 股 / 港股 / 美股实时监控、持仓管理、智能分析、全渠道推送

GitHub stars Docker License: MIT Last commit

Dashboard

持仓管理 AI 建议
Portfolio Suggestion
移动端截图

💡 如果盯盘侠对你有帮助,点右上角 ⭐ Star 支持一下 —— 这是对开源项目最好的鼓励,也能让更多人发现它。

🧠 深度分析:TradingAgents 多 Agent 决策

接入 TradingAgents(76k+ star)多 Agent 投资决策框架,在持仓页点 🧠 图标即可触发:

  • 4 类分析师(技术 / 情绪 / 新闻 / 基本面) → 看多看空辩论风控审查PM 整合决策
  • 3-5 分钟输出完整推理链,结论同步推送到 Telegram / 微信 / 钉钉
  • 默认 deepseek-chat,单次 ~$0.05,月度预算可控
  • 配置指南:.docs/tradingagents/USER_GUIDE.md

为什么选择盯盘侠?

  • 数据私有 — 自托管部署,持仓数据不经过任何第三方
  • AI 原生 — 不是简单的指标堆砌,而是让 AI 理解你的持仓、风格和目标
  • 开箱即用 — Docker 一键部署,5 分钟完成配置

核心功能

智能 Agent 系统
Agent 触发时机 功能
盘前分析 每日开盘前 综合隔夜美股、新闻消息、技术形态,给出今日操作策略
盘中监测 交易时段实时 监控异动信号,RSI/KDJ/MACD 共振时推送提醒
盘后日报 每日收盘后 复盘当日走势,分析资金流向,规划次日操作
新闻速递 定时采集 抓取财经新闻,AI 筛选与持仓相关的重要信息
专业技术分析
  • 趋势指标:MA 多空排列、MACD 金叉死叉、布林带突破
  • 动量指标:RSI 超买超卖、KDJ 钝化与背离
  • 量价分析:量比异动、缩量回调、放量突破
  • 形态识别:锤子线、吞没形态、十字星等 K 线形态
  • 支撑压力:自动计算多级支撑位和压力位
多市场 & 多账户
  • 覆盖市场:A 股、港股、美股实时行情
  • 账户管理:支持多券商账户独立管理,汇总展示总资产
  • 交易风格:按短线/波段/长线分别设置,AI 建议更精准
全渠道通知

Telegram / 企业微信 / 钉钉 / 飞书 / Bark / 自定义 Webhook

价格提醒
  • 支持价格、涨跌幅、成交额、量比等条件组合(AND / OR)
  • 支持交易时段/全天生效、冷却时间、日触发上限、重复触发模式
  • 到期时间使用弹窗内日期面板 + HH:mm 输入,留空表示永不过期
  • 可按规则选择通知渠道,不选则走系统默认渠道

快速开始

docker run -d \
  --name panwatch \
  -p 8000:8000 \
  -v panwatch_data:/app/data \
  sunxiao0721/panwatch:latest

访问 http://localhost:8000,首次使用设置账号密码即可。

说明:镜像内已包含 Playwright 运行所需的系统依赖;Chromium 浏览器会在容器首次启动时自动下载并安装到挂载卷(默认 /app/data/playwright),首次启动可能需要几分钟且需要网络可达。

如果不需要截图等浏览器能力,可以在启动容器时设置 PLAYWRIGHT_SKIP_BROWSER_INSTALL=1 跳过首次 Chromium 下载/安装。

Docker Compose
version: '3.8'
services:
  panwatch:
    image: sunxiao0721/panwatch:latest
    container_name: panwatch
    ports:
      - "8000:8000"
    volumes:
      - panwatch_data:/app/data
    restart: unless-stopped

volumes:
  panwatch_data:
docker-compose up -d
环境变量
变量名 说明 默认值
AUTH_USERNAME 预设登录用户名 首次访问时设置
AUTH_PASSWORD 预设登录密码 首次访问时设置
JWT_SECRET JWT 签名密钥 自动生成
DATA_DIR 数据存储目录 ./data
TZ 应用时区(影响 Agent 调度触发时间与时间展示) Asia/Shanghai
PLAYWRIGHT_SKIP_BROWSER_INSTALL 跳过首次 Chromium 安装(不需要截图时可用) 未设置
LOG_LEVEL 控制台日志级别。默认 INFO(只输出业务事件 + 错误);排查问题时设 DEBUG 可看到调度心跳、采集过程等底层日志。UI 日志板始终保留完整记录,不受影响 INFO
HTTP_PROXY / HTTPS_PROXY / http_proxy 出站 HTTP 代理。三种配置方式任选其一: ① 启动前 export HTTP_PROXY=...;② .env 里写 http_proxy=http://host:port;③ UI「设置 → 全局 HTTP 代理」。三者优先级:外部环境变量 > UI > .env。生效后所有 httpx 客户端走代理。NO_PROXY 默认包含 localhost,127.0.0.1 未设置
首次配置
  1. 访问 Web 界面,设置登录账号
  2. 设置 → AI 服务商:配置 OpenAI 兼容 API(支持 OpenAI / 智谱 / DeepSeek / Ollama 等)
  3. 设置 → 通知渠道:添加 Telegram 或其他推送渠道
  4. 持仓 → 添加股票:添加自选股,启用对应 Agent
本地开发

环境要求:Python 3.10+ / Node.js 18+ / pnpm

# 一键开发(推荐)
make dev-api          # 启动后端(自动 venv+依赖,监听 :8000)
make dev-web          # 启动前端(自动 pnpm install,监听 :5183)

# 或手动
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
python server.py                              # 后端 :8000

cd frontend && pnpm install && pnpm dev       # 前端 :5183

前端 dev server 跑在 http://localhost:5183,并把 /api 代理到 127.0.0.1:8000。 前端用 :5183 而非默认 :5173,是为了和 BeeCount-Cloud 等本地常驻前端错开。

技术栈

后端:FastAPI / SQLAlchemy / APScheduler / OpenAI SDK

前端:React 18 / TypeScript / Tailwind CSS / shadcn/ui

发布(Docker 镜像)

本项目内置 GitHub Actions 发布流程:

  • 打 tag(例如 0.2.3)会自动构建并推送 Docker 镜像
    • sunxiao0721/panwatch:0.2.3
    • sunxiao0721/panwatch:latest
  • 也支持在 GitHub Actions 里手动触发(workflow_dispatch)指定版本号

需要在仓库 Secrets 中配置:

  • DOCKERHUB_USERNAME
  • DOCKERHUB_TOKEN

捐赠支持

如果你觉得 PanWatch 有帮助,欢迎请作者喝杯咖啡:

微信赞赏 支付宝

贡献

欢迎提交 Issue 和 PR!自定义 Agent 和数据源开发请参考 贡献指南。 社区交流(Telegram):t.me/panwatch

License

MIT