拓冰建站拓冰建站
首页 / 资讯中心 / 正文

【Python实时盯盘与预警 #04】炸板预警,刚封涨停又开板的票别错过(按炸板次数+修复状态排序)

系列Python实时盯盘与预警 · 第 04 篇 · 适合初学 · 7 分钟读完即可跑通痛点开场#03 把涨停池拉出来后我们立刻会关心它的反面——今天有没有封了又开的票哪些在剧烈分歧哪些正在修复、哪些已经沉沦。交易终端的炸板股模块只给一个名单没有修复力度维度——你不知道一只已回封的票和一只远离 13%的票差多少倍。本文用一份证书任一品牌免费版就够把炸板股池按炸板次数 现价距涨停价两轴排序盘中 60 秒一次轮询——“刚开板的票立刻在屏幕弹出”比你刷交易终端快 5~10 分钟。本文你将得到什么一段 90 行的 Python单文件可跑零外部依赖。一张炸板次数 → 距涨停% → 状态复合排序的炸板快照表30 行 1 屏盘中 60 秒刷一次。4 张子表炸板次数分布 / 状态分布已回封/修复中/远离/沉沦/ 行业分布。一份盘中持续盯盘 30 秒接入骨架结合 #01 30 只自选 #03 涨停池 #04 炸板 完整盘中雷达。环境准备5 分钟复用 #01~#03conda 环境fastApiEnv、mairui 1.0.0、证书只读不打印。完整可运行脚本自验环境fastApiEnv/ Python 3.9 / mairui 1.0.0默认查 2026-07-31最近一个完整交易日 107 条已 PASS 跑通盘中跑今天TARGET_DATE改今天建议等 10:00 之后再启动。【Python实时盯盘与预警 #04】炸板预警,刚封涨停又开板的票别错过from__future__importannotationsimportosimportsysfromdatetimeimportdatetime# 复用内容龙虾 _common/mairui_helper.py 的证书加载器(只读不打印)sys.path.insert(0,os.path.join(os.path.dirname(__file__),..,..,..,_common))frommairui_helperimportload_licence# noqa: E402frommairuiimportClient# noqa: E402# 默认看最近一个完整交易日(07-31 是上一个完整交易日,107 条样本最具代表性)# 盘中:把 TARGET_DATE 改成今天即可;开盘前 30 分钟(09:30 之前)池子可能为空TARGET_DATEos.environ.get(TARGET_DATE)or2026-07-31deffetch_broken(api:Client,date:str)-list[dict]:拉炸板股池。返回原始 list(键为拼音首字母:dm/mc/p/ztp/zbc/fbt/...).rawapi.broken_board_pool(date)ifisinstance(raw,list):returnrawifisinstance(raw,dict):forkeyin(data,items,list,pool):ifkeyinrawandisinstance(raw[key],list):returnraw[key]return[raw]return[]deffmt_time(s):092500 - 09:25:00 (- 或 None 保持 - ).ifnotsornotisinstance(s,str)orlen(s)6:return-ss.strip()iflen(s)6ands.isdigit():returnf{s[0:2]}:{s[2:4]}:{s[4:6]}returnsdefstatus_label(p,ztp):根据「现价距涨停价」给一个状态标签(快速判断修复力度)。ifpisNoneorztpisNoneorztp0:return数据缺diff_pct(ztp-p)/ztp*100.0ifdiff_pct0.5:return已回封ifdiff_pct3.0:return修复中ifdiff_pct6.0:return远离return沉沦defrender(rows):ifnotrows:returnf[{TARGET_DATE}] 当日无炸板股(全市场封板都很稳,或接口还没拉到数据)。# 排序:炸板次数降序 → 现价距涨停价升序(越接近越强修复) → 封板时间升序defkey(r):dist_pct((r.get(ztp)or0)-(r.get(p)or0))/(r.get(ztp)or1)*100return(-(r.get(zbc)or0),dist_pct,fmt_time(r.get(fbt))or99:99:99,)rows.sort(keykey)lines[f【炸板预警】日期{TARGET_DATE}共{len(rows)}只 (封了又开/多次开板的高分歧票),f{排名:3}{代码:7}{名称:8}{炸板:4}{统计:6}{首次封板:9}{现价:7}{涨停价:7}{距涨停%:8}{状态:6}{行业:6},]fori,rinenumerate(rows,1):pr.get(p)or0ztpr.get(ztp)or0dist_pct(ztp-p)/ztp*100ifztpelse0lines.append(f{i:3}{str(r.get(dm)or):7}{str(r.get(mc)or):8}f{r.get(zbc)or0:4}{str(r.get(tj)or-):6}f{fmt_time(r.get(fbt)):9}{p:7.2f}{ztp:7.2f}f{dist_pct:7.2f}%{status_label(p,ztp):6}{str(r.get(hy)or-):6})return\n.join(lines)defrender_stats(rows):关键统计:炸板梯队 / 状态分布 / 行业分布out[]# 炸板次数分布zbc_counter{}forrinrows:nr.get(zbc)or0zbc_counter[n]zbc_counter.get(n,0)1out.append(【炸板次数分布】)forninsorted(zbc_counter.keys(),reverseTrue):out.append(f 炸板{n}次:{zbc_counter[n]}只)# 状态分布status_counter{}forrinrows:sstatus_label(r.get(p),r.get(ztp))status_counter[s]status_counter.get(s,0)1out.append()out.append(【状态分布】(现价距涨停价的修复力度))fors,cntinsorted(status_counter.items(),keylambdax:-x[1]):out.append(f{s}:{cnt}只)# 行业分布hy_counter{}forrinrows:hyr.get(hy)or未知hy_counter[hy]hy_counter.get(hy,0)1out.append()out.append(【行业分布】)forhy,cntinsorted(hy_counter.items(),keylambdax:-x[1])[:15]:out.append(f{hy}:{cnt}只)return\n.join(out)defmain():licload_licence()print(f[info] licence present: True (value hidden, len{len(lic)}))print(f[info] target_date{TARGET_DATE}current{datetime.now().strftime(%Y-%m-%d %H:%M:%S)})withClient(licencelic)asapi:rowsfetch_broken(api,TARGET_DATE)print(render(rows))print()print(render_stats(rows))return0if__name____main__:sys.exit(main())真实运行输出截取 2026-08-03 09:56 跑 TARGET_DATE2026-07-31[info] licence present: True (value hidden, len36) [info] target_date2026-07-31 current2026-08-03 09:56:17 【炸板预警】日期 2026-07-31 共 107 只 (封了又开/多次开板的高分歧票) 排名 代码 名称 炸板 统计 首次封板 现价 涨停价 距涨停% 状态 行业 1 002787 华源控股 22 0/0 09:30:03 19.47 19.73 1.32% 修复中 包装印刷 2 600183 生益科技 17 0/0 09:30:02 105.64 110.09 4.04% 远离 元件 3 688661 和林微纳 15 0/0 09:41:09 81.28 82.14 1.05% 修复中 半导体 4 002484 江海股份 15 0/0 09:39:51 58.71 61.05 3.83% 远离 元件 5 603306 华懋科技 15 0/0 09:47:09 57.88 60.49 4.31% 远离 汽车零部 6 603061 金海通 14 0/0 09:48:52 263.39 268.38 1.86% 修复中 半导体 7 002655 共达电声 14 0/0 09:56:48 22.85 23.42 2.43% 修复中 消费电子 8 002281 光迅科技 14 0/0 09:49:09 161.65 167.56 3.53% 远离 通信设备 9 002916 深南电路 13 0/0 09:40:27 308.00 312.95 1.58% 修复中 元件 10 002353 杰瑞股份 13 0/0 10:06:24 134.70 138.30 2.60% 修复中 专用设备 … 71 300795 米奥会展 1 0/0 10:59:54 16.44 16.44 0.00% 已回封 专业服务 … 107 688766 普冉股份 1 0/0 09:25:01 354.90 423.74 16.25% 沉沦 半导体 【炸板次数分布】 炸板 22 次: 1 只 炸板 17 次: 1 只 炸板 15 次: 3 只 炸板 14 次: 3 只 炸板 13 次: 2 只 炸板 10 次: 3 只 炸板 9 次: 3 只 炸板 7 次: 4 只 炸板 6 次: 3 只 炸板 5 次: 4 只 炸板 4 次: 10 只 炸板 3 次: 13 只 炸板 2 次: 20 只 炸板 1 次: 37 只 【状态分布】(现价距涨停价的修复力度) 修复中: 41 只 远离: 38 只 沉沦: 26 只 已回封: 2 只 【行业分布】 元件: 15 只 半导体: 8 只 汽车零部: 7 只 软件开发: 5 只 自动化设: 5 只 塑料: 5 只 专用设备: 4 只 光学光电: 4 只 消费电子: 3 只 通信设备: 3 只 广告营销: 3 只 计算机设: 3 只 通用设备: 3 只 金属新材: 3 只 包装印刷: 2 只数据来源内部验证环境fastApiEnv 真实 licence 调用/hslt/zbgc/{date}炸板股池接口返回脚本中所有证书出现处都用MAIRUI_LICENCE环境变量或你的麦蕊证书占位。 09:56 跑今天TARGET_DATE2026-08-03会返回空数组——09:30 开盘才 26 分钟炸板池要 10:00 之后才陆续有数据本脚本默认回看 07-31最近一个完整交易日 107 条让完整样本立刻可看。盘中把TARGET_DATE改今天即可。代码要点拆解排序三轴zbc → 距涨停% → 首次封板时间——炸板次数是分歧强度22 次的华源控股是市场抛弃型距涨停价是修复力度修复中的票是还有救时间轴是先发越早封板的越强。换排序轴把 key 第一项改成r.get(hs) or 0就能直接按换手率找异动。状态标签用现价距涨停价自动归类≤0.5% 已回封 / ≤3% 修复中 / ≤6% 远离 / 6% 沉沦。这是个经验阈值——实战中可以按自己的风险偏好调宽窄。zbc字段是核心和 #03 涨停池的连板数不同炸板池的 zbc 永远 1没炸板就不会进炸板池。zbc 5 的是剧烈分歧票、zbc 10 的是市场用脚投票票盘中盯 zbc 3 的就足够。字段是拼音首字母键dm/mc/p/ztp/zbc/fbt/tj/hy与 #03 完全一致——读者照搬代码不踩坑。盘中 09:30 之前查会返回 0——这是数据生成时机问题开盘才有封板/炸板不是脚本问题。脚本里if not rows那段空数据保护就是为这一刻写的。接入盘中实时30 秒接入importtimedefloop():whileTrue:withClient(licenceload_licence())asapi:rowsfetch_broken(api,datetime.now().strftime(%Y-%m-%d))os.system(clsifos.namentelseclear)print(render(rows))print()print(render_stats(rows))time.sleep(60)# 炸板池 60 秒够,不用像 #01 自选股那么高频想刚开板就桌面通知把status_label(p, ztp) 沉沦替换成自己的告警条件再接 #02 的win10toast / plyer三级降级即可。常见坑盘中 09:30 之前查 空数组开盘前的池子还没生成。脚本里当日无炸板股的兜底文案就是这个场景。tj字段含义多版本老版本是连板数/封板次数新版本是已封次数/已开次数——本脚本不依赖tj做判定核心只用zbc和ztp/p这两个字段所有版本都稳。盘后跑当天数据是盘后快照那时大部分炸板票已经远离涨停价甚至沉沦不会修复中了——要看盘中变化就盘中跑。不同接口版本字段名可能略变如果你拿到的字段名是zdf而不是zf、或fbtime而不是fbt把本脚本里的字段名替换一下即可逻辑不变。小结 下篇预告107 只炸板 行业 Top3元件/半导体/汽车零部“科技板块当天整体大分歧”——这正是 #05 五档盘口读语言的实战背景板块分歧剧烈时五档盘口的大单动向就是谁在接力、谁在出货的关键证据。下一篇 #05 我们用stock_real_five把封板瞬间的五档委托拉出来读封单 vs 砸单。合规与引导数据/接口演示仅作技术示意不构成投资建议本系列代码仅用于自验与教学请勿用于非法牟利。提示脚本中所有证书出现处都用MAIRUI_LICENCE环境变量或你的麦蕊证书占位任何含真实 UUID 的版本都不应被发布。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门