作 者:老余捞鱼
原创不易,转载请标明出处及原作者。

文中示例仅用于技术讨论,不构成任何操作建议。
量化策略开发应以学习和技术交流为目的。
本号不荐股、不卖课、不承诺收益。
市场有风险,请合法合规投资。
本文约 2600 字 | 预计阅读 7 分钟,前半是介绍和安装,后半有踩坑实录和修复代码,建议先收藏。
· · ·
一、这是个什么东西
在 GitHub 上看到一个叫 PanWatch 的开源项目,中文名【盯盘侠】,目前1000 星,225 次复刻,今年的新项目,最近一次提交在发文前一天。MIT 协议,代码随便看随便改,最关键的一条,完全免费。

它干的活一句话能说完。把一个盯盘台装进你自己的电脑或者服务器,浏览器打开就是。A 股、港股、美股的行情在一个页面里,持仓、关注、价格提醒、AI 分析围着它转。数据源自带 26 个,第一次启动自动初始化。我装完打开,行情已经是真实的收盘数据。

盯盘这件事它盯到多细,举一个例子。价格提醒可以设冷却时间、每日上限、交易时段门禁。三条约束套上去,通知就不会在半夜轰炸你。推送走 apprise 这个通道,微信、飞书、钉钉、Telegram 都能接,不绑死任何一家。
真正的卖点在后端。它内置了大名鼎鼎的 TradingAgents 这个多 Agent 框架。你让它分析一只股票,后端会派出好几个角色分头干活。有人读基本面,有人翻新闻,有人看情绪,各写一份报告再汇总成一份结论。像一个研究小组替你值班,你只看会议纪要。
这类项目 GitHub 上不少,多数停在 demo 阶段。这个能攒到 1000 星,我装完之后理解了,它把散户要的每一块都拼齐了,不是只会画 K 线的壳子。
二、我实测的结果,先给答案
交代一下环境。Windows 11,没上 Docker,Python 虚拟环境加前端构建,全程一个端口。装完用浏览器打开本地 8000 端口就能用。
完成基础配置后,打开首页,第一眼是指数排成一行。上证 3911.87 涨 0.94%,深成指涨 1.72%,创业板指涨 2.25%,恒指和纳指各占一个位置。当时是周末,行情停在周五收盘,这恰好说明数据是真的,是可用的系统。

下面是板块热榜。医疗服务涨 6.72% 排第一,半导体设备涨 4.83%,光伏加工设备涨 4.52% 排在后面。关注列表预置了 5 只示例股,茅台 1257.12、比亚迪 84.30、宁德时代 301.95、腾讯 419.00、苹果 336.13。每只后面还挂着一个 AI 建议徽章。

我把七个页面挨个点了一遍。持仓页分 A 股、港股、美股三个区块。点宁德时代那一行,会弹出配置监控 Agent 的对话框。分析频率、提醒条件都在里面调。机会页是 AI 评分选股,每只票一个分数。模拟盘预设 100 万本金,不动真钱就能把整套流程跑一遍。

| 模块 | 我看到的 |
|---|---|
| 行情 | A股港股美股同屏,指数加板块热榜,真实收盘数据 |
| 关注与持仓 | 三个市场分区,AI 建议徽章挂在每只票后面 |
| 价格提醒 | 冷却时间、每日上限、交易时段门禁三层约束 |
| 机会页 | AI 评分选股,每只票一个分数 |
| 模拟盘 | 预设 100 万本金,不动真钱跑全流程 |
页面完整度和数据真实度都到位。行情、提醒、模拟盘这几条链路,我实测是通的。AI 分析链需要自己配一个大模型的 API Key,国产的 DeepSeek、通义、Kimi 都能接。
三、怎么装,一句话的事
这套东西我是在 WorkBuddy 里装起来的,把下面这段话原样发给它,剩下的它全包。
帮我把 GitHub 上的开源项目 PanWatch 部署到我这台电脑上。
项目地址 https://github.com/TNT-Likely/PanWatch
后端用 Python,前端构建好交给服务托管,一个端口就够。
装完启动,告诉我浏览器打开的地址。它会自己拉代码、装依赖、构建前端、启动服务。装依赖这步最花时间,一个名字拖下来一百多个包,我这边跑了一个半小时,泡杯茶回来刚好。中途它在依赖路径上栽了一下,自己看了眼报错换个目录重跑,一次过,细节不用你管。
装完它会给你一个本地地址,浏览器打开,注册个账号就能用。想用 AI 分析,在设置里填一个大模型的 API Key,国产的 DeepSeek、通义、Kimi 都认。全套内存占用不大,家里旧笔记本、NAS、最低配的云服务器都跑得动。
四、装好之后怎么用
先说平时怎么打开。每次开机想用它,打开WorkBuddy说一句”帮我把 PanWatch 启动起来”,敲完命令,你点开浏览器的本地地址,盯盘台就回来了。想更省事,让它顺手写个双击启动的脚本放桌面,以后连这句话都省。
再看我的用法,分三步,围绕一个原则,让它值班,我做决策。
先把要盯的票喂进关注列表。A 股、港股、美股混着加都行,行情源自动跟上,每只票后面挂 AI 建议徽章。
第二步设价格提醒。每只票可以挂多条规则,价格到了、涨跌幅度超了、成交量异常都能设。触发后按你选的通道推出去。冷却时间和每日上限默认就有,这个设计我给好评,盯盘工具最容易犯的错就是把人吵死。

第三步交给 AI。对关注里的某只票发起分析,后端的多 Agent 开工,几分钟给一份带结论的报告。我建议放在收盘后跑。盘中变化快,报告出来时价格可能已经是另一个故事。

模拟盘值得一提。预设 100 万本金,想验证一个想法又不想动真钱,先在模拟盘过一遍流程,把提醒和推送链路都跑熟。
以上是普通读者的部分,装上就能用。往下是动手部分,写给想把这套东西部署稳、或者跟我一样在 Windows 上栽过跟头的人。
五、进阶,两个坑,一句话摆平
第一个坑我压根没看见。项目里有四个本地依赖包用相对路径声明,脱离项目目录执行就会报错。WorkBuddy 第一把没跑通,自己看了眼报错,切回项目目录重跑,一次过。这是我事后翻它的执行记录才知道的。把活交给 AI 有个隐性好处,小坑它自己兜,不吵你。
第二个坑我看见了,因为页面就摊在浏览器里。Windows 自托管的经典问题,样式全丢。
内容都在,样式一概没有,整个页面是裸 HTML。开发者工具看网络面板,CSS 请求状态码 200,文件内容也在。点进一条样式规则看,零条。浏览器收到了文件,一条都没解析。
我是这么跟 WorkBuddy 描述的。
我本地部署的 PanWatch 页面样式全丢了。HTML 内容都在,CSS 请求状态码 200 但一条规则都没生效,帮我排查。它顺着响应头查下去,Content-Type 一栏写着 application/x-css。这不是一个真实存在的 MIME 类型。浏览器对样式表的要求很死,类型不是 text/css 就整份拒绝。所以才有了状态码正常、文件正常、样式全丢的怪象。
根子在 Windows 注册表。某个软件安装时把 .css 后缀的 MIME 映射改成了 x-css。Python 的 mimetypes 模块启动时会读注册表,把这份污染原样带给 FastAPI,响应头里就写上了它。Linux 和 Mac 上不会遇到,这是 Windows 独有的坑。
它的修复只要五行,在 server.py 头部显式注册正确类型。
六、动手区,修复代码
这段是 WorkBuddy 改完之后我留下来核对用的。你要是不用 AI 代跑,或者在自己的服务器上遇到同样的病,抄走直接用。
① server.py 头部加五行
import mimetypes
# Windows 注册表的 .css 映射可能被污染,浏览器会整份拒绝样式表mimetypes.add_type("text/css", ".css")
mimetypes.add_type("application/javascript", ".js")
mimetypes.add_type("image/svg+xml", ".svg")
mimetypes.add_type("image/webp", ".webp")② 重启后验证
改完重启服务,开发者工具里 CSS 的响应头变成 text/css,样式立刻回来。这招不止救 PanWatch,所有 Windows 上自托管的 FastAPI、Flask 静态站,遇到样式全丢都是同一个病根。下次再遇到,把现象原样描述给 AI,多数时候比人翻文档快。
观点总结
PanWatch 把”盯”这件事自动化了。行情自动刷,价格到了自动推,AI 分析排队跑,你打开手机看一眼就够。它省下的是你反复刷新的那段时间,省不掉的是看到提醒之后怎么想。
这个定位值得记牢。盯盘助手的边界在”通知”两个字,通知之后的分析、判断、动手,全是你的事。工具把数据摆上桌,坐下来动筷子的还是你。所以回到标题那句话,别急着为盯盘软件付年费。先把这套免费方案装起来,不够用再考虑花钱,大概率够用。装它的提示词在第三节,复制就能用。
你一天解锁手机看几次行情?超过三次的,评论区报个数。
觉得有用的话,把这篇转给同样想省盯盘时间的朋友。
#AI盯盘 #开源项目 #PanWatch #WorkBuddy #Python量化 #FastAPI #A股 #港股 #美股 #盯盘助手 #GitHub开源 #自托管
本文为开源项目部署实测记录,不构成任何投资建议。AI 生成的分析内容仅供参考,不构成投资依据。市场有风险,投资需谨慎。
Be First to Comment