Appearance
Smart -SPR函数说明书
1. 功能定位
短线精灵 SPR 用于记录和统计盘中事件,例如火箭发射、快速反弹、大笔买入、大笔卖出、封涨停、打开涨停、机构买单、撤单、新单等。Smart 服务端负责接收、保存和汇总事件,smart.dll 在大智慧公式中按当前股票、当前周期返回统计结果。
SPR 适合用于:
- 统计指定事件在某段时间内出现的次数。
- 汇总事件值,例如大笔买入金额或数量。
- 判断最近一次、第一次事件。
- 计算连续出现、最大连续出现等信号。
- 配合 Smart 预警配置把满足条件的股票保存到板块。
数据背景说明
公开 Level-2 资料通常把逐笔委托、逐笔成交、盘口队列理解为更底层的原始行情;短线精灵不属于这个原始层,而是行情软件已经识别出来的事件流。也就是说,火箭发射、大笔买入、机构吃货、买入撤单 这类数据更接近“盘中发生了什么异动”的标签。
所以 SPR 的使用重点不是还原每一笔委托,而是把事件流变成可统计的信号:出现几次、规模多大、最近一次是什么、是否连续发生。它适合做预警、股票池筛选和盘中提示;如果要研究原始挂单、撤单或拆单细节,应看 L2W;如果要研究主动买卖成交和金额分层,应看 L2A/L2B。
2. 菜单和数据
Smart 菜单名为“短线精灵”。常用操作包括:
- 查看短线精灵手册或网盘资料。
- 开启/关闭函数调用跟踪。
- 保存函数历史结果:通用菜单开关,用于允许函数把历史计算结果落盘;SPR 侧是否产生结果文件以具体函数实现和函数调用跟踪为准,不等同于下载 SPR 原始事件数据。
- 重新加载预警配置。
- 下载全部、下载单只股票。
- 开启自动下载。
- 查看数据。
- 选择或打开数据目录。
常用配置项在“短线精灵”分组下:
| 配置项 | 说明 |
|---|---|
起始时间 | 盘中开始接收或统计的时间。 |
忽略消息 | 过滤不需要处理的消息类型。 |
预警 | 预警规则配置。 |
自动下载 | 是否自动下载历史或盘后数据。 |
数据目录 | SPR 数据保存目录。 |
3. 事件类型
函数第一个参数通常是事件类型 kind。主要取值如下:
| 编号 | 事件 | 数据意义 |
|---|---|---|
-2 | 任意事件 | 不限定事件类型,用于统计当前股票所有短线精灵事件。 |
-1 | 未知 | 数据源未能归类的事件,一般用于排查异常数据。 |
0 | 火箭发射 | 股价短时间快速上冲,常用于发现突然拉升。 |
1 | 快速反弹 | 股价从下跌或低位状态快速回升,常用于捕捉盘中反弹。 |
2 | 高台跳水 | 股价从相对高位快速下跌,常用于发现冲高回落风险。 |
3 | 加速下跌 | 下跌速度继续放大,常用于识别弱势延续。 |
4 | 大笔买入 | 出现较大买入成交或买入异动,反映买方资金动作。 |
5 | 大笔卖出 | 出现较大卖出成交或卖出异动,反映卖方资金动作。 |
6 | 封涨停板 | 买盘把价格推到涨停并形成封板状态,常用于观察封板强度。 |
7 | 封跌停板 | 卖盘把价格压到跌停并形成封板状态,常用于观察极弱状态。 |
8 | 打开涨停 | 涨停封板被打开,常用于观察封板是否稳定。 |
9 | 打开跌停 | 跌停封板被打开,常用于观察抛压是否缓解。 |
10 | 有大卖盘 | 卖盘出现较大挂单或卖出压力,常用于观察上方抛压。 |
11 | 有大买盘 | 买盘出现较大挂单或承接力量,常用于观察下方承接。 |
12 | 拉升指数 | 个股对指数上行有较明显贡献。 |
13 | 打压指数 | 个股对指数下行有较明显影响。 |
14 | 机构买单 | 数据源识别出的机构买入行为。 |
15 | 机构卖单 | 数据源识别出的机构卖出行为。 |
16 | 机构吃货 | 连续或集中买入特征更强的机构买入事件,常用于监控资金吸筹。 |
17 | 机构吐货 | 连续或集中卖出特征更强的机构卖出事件,常用于监控资金派发。 |
18 | 买单分单 | 买入委托存在拆分下单特征,常用于观察大单拆小单买入。 |
19 | 卖单分单 | 卖出委托存在拆分下单特征,常用于观察大单拆小单卖出。 |
20 | 买入撤单 | 买方撤掉挂单,常用于观察承接是否虚弱或封单是否撤退。 |
21 | 卖出撤单 | 卖方撤掉挂单,常用于观察抛压是否减轻。 |
22 | 买入新单 | 新增买入挂单,反映新的买方委托进入盘口。 |
23 | 卖出新单 | 新增卖出挂单,反映新的卖方委托进入盘口。 |
30 | 所有买单 | 买方相关事件汇总口径,适合统计整体买方动作。 |
31 | 所有卖单 | 卖方相关事件汇总口径,适合统计整体卖方动作。 |
SprCount 统计的是事件出现次数,适合看“有没有”和“出现频率”;SprSum 汇总的是事件值,常用于看对应事件的手数或数量规模;SprLast 取最近一次事件值,适合做盘中提示;连续统计函数用于判断同类事件是否密集出现。所有买单 和 所有卖单 是汇总口径,可能包含机构吃货、机构吐货等同方向事件,使用时要避免和单一事件重复相加。
4. 参数约定
基础统计函数
text
smart@Count(事件类型, 数据过滤, 时间范围, 交易日数)
smart@Sum(事件类型, 数据过滤, 时间范围, 交易日数)| 参数 | 默认值 | 说明 |
|---|---|---|
kind | 必填 | 事件类型。 |
dataFilter | 0 | 事件值过滤,使用本节比较过滤编码。 |
timeRange | 0 | 时间范围,常用 HHMM 或 HHMMHHMM。 |
days | 1 | 统计交易日数量或 K 线范围。 |
比较过滤 dataFilter
dataFilter 用于过滤事件值,例如只统计金额大于某个数值的大笔买入事件。编码为 比较模式 * 10000 + 比较值。
| 模式 | 编号 | 含义 |
|---|---|---|
UN | 0 | 不比较 |
NE | 1 | 不等于 |
LT | 2 | 小于 |
GT | 3 | 大于 |
LE | 4 | 小于等于 |
GE | 5 | 大于等于 |
EQ | 6 | 等于 |
示例:52900 表示 >= 2900。
时间范围 timeRange
0:不限制时间或使用 SPR 默认统计时段。HHMM:单个分钟,例如930表示 09:30。HHMMHHMM:分钟区间,例如9301000表示 09:30 到 10:00。
最近/首次函数
text
smart@Last(事件类型, 数据过滤)
smart@LastSum(事件类型, 数据过滤)
smart@First(事件类型, 数据过滤, 时间范围, 交易日数)Last 返回最近一次满足条件的事件值或时间序列结果;LastSum 返回最近区间汇总;First 返回首次满足条件的事件。
连续统计函数
text
smart@ContinuCount(事件类型, 最小连续次数, 时间范围, 交易日数)
smart@ContinuSum(事件类型, 最小连续次数, 时间范围, 交易日数)
smart@MaxContinu(事件类型, 最小连续次数, 时间范围, 交易日数)
smart@MaxContinuSum(事件类型, 最小连续次数, 时间范围, 交易日数)| 参数 | 默认值 | 说明 |
|---|---|---|
kind | 必填 | 事件类型。 |
minContinu | 必填 | 最小连续次数。 |
timeRange | 0 | 时间过滤。 |
days | 1 | 统计交易日数量或 K 线范围。 |
5. smart.dll 函数索引
SPR 函数建议使用 Spr 前缀名称。点击函数名可跳到对应的完整说明。
| 序号 | 函数 | 用途 |
|---|---|---|
| 1 | SprCount | 统计指定事件出现次数。 |
| 2 | SprSum | 统计指定事件的事件值合计。 |
| 3 | SprLast | 从最新事件向前统计连续同类事件次数。 |
| 4 | SprLastSum | 从最新事件向前统计连续同类事件值合计。 |
| 5 | SprFirst | 判断指定时间段第一条事件是否满足条件。 |
| 6 | SprContinuCount | 统计连续出现达到门槛的次数。 |
| 7 | SprContinuSum | 统计连续出现达到门槛的连续次数合计。 |
| 8 | SprMaxContinu | 统计最大连续出现次数。 |
| 9 | SprMaxContinuSum | 统计最大连续出现段的事件值合计。 |
6. 函数详细说明
每个函数按同一模板说明:用途、调用格式、参数说明、返回值/口径、公式例子。
函数选用说明
| 序号 | 函数 | 详细用途 | 常见用法和注意点 |
|---|---|---|---|
| 1 | SprCount | 把短线精灵事件转换成“出现次数”,适合看某类异动是否频繁。 | 股票池中常用于 SprCount(机构吃货)>0、SprCount(打开涨停)>0 这类条件;加 timeRange 可只看开盘、尾盘等关键时段。 |
| 2 | SprSum | 把事件值累加,用来衡量事件规模,而不只是出现过几次。 | 与 SprCount 配合可区分“多次小异动”和“少数大异动”;不同事件的事件值含义不同,正式使用前应先用查看数据确认单位。 |
| 3 | SprLast | 从最新事件向前统计连续同类事件,强调“最新状态是不是正在延续”。 | 适合盘中预警,例如连续出现机构吃货、买入新单;如果最新事件不是该类型,结果会归零,不适合做全天总次数统计。 |
| 4 | SprLastSum | 汇总最新连续同类事件的事件值,强调最近一段连续异动的规模。 | 常用于判断最新连续买入/卖出是否有力度;和 SprLast 一起看,可以同时知道连续次数和连续规模。 |
| 5 | SprFirst | 判断某个时间段第一条事件是否满足条件,适合研究开盘第一波或某段时间的首个信号。 | 常用于开盘后第一条火箭发射、第一条大笔买入是否够强;返回是判断结果,不是事件值本身。 |
| 6 | SprContinuCount | 统计达到连续门槛的连续段数量,强调“密集异动出现了几段”。 | 适合筛选多次集中异动的股票;minContinu 不宜过低,否则普通噪声也可能被计入。 |
| 7 | SprContinuSum | 统计所有达标连续段的连续次数合计,比段数更能反映密集程度。 | 适合比较不同股票的连续异动强弱;同样的段数下,连续次数越多说明持续性越强。 |
| 8 | SprMaxContinu | 找出指定范围内最长连续出现次数,突出当天最强的一段连续异动。 | 适合复盘或股票池排序;和 SprContinuCount 不同,它只关心最长的一段。 |
| 9 | SprMaxContinuSum | 找出最大连续段的事件值合计,用来评估最强连续段的实际规模。 | 适合筛选连续买单、连续卖单里规模最大的股票;要注意事件值单位随事件类型变化。 |
1. SprCount
用途:统计当前股票在指定交易日/K 线范围、指定时间段内,某类短线精灵事件出现了多少次。
调用格式:smart@SprCount(事件类型, 数据过滤, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 数据过滤 | 对应 dataFilter。事件值比较过滤,0 表示不过滤。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 数据过滤 · 时间范围 · 交易日数
返回值/口径:返回事件次数。适合判断“有没有异动”和“异动频率高不高”。
公式例子:smart@SprCount(4, 0, 0, 1):统计最近 1 个交易日的大笔买入次数。
2. SprSum
用途:汇总指定短线精灵事件的事件值,用于观察事件规模。
调用格式:smart@SprSum(事件类型, 数据过滤, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 数据过滤 | 对应 dataFilter。事件值比较过滤。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 数据过滤 · 时间范围 · 交易日数
返回值/口径:返回事件值合计。事件值含义由原始 SPR 消息决定,可能表示数量、金额、涨幅或数据源内部值。
公式例子:smart@SprSum(5, 0, 9301000, 1):统计 09:30 到 10:00 的大笔卖出事件值合计。
3. SprLast
用途:从当前股票最新一条 SPR 事件开始,向前统计连续同类事件数量。
调用格式:smart@SprLast(事件类型, 数据过滤)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 数据过滤 | 对应 dataFilter。事件值比较过滤,0 表示只要求事件类型连续。 |
返回值/口径:返回连续同类事件次数。若最新事件不是该类型,或事件值不满足过滤条件,结果通常为 0。
公式例子:smart@SprLast(16, 0):统计最新连续机构吃货事件次数。
4. SprLastSum
用途:从当前股票最新一条 SPR 事件开始,向前汇总连续同类事件的事件值。
调用格式:smart@SprLastSum(事件类型, 数据过滤)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 数据过滤 | 对应 dataFilter。事件值比较过滤,0 表示只要求事件类型连续。 |
返回值/口径:返回最新连续同类事件的事件值合计,适合看最近一段连续异动的规模。
公式例子:smart@SprLastSum(4, 32900):最新事件若是连续大笔买入且事件值都大于 2900,则返回这段连续大笔买入的事件值合计。
5. SprFirst
用途:找到指定时间段内第一条指定类型事件,并判断该事件值是否满足过滤条件。
调用格式:smart@SprFirst(事件类型, 数据过滤, 时间范围)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 数据过滤 | 对应 dataFilter。第一条事件的比较过滤。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
返回值/口径:第一条事件值满足 dataFilter 时返回 1,否则返回 0;没有对应事件也返回 0。
公式例子:smart@SprFirst(0, 32900, 9301000):判断 09:30 到 10:00 第一条火箭发射事件值是否大于 2900。
6. SprContinuCount
用途:统计某类事件连续出现达到指定次数的段数。
调用格式:smart@SprContinuCount(事件类型, 最小连续次数, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 最小连续次数 | 对应 minContinu。最小连续次数。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 最小连续次数 · 时间范围 · 交易日数
返回值/口径:返回连续段数量。适合筛选“同类异动反复密集出现”的股票。
公式例子:smart@SprContinuCount(22, 3, 0, 1):统计买入新单连续出现至少 3 次的段数。
7. SprContinuSum
用途:统计达到连续门槛的连续段内事件次数合计。
调用格式:smart@SprContinuSum(事件类型, 最小连续次数, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 最小连续次数 | 对应 minContinu。最小连续次数。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 最小连续次数 · 时间范围 · 交易日数
返回值/口径:返回所有达标连续段的连续次数合计,比 SprContinuCount 更能体现密集程度。
公式例子:smart@SprContinuSum(16, 2, 9301000, 1):统计 09:30 到 10:00 机构吃货连续至少 2 次的连续次数合计。
8. SprMaxContinu
用途:计算指定范围内某类事件最长连续出现了多少次。
调用格式:smart@SprMaxContinu(事件类型, 最小连续次数, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 最小连续次数 | 对应 minContinu。最小连续次数。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 最小连续次数 · 时间范围 · 交易日数
返回值/口径:返回最大连续次数。若没有达到 minContinu 的连续段,通常返回 0。
公式例子:smart@SprMaxContinu(30, 3, 0, 1):统计所有买单事件在最近 1 个交易日内最大连续次数。
9. SprMaxContinuSum
用途:计算最大连续段对应的事件值合计。
调用格式:smart@SprMaxContinuSum(事件类型, 最小连续次数, 时间范围, 交易日数)
参数说明
| 序号 | 参数 | 说明 |
|---|---|---|
| 1 | 事件类型 | 对应 kind。事件类型。 |
| 2 | 最小连续次数 | 对应 minContinu。最小连续次数。 |
| 3 | 时间范围 | 对应 timeRange。时间范围。 |
| 4 | 交易日数 | 对应 days。统计交易日数或 K 线范围。 |
参数详解:事件类型 · 最小连续次数 · 时间范围 · 交易日数
返回值/口径:返回最大连续段的事件值合计,用于判断最长一段连续异动的规模。
公式例子:smart@SprMaxContinuSum(31, 3, 0, 1):统计所有卖单事件最大连续段的事件值合计。
7. 使用注意
- 事件值的含义由原始短线精灵消息决定,不同事件可能表示金额、数量、涨幅或内部值。
kind=-2可以用于任意事件,但统计结果会更宽泛,建议调试后再用于正式公式。- 预警配置与 DLL 函数统计是两套入口:预警用于 Smart 侧实时处理,DLL 函数用于大智慧公式取值。
- 若公式没有返回数据,先确认 Smart 菜单中能看到该股票的 SPR 数据,再检查时间范围和事件类型。