3.6 KiB
3.6 KiB
盘中异动雷达功能说明
功能概述
盘中异动雷达是Blackdata股票终端的实时监控模块,能够在交易时间内自动检测市场异动并推送提醒。
监控类型
1. 快速拉升(surge)
- 触发条件:股价涨幅 ≥ 3%
- 检测频率:每60秒
- 数据源:实时涨幅榜前50
2. 放量突破(volume_break)
- 触发条件:
- 量比 ≥ 3
- 价格上涨
- 突破关键位(60日分位 ≥ 95% 或突破MA20)
- 检测频率:每60秒
- 数据源:stock_metrics 表
3. 涨停打开/炸板(limit_open)
- 触发条件:涨幅在 9.5% ~ 9.99% 之间
- 检测频率:每60秒
- 用途:捕捉涨停板打开的买入/卖出时机
4. 连板股追踪(consecutive)
- 触发条件:连续2个及以上交易日涨停
- 检测频率:每60秒
- 数据源:历史日线数据
5. 大单异动(big_order)
- 状态:功能保留,需要接入付费逐笔数据源
- 触发条件:单笔成交金额 ≥ 100万元
使用方法
自动监控(推荐)
系统会在交易时间(周一至周五 9:30-11:30, 13:00-15:00)每60秒自动扫描,检测到异动后:
- 自动写入
intraday_events表 - 自动推送到配置的通知渠道(邮件/微信)
手动操作
在前端"异动雷达"页面:
- 立即扫描:手动触发一次全市场扫描
- 推送异动:将未推送的异动事件立即推送
- 查看统计:查看今日各类异动的数量和最活跃股票
API 接口
GET /api/radar/status
检查雷达状态(是否交易时间)
POST /api/radar/scan
手动触发异动扫描
- 返回:扫描结果,包含检测到的异动数量
GET /api/radar/events
获取最近的异动事件
- 参数:
hours:时间范围(小时),默认2limit:最大返回数量,默认50
POST /api/radar/notify
推送未通知的异动
- 返回:推送结果
GET /api/radar/stats
获取异动统计
- 参数:
date:统计日期,默认今天
数据表结构
intraday_events
id SERIAL PRIMARY KEY
code VARCHAR(12) -- 股票代码
name VARCHAR(40) -- 股票名称
event_type VARCHAR(20) -- 事件类型
price FLOAT -- 触发时价格
pct FLOAT -- 涨跌幅
volume_ratio FLOAT -- 量比
amount FLOAT -- 金额(大单用)
description VARCHAR(200) -- 描述
detected_at TIMESTAMP -- 检测时间
notified BOOLEAN -- 是否已推送
推送配置
在 backend/.env 中配置以下任一渠道:
# SMTP 邮件
SMTP_HOST=smtp.example.com
SMTP_PORT=465
SMTP_USER=your@email.com
SMTP_PASSWORD=your_password
SMTP_TO=target@email.com
# Server酱(微信)
SERVERCHAN_KEY=your_key
# 企业微信
WECOM_WEBHOOK=https://qyapi.weixin.qq.com/...
# PushPlus
PUSHPLUS_TOKEN=your_token
注意事项
-
数据依赖:
- 需要先执行"数据中台"的入库操作
- stock_metrics 表需有最新数据
- 连板检测依赖历史日线数据
-
性能优化:
- 使用5分钟 TTL 缓存避免重复推送
- 非交易时间自动跳过检测
-
扩展方向:
- 接入分钟线数据源提升检测精度
- 添加自定义监控规则
- 增加异动回测功能
后续优化计划
- 支持用户自定义监控条件
- 异动发生后的历史表现统计
- 结合AI分析给出操作建议
- 移动端推送优化
- 盘中异动回放功能