fqcopilot 信号值规范体系
从数字读懂每一个交易信号
fqcopilot 信号值规范体系
从数字读懂每一个交易信号
写在前面
fqcopilot 的选股模型是逐步迭代开发出来的,每个模型的说明散落在不同版本的更新日志、代码注释和零散文档中。很多同学在实际使用时,看到 K 线上标出的信号值——比如 1207、-16102、8207——还是一头雾水。
特别是昨天上线了 BatchCalculator,一次缠论分析就能并行计算出全部 18 个模型的信号。这意味着你在同一根 K 线上会同时看到多个模型的信号值叠加,如果读不懂这些数字,就无法判断信号之间的关联和强度。
所以这篇文章做一次全貌的、系统的说明。看完之后,你拿到任何一个信号值都应该能 三秒内解读出它的完整含义。
一、为什么信号值长这样?
如果你在 fqcopilot 中看到一根 K 线上标着 1207 或者 -16102,第一反应可能是"这什么意思?"
这不是随机数。fqcopilot 的信号值是一套精心设计的三位编码体系,一个数字就能告诉你三件事:
|
🧩 哪个模型 策略来源 |
🔢 第几次 时间维度 |
🎯 什么类型 触发原因 |
而数字的正负号告诉你:买入还是卖出。
二、编码公式
fqcopilot 信号值的核心编码公式(源码位于 base_calculator.h):
信号值 = 方向 × (模型ID × 1000 + 出现次数 × 100 + 入场点类型)
| 字段 | 含义 | 取值范围 |
| 方向 | 正数=买入,负数=卖出 | +1 或 -1 |
| 模型ID | 产生信号的策略模型编号 | 0~17 |
| 出现次数 | 同一模型在同一结构中的第几次触发 | 1~3 |
| 入场点类型 | 触发入场信号的具体技术形态 | 1~7 |
解码示例
以信号值 -16102 为例:
符号为负 → 卖出信号
16102 = 16 × 1000 + 1 × 100 + 2
| └─── 模型16 | └─── 第1次 | └─── 入场类型2 |
完整解读:S0016(支撑/阻力区间反转)第 1 次回踩,吞没反包确认的 卖出 信号。
| 信号值 | 方向 | 模型 | 次数 | 入场类型 | 含义 |
| 101 | 买入 | S0000 | 1 | 结构(1) | 笔转折后首次确认买入 |
| -5003 | 卖出 | S0005 | 0 | 强分型(3) | 三买三卖中强分型确认卖出 |
| 8017 | 买入 | S0008 | 1 | MACD(7) | 1个中枢背驰后MACD确认买入 |
| 9207 | 买入 | S0009 | 2 | MACD(7) | 拉回中枢第2级确认买入 |
| 15101 | 买入 | S0015 | 1 | 结构(1) | MA250站稳确认买入 |
三、模型体系全景
fqcopilot 当前包含 18 个策略模型,覆盖从基础笔转折到高级背驰分析的完整缠论信号体系。
3.1 基础笔转折类
| 模型 | ID | 核心逻辑 | 级别 |
| S0000 | 0 | 笔转折后首个确认信号 | 笔 |
| S0002 | 2 | 分型笔级别的下跌后反转 | 分型笔 |
S0000 是最基础的模型——当一笔完成转折后,立即在后续 K 线中寻找第一个技术确认信号(Pinbar、吞没、强分型、MA5拐头等)。S0002 是 S0000 的分型笔级别版本,使用更灵敏的分型笔代替标准笔。
3.2 线段中枢类
| 模型 | ID | 核心逻辑 | 级别 |
| S0001 | 1 | 下跌走势中的线段内买点 | 线段+走势 |
| S0003 | 3 | 锯齿形态反转 | 线段 |
| S0004 | 4 | 三买/三卖(中枢上方回踩/下方反弹) | 线段+中枢 |
| S0005 | 5 | 线段中枢完备后的多笔回踩买卖 | 线段+中枢 |
3.3 区间反转类
| 模型 | ID | 核心逻辑 | 级别 |
| S0006 | 6 | 前序线段支撑/阻力区间回踩 | 线段 |
| S0007 | 7 | 顶底互换(笔高点到笔低点角色转换) | 笔 |
| S0016 | 16 | 分型区间支撑/阻力反转(线段级别) | 线段 |
| S0017 | 17 | 分型区间支撑/阻力反转(笔级别) | 笔 |
3.4 背驰类
| 模型 | ID | 核心逻辑 | 级别 |
| S0008 | 8 | MACD 背驰(盘整或趋势背驰) | 线段+中枢 |
| S0013 | 13 | S0008 子集:二买/二卖过滤 | 走势 |
| S0014 | 14 | S0008 子集:线段中枢上方/下方过滤 | 走势 |
S0008 是背驰分析的核心模型,它对比"进入中枢的一笔"与"离开中枢的一笔"的 MACD 特征。S0013 和 S0014 是 S0008 的高级过滤版本,只保留满足特定条件的子集信号。
3.5 拉回中枢类
| 模型 | ID | 核心逻辑 | 级别 |
| S0009 | 9 | 完备中枢拉回信号(三级确认) | 线段+中枢 |
| S0010 | 10 | 中枢离开笔回踩买卖 | 线段+中枢 |
| S0011 | 11 | 线段内笔创新高/低后的反转 | 线段 |
| S0012 | 12 | V 反(未完备中枢突破) | 线段+中枢 |
S0009 的信号值中出现次数字段有特殊含义——它表示拉回中枢的哪个级别:
|
|
|
|
|
|
3.6 均线策略类
| 模型 | ID | 核心逻辑 | 级别 |
| S0015 | 15 | MA250 支撑站稳 / 阻力确认 | 线段+均线 |
S0015 不使用 SignalUtils 的入场点判定,直接用分型确认触发。买点固定为 15101,卖点固定为 -15101。
四、入场点类型详解
fqcopilot 定义了 7 种入场点类型,由 EntrypointType 枚举管理:
| 类型 | 方向 | 技术含义 |
| 1 | 买/卖 | 结构信号(模型自身定义,非技术指标确认) |
| 2 | 买/卖 | Pinbar(锤子线/射击之星) |
| 3 | 买/卖 | 吞没反包 / 强分型 / 普通分型 |
| 4 | 买/卖 | 强分型确认 |
| 5 | 买/卖 | MA5 拐头 |
| 6 | 买/卖 | 量价齐升/齐跌 |
| 7 | 买/卖 | MACD 金叉/死叉 |
判定优先级
SignalUtils 按以下顺序逐项检测,第一个命中的类型就是最终入场点:
| Pinbar(2) | → | 吞没反包(3) | → | 强分型(4) | → | MA5拐头(5) | → | 量(6) | → | MACD(7) |
如果同一根 K 线同时满足 Pinbar 和 MACD 金叉,入场点类型会是 2(Pinbar),因为 Pinbar 优先级更高。
模型专用的入场点类型
| 模型 | 固定入场点 | 说明 |
| S0008 | 7 (MACD) | 背驰的触发条件就是 MACD 金叉/死叉 |
| S0009 | 1 (结构) | 拉回中枢通过连续 3 根 K 线收盘价确认 |
| S0012 | 1 (结构) | V 反通过连续 3 根 K 线突破确认 |
| S0015 | 1 (结构) | MA250 策略通过分型确认 |
五、出现次数的特殊含义
"出现次数"在不同模型中代表不同含义:
| 模型 | 出现次数含义 |
| S0000~S0004 | 固定为 1(单次触发) |
| S0005 | 1~3(第几个向下/向上笔的低/高点) |
| S0006, S0007 | 固定为 1 |
| S0008 | 中枢数量(1个=1,2个=2,越多信号越强) |
| S0009 | 拉回级别(1=dd/gg,2=zd/zg,3=zg/zd) |
| S0010~S0012 | 固定为 1 |
| S0013, S0014 | 继承 S0008 的中枢数量 |
| S0016, S0017 | 回踩次数(1~3,同一区间内第几次试探) |
六、信号值的快速解读法
三步解码法
|
第一步:看正负 正数 → 买入 |
第二步:看千位以上 ÷1000 取整 → 模型ID |
第三步:看百位和个位 百位 → 出现次数 |
实战解读示例
信号值 8207
正数 → 买入
8207 ÷ 1000 = 80 → 模型ID = 8(S0008 背驰模型)
8207 % 1000 = 207 → 207 ÷ 100 = 2(2个中枢的背驰)
207 % 100 = 7(MACD 金叉确认)
解读:2 个中枢的下跌背驰,MACD 金叉位置确认买入。中枢越多信号越可靠。
信号值 -9301
负数 → 卖出
9301 ÷ 1000 = 9 → 模型ID = 9(S0009 拉回中枢模型)
9301 % 1000 = 301 → 301 ÷ 100 = 3(拉回到第三级——zd)
301 % 100 = 1(结构信号确认)
解读:价格拉回到完备中枢 zd 级别,3根K线确认跌破,产生卖出信号。三级中最弱。
七、模型依赖关系
部分模型之间存在层级依赖,理解这些关系有助于组合使用:
|
S0008 的子集 |
S0008 的子集 |
|
|
S0013 和 S0014 是 S0008 的精确子集——只有当 S0008 产生信号后,它们才会进一步验证。因此 S0013/S0014 的信号数量一定不多于 S0008,但每个信号的质量更高。
八、switch_opt 参数的影响
|
宽松模式 (0) 不判断走势方向,在所有线段中寻找信号 |
严格模式 (1) 只在顺势方向寻找信号(下跌走势只找买点,上涨走势只找卖点) |
S0009、S0010、S0011、S0012 这四个模型支持走势过滤。
九、信号值的计算流程
| K线数据 (OHLCV) |
| ↓ |
|
缠论分析引擎 (recognise_*) ├ 分型笔 swing_sigs ├ 笔 wave_sigs ├ 线段 stretch_sigs ├ 走势 trend_sigs └ 合并K线 + 分型信息 |
| ↓ |
|
技术指标计算 ├ MA(5) ├ MACD(12, 26, 9) └ ATR(20) |
| ↓ |
| 策略模型计算(18 个模型并行 → encode_signal) |
| ↓ |
|
0 = 无信号 | 正数 = 买入信号 | 负数 = 卖出信号 |
每个模型独立运行,同一根 K 线可能同时被多个模型标记。例如 S0008 检测到背驰买入的同时,S0009 可能也检测到拉回中枢的买入信号——它们各自有独立的信号值。
十、总结
fqcopilot 的信号值体系可以用一个公式概括:
| 维度 | 问题 | 答案在 |
| 买还是卖? | 正负号 | 信号值符号 |
| 什么策略? | 模型编号 | 千位及以上 |
| 第几次触发? | 出现次数 | 百位 |
| 什么形态确认? | 入场点类型 | 个位 |
掌握了这套编码规则,你就能从一串数字中读出完整的交易逻辑。信号值不再是黑箱数字,而是一条完整的因果链:在什么市场结构中,经过几次试探,由什么技术形态确认,应该做什么方向的交易。
免责声明:本文仅为技术文档,描述 fqcopilot 信号值的设计规范,不构成任何投资建议。投资有风险,入市需谨慎。