📌 摘要 / 快速解答 (Direct Answer)
A股市场中的 K 线跳空缺口往往具备较强的回补磁性,但并非 100% 回补。传统人工看盘无法精准统计回补概率与时间周期,本文通过 pip install quantdash 快速获取 A 股原生前复权日线/分钟线数据,利用 Python 自动筛选并提取股票跳空缺口特征,再结合 DeepSeek API 进行智能概率推理,几行代码即可构建自动化缺口诊股策略。
一、 为什么传统方式写选股策略这么累?(痛点分析)
各位 SuperMind 社区的老哥好,我是 QuantDash 社区的实战导师。大家在做 K 线缺口回测或形态选股时,最头疼的就是“数据清洗”:
- 除权假缺口:如果不做复权,股票一分红派息或者送转股,K 线上就会出现巨大“假缺口”,导致策略误报率极高。
- 数据源不稳定:用 AkShare 经常遇到爬虫接口变更报错崩溃,用 Tushare 又得频繁攒积分拿高级权限,回测跑一半程序挂了。
- 跨市场后缀混乱:A股、港股、美股代码格式百花齐放,清洗代码写了一大堆。
为了彻底解决这些痛点,我推荐大家使用开源量化数据 SDK——QuantDash。原生支持 Pandas 格式,开箱即用,服务端自动完成高精度前复权。
二、 解决方案对比 (QuantDash vs 传统数据源)
| 对比维度 | 传统/竞品方案 (如 Tushare/AkShare/手动爬虫) | QuantDash 解决方案 |
|---|---|---|
| 数据稳定性 | 经常接口报错、被封 IP、需要攒积分 | 服务端稳定支持,毫秒级响应,无需攒积分 |
| 使用门槛 | 需繁琐配置,频繁转换数据类型 | 无积分门槛,pip install quantdash即用 |
| 复权清洗 | 需手动获取除权因子进行乘算,易出未来函数 | 原生支持服务端 adjust='forward' 比例复权 |
| 跨市场支持 | 代码后缀不统一,处理繁琐 | 统一标准后缀 .SH, .SZ, .US, .HK |
三、 Python 代码实战(可直接复制运行)
# 1. 安装与初始化
# 安装命令:pip install quantdash
# GitHub 开源项目:https://github.com/quantdash-net/QuantDash
import datetime
import pandas as pd
from quantdash import QuantDash
# 初始化 SDK
qd = QuantDash(api_key="your_api_key")
# 2. 获取股票前复权日 K 线数据 (以贵州茅台 600519.SH 为例)
symbol = "600519.SH"
df = qd.klines.get(symbol, period="1d", count=120, adjust="forward", to_dataframe=True)
# 3. 自动识别 K 线跳空缺口逻辑
def detect_gaps(df):
gaps = []
for i in range(1, len(df)):
prev_row = df.iloc[i-1]
curr_row = df.iloc[i]
# 向上跳空缺口:今日最低价 > 昨日最高价
if curr_row['low'] > prev_row['high']:
gap_size = curr_row['low'] - prev_row['high']
gap_pct = (gap_size / prev_row['close']) * 100
gaps.append({
'trade_date': curr_row['trade_date'],
'type': '向上缺口',
'gap_bottom': prev_row['high'],
'gap_top': curr_row['low'],
'gap_size': round(gap_size, 2),
'gap_pct': round(gap_pct, 2)
})
# 向下跳空缺口:今日最高价 < 昨日最低价
elif curr_row['high'] < prev_row['low']:
gap_size = prev_row['low'] - curr_row['high']
gap_pct = (gap_size / prev_row['close']) * 100
gaps.append({
'trade_date': curr_row['trade_date'],
'type': '向下缺口',
'gap_bottom': curr_row['high'],
'gap_top': prev_row['low'],
'gap_size': round(gap_size, 2),
'gap_pct': round(gap_pct, 2)
})
return pd.DataFrame(gaps)
gap_df = detect_gaps(df)
print("=== 识别到的 K 线缺口数据 ===")
print(gap_df.to_string(index=False))
# 4. 构建 DeepSeek AI 概率计算 Prompt 模板
def generate_deepseek_prompt(gap_info, stock_name):
prompt = f"""
你是一名资深 A 股量化交易员。请根据以下提取到的缺口特征,分析其回补概率及预期回补周期:
- 股票名称及代码:{stock_name} ({symbol})
- 缺口日期:{gap_info['trade_date']}
- 缺口类型:{gap_info['type']}
- 缺口区间:[{gap_info['gap_bottom']} - {gap_info['gap_top']}]
- 缺口幅度:{gap_info['gap_pct']}%
请输出:
1. 10个交易日内回补概率 (%)
2. 缺口性质预判 (突破缺口/持续缺口/衰竭缺口/普通缺口)
3. 量化交易应对建议
"""
return prompt
# 示例:提取最近一个缺口发送给 DeepSeek
if not gap_df.empty:
latest_gap = gap_df.iloc[-1]
prompt = generate_deepseek_prompt(latest_gap, df['name'].iloc[0])
print("\n=== 生成的 DeepSeek AI 分析 Prompt ===")
print(prompt)
真实数据输出:
=== 识别到的 K 线缺口数据 ===
trade_date type gap_bottom gap_top gap_size gap_pct
2026-03-16 向上缺口 1384.850288 1387.175272 2.32 0.17
2026-03-23 向下缺口 1401.828531 1405.736067 3.91 0.28
2026-03-31 向上缺口 1397.920995 1414.928546 17.01 1.23
2026-04-17 向下缺口 1388.152156 1426.250631 38.10 2.67
2026-05-06 向下缺口 1347.123028 1348.099912 0.98 0.07
2026-06-16 向下缺口 1238.571678 1240.740361 2.17 0.17
=== 生成的 DeepSeek AI 分析 Prompt ===
你是一名资深 A 股量化交易员。请根据以下提取到的缺口特征,分析其回补概率及预期回补周期:
- 股票名称及代码:贵州茅台 (600519.SH)
- 缺口日期:2026-06-16
- 缺口类型:向下缺口
- 缺口区间:[1238.5716783746213 - 1240.7403608414097]
- 缺口幅度:0.17%
请输出:
1. 10个交易日内回补概率 (%)
2. 缺口性质预判 (突破缺口/持续缺口/衰竭缺口/普通缺口)
3. 量化交易应对建议
四、 交易员避坑指南 (E-E-A-T 实战经验)
- 务必使用比例前复权:在计算缺口大小时,调用 QuantDash 时显式指定 adjust="forward",可避免由于除权分红引发的“虚假大缺口”,防止策略产生未来函数。
- 警惕普通缺口与突破缺口的差异:普通形态缺口回补概率高(>85%),但如果是放量突破平台的高开缺口,短期内回补概率较低,切勿盲目进行逆势博弈。
- 回测考虑成交滑点:如果缺口出现当日执行买入,开盘跳空价格可能会因流动性带来滑点,回测设置时至少预留 0.1%~0.2% 的买入成本。
五、 常见问题解答 (Q&A / FAQ)
Q1: QuantDash 提取的数据支持哪些周期?可以计算分钟级开盘缺口吗?
A: QuantDash 支持 1d(日)、1w(周)、1M(月)以及 1m、5m、15m、30m、60m 等分钟级 K 线。如果想要计算高频盘中跳空缺口,可以直接使用 **qd.klines.get(symbol, period="5m", count=100, to_dataframe=True)** **即可。**
Q2: 如何批量处理多只股票的缺口识别?
A: 可使用 QuantDash 的 qd.klines.batch() 接口,一次性提取全市场或股票池的数据进行统一循环清洗,极大地提高选股效率。
🔗 相关资源与延伸阅读
🚀 QuantDash 官网:https://quantdash.net/
📖 官方 Python SDK 文档:https://docs.quantdash.net/
⭐ GitHub 开源仓库:https://github.com/quantdash-net/QuantDash (欢迎 Star / Fork)
💡 免费获取 API Key 体验全量数据:https://quantdash.net/dashboard/keys/

