【原创】股票实时预警助手
资源介绍
股票实时预警助手 · 使用说明
本程序是一款基于
.NET 8(WinForms + AntdUI)的股票实时预警助手:支持添加自选股、设置下限/上限预警价、在交易时段弹出预警通知、企业微信推送、临时记事本,以及价格/补仓等计算小工具,并内置基于 WebView2 的网页行情浏览器。


双击 上限或下限列可以设置新值




一、运行环境要求
| 项目 | 说明 |
|---|---|
| 操作系统 | Windows 10 / 11(仅支持x86 / x64,不支持 ARM64、Linux、macOS) |
| .NET 运行时 | 若发布版本为「非自包含」,需安装**.NET 8 Desktop Runtime**(含 WinForms) |
| WebView2 运行时 | 必须安装Microsoft Edge WebView2 Runtime(内置浏览器依赖,见下方下载) |
| 网络 | 行情刷新、节假日判断、企业微信推送需要联网 |
WebView2 运行库下载(电脑需安装)
内置浏览器使用 Edge WebView2 内核,未安装运行库时浏览器控件会报错,请提前安装:
- 官方下载页(含引导安装器与独立安装包): https://developer.microsoft.com/zh-cn/microsoft-edge/webview2/
- Evergreen 引导式在线安装器(推荐,自动匹配系统位数): https://go.microsoft.com/fwlink/p/?LinkId=2124703
- 独立离线安装包(x64):https://go.microsoft.com/fwlink/p/?LinkId=2124704
- 独立离线安装包(x86):https://go.microsoft.com/fwlink/p/?LinkId=2124705
安装后重启本程序即可正常加载内置浏览器。
二、安装与启动
- 将
publish发布文件夹整体解压到任意目录(如D:\stockMonitor\)。 - 双击
stockMonitor.exe启动。程序会在自身目录(即stockMonitor.exe所在目录)生成/读取以下文件:
| 文件 | 作用 |
|---|---|
monitored_stocks.json |
监控股票列表(代码、名称、预警价等),自动保存 |
notepad_content.txt |
临时记事本内容,自动保存 |
alerts.log |
预警触发记录日志 |
appsettings.json |
程序配置(含企业微信推送凭据) |
sounds\ |
预警提示音(.wav) |
绿色单文件风格:直接复制整个文件夹到别的电脑即可使用,无需安装。
三、主界面与监控列表
主界面以表格(AntdUI Table)展示监控股票,主要列:
- 代码 / 名称:股票标识(6 位代码)与名称。
- 现价:实时刷新的当前价格。
- 下限预警价:当现价 ≤ 该值 时触发「低于下限」预警。
- 上限预警价:当现价 ≥ 该值 时触发「高于上限」预警(ETF 显示 3 位小数)。
- 状态:是否正常监控 / 是否处于预警区间等。
预警逻辑:
现价 ≤ 下限预警价或现价 ≥ 上限预警价即视为触发;只有现价落在(下限, 上限)区间内时才不报警。
四、添加 / 删除股票
- 在添加区输入:
- 6 位股票代码(如
600519); - 股票名称;
- 下限预警价(提示「下限预警价」);
- 上限预警价(提示「上限预警价」)。
- 点击添加按钮,股票即进入监控列表,并开始实时刷新与预警检测。
- 删除操作在列表中选择对应行后移除(按程序内按钮/菜单)。
添加成功后会提示:已添加监控:{名称}({代码})下限预警价:{下限},上限预警值:{上限}。
五、修改预警值(下限 / 上限)
两种方式:
- 添加时直接填写:在添加区的「下限预警价 / 上限预警价」输入框中填写。
- 在表格中直接改(最常用):
- 双击表格中的「下限预警价」或「上限预警价」单元格,会弹出数字输入框(
InputNumber); - 修改后回车确认即可,列表会自动更新并保存。
- ETF 品种的上限预警价支持 3 位小数,普通股票为 2 位小数。
输入时程序会校验数值合法性,非法字符/格式会被自动拒绝或回退到上次有效值。
六、预警触发与交易时间
1. 交易时段判定
预警 仅在交易时段内 触发,由 IsTradeTime() 控制:
- 工作日(周一至周五,排除周末);
- 上午:
09:15 - 11:30(含约 10 秒缓冲,用于收盘刷新); - 下午:
13:00 - 15:00(含约 10 秒缓冲); - 法定节假日通过聚合数据接口判断,节假日同样不触发。
非交易时段顶部状态栏会显示「当前为非交易时段」。
2. 触发表现
当某只股票满足条件时,会同时产生以下反馈:
- 桌面通知:屏幕右上角弹出 AntdUI 通知(
TType.Warn),内容示例:股票 贵州茅台(600519) 低于下限预警!当前价:xxx 范围:下限 -- 上限 - 默认 15 秒自动关闭;勾选「自动关闭」开关后则常驻不关闭。
- 声音提示:播放
sounds\下的提示音(.wav)。 - 5 分钟静默期:同一只股票触发后 5 分钟内 不会重复弹窗/推送(避免刷屏),计时结束后再次触发才会提醒。
- 企业微信推送:自动推送预警消息(见第十二节)。
- 本地日志:写入
alerts.log备查。
七、临时记事本
主界面集成了临时记事本:
- 输入任意备忘内容;
- 按
Ctrl + S立即保存到程序目录的notepad_content.txt; - 关闭程序时自动保存;
- 下次启动自动加载上次内容。
适合随手记录操作计划、关注点等,数据仅保存在本机。
八、计算小工具(仅供参考)
程序内置两个实用计算工具:
1. 价格 ⇄ 涨跌幅
- 模式一(按百分比算价格):勾选「启用百分比」,输入当前价与涨跌幅%(如
10表示 +10%),点击计算 → 得到目标价:目标价 = 当前价 × (1 + 涨跌幅% / 100) - 模式二(按价格算涨跌幅):不勾选百分比,输入当前价与目标价,点击计算 → 得到涨跌幅%:
涨跌幅% = (目标价 - 当前价) / 当前价 × 100(自动带正负号)
2. 补仓计算器
用于计算「把成本价摊低到目标值」需要补多少仓:
| 输入 | 含义 | 约束 |
|---|---|---|
| 现价 | 当前市价 P |
> 0 |
| 当前成本价 | 现有持仓成本 C |
> 0 |
| 持仓数量 | 现有持股 H(股) |
> 0,整数 |
| 目标成本价 | 希望摊薄到的成本 T |
> 0,且 T < C,且 现价 P < T |
- 补仓股数公式:
X = H × (T - C) / (P - T)(分子分母均为负,结果为正;表示需要再买入的股数) - 结果向上取整到 100 股(A 股最小交易单位 100 股);
- 同时输出补仓金额 = 取整后股数 × 现价,以及当前持仓金额;
- 逻辑不合理(如目标成本 ≥ 当前成本、现价 ≥ 目标成本)会给出警示。
九、内置浏览器(WebView2)
程序内置基于 Microsoft Edge WebView2 的浏览器控件(webView21),并预留 AI 助手标签页(webView22):
- 可打开网页行情、资讯等页面;
- 内置去除页面广告的脚本(如百度系页面);
- 右键菜单可快速跳转 上证成指 / 深证成指 / 恒生指数 等指数页面;
- 关于对话框可查看当前 WebView2 内核版本(
BrowserVersionString)。
浏览器依赖 WebView2 运行库,请按「第一节」安装;若打开页面报与 WebView2 相关错误,多为运行库未安装或版本过旧。
十、界面个性化设置
| 功能 | 控件 | 说明 |
|---|---|---|
| 亮 / 暗模式 | 切换浅色 / 深色主题 | |
| 窗口置顶 | 让窗口始终显示在最前 | |
| 透明度 | 拖动调节窗口不透明度(Opacity = 值/100) |
|
| 水印 | 窗体水印开关 | |
| 图表平滑 | 走势图是否启用平滑曲线 | |
| AI 助手 | 是否启用内置 AI 助手标签页 | |
| WebView2 标签页 | 浏览器是否以标签页形式嵌入 |
十一、企业微信推送配置
预警消息可推送到企业微信(通过 WxPusher 接口,凭据写在 appsettings.json 的 WxWork 节点):
{
"WxWork": {
"CorpId": "你的企业ID",
"AgentId": "应用AgentId",
"Secret": "应用Secret"
}
}
- 默认推送给
@all(所有人); - 可在界面的「微信用户ID」输入框填写指定接收人,留空则发全部;
- 提供测试推送按钮,可向填写的接收人发送一条测试消息验证配置是否生效;
- 推送内容为 Markdown 格式的预警摘要。
⚠️
appsettings.json含有企业微信凭据,请勿随意外发或提交到公开仓库。
十二、常见问题(FAQ)
Q1:内置浏览器打不开 / 报错? A:多半是未安装 WebView2 运行库。请到第一节提供的地址安装 Evergreen 运行库后重启程序。
Q2:界面中文乱码? A:程序启动时已注册 GB2312 编码(Program.cs),正常情况下中文显示正常;若仍乱码,请确认系统区域设置支持中文,并以正常方式启动 stockMonitor.exe。
Q3:为什么非交易时间不弹预警? A:预警仅在交易时段(工作日 9:15-11:30、13:00-15:00,排除周末与法定节假日)触发,属正常设计。
Q4:同一只股票一直报警? A:同一股票触发后进入 5 分钟静默期,期间不重复弹窗/推送;若持续处于预警区间,静默期结束后会再次提醒。
Q5:监控列表 / 记事本数据存哪了? A:均在 stockMonitor.exe 所在目录:monitored_stocks.json(监控列表)、notepad_content.txt(记事本)、alerts.log(预警日志),均为本机本地文件。
说明:附件下载为应用程序,非源码!
免责声明
根据我国《计算机软件保护条例》第十七条规定:“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24小时之内删除,否则后果均由用户承担责任。